شاید برای همه دوستانی که از قدیم با لینوکس در ارتباط بوده اند این سوال بوجود آمده باشد که تفاوت پکیج منیجر YUM و DNF در لینوکس چیست و چرا منیجر DNF ایجاد و عرضه شد.
در این مقاله ما سعی داریم از یکی از سایت های انگلیسی زبان به طور کامل در مورد پکیج منیجر DNF و YUM توضیحات کاملی ارائه کرده باشد استفاده کنیم تا توضیحات دقیقی را ارائه دهیم.
سایت orcacore.com یکی از سایت های انگلیسی زبان در زمینه لینوکس و ویندوز است که چندی است شروع به فعالیت کرده و کیفیت لازم را برای ارائه تمامی مطالب خود دارد. با سرچ در گوگل متوجه شدیم که این سایت به طور کامل یه مقاله را برای تفاوت YUM و DNF منتشر کرده است و بر همین اساس این سایت و مقاله مرتبط را برای این مطلب در نظر گرفته ایم.
تفاوت پکیج منیجر YUM و DNF در لینوکس
در ابتدا و قبل از شروع توضیح درمورد تفاوت این دو پکیج منیجر لینوکسی بهتر است با معرفی کوتاهی از این پیکج منیجر ها آشنا شویم تا بتوانیم تفاوت آنها را بهتر شناسایی کنیم.
YUM منیجر چیست؟
YUM مخفف (Yellowdog Updater, Modified) یک ابزار رایگان و متن باز است که تحت لیسانس عمومی GNU منتشر شده و با زبان برنامه نویسی پایتون (Python) نوشته شده است.
YUM برای مدیریت و بروزرسانی ردهت لینوکس توسعه داده شد. بعدها که بیشتر شناخته شد، به مدیریت پکیج (Package Manager) برای RedHat Enterprise، Fedora، Centos لینوکس و دیگر توزیع های بر اساس RPM تبدیل شد.
معمولآ در میان متخصصین لینوکس با عنوان غیر رسمیYour Package Manager نام برده می شود.
DNF منیجر چیست؟
DNF مدیریت بسته ای میباشد که بوسیله آن میتوان بسته های نرم افزاری را نصب، حذف، بروزرسانی، و در کل مدیریت کرد. DNF مخفف (Dandified Yum) می باشد.
DNF با بررسی خودکار وابستگی ها و تعیین اقدامات مورد نیاز برای نصب بسته ها، نگهداری بسته ها را آسان می کند. این روش نیاز به نصب یا به روز رسانی دستی بسته و وابستگی های آن را با استفاده از دستور rpm بی نیاز می کند.
درادامه مطلب با ما همراه باشید تا به تفاوت های این دو سرویس DNF vs YUM بپردازیم.
چرا پکیج کنیجر DNF ساخته شد؟
مدیر بسته YUM با مشکلاتی مانند عملکرد ضعیف، استفاده بیش از حد از حافظه و کاهش سرعت برای تفکیک وابستگی مواجه شد، بنابراین این تصمیم گرفته شد که با مدیریت بسته DNF در Centos8 و AlmaLinux 8 و برخی از سیستمهای لینوکس مبتنی بر RedHat جایگزین شود.
از نقاط ضعف YUM میتوان به موارد زیر اشاره کرد:
- ابزار YUM برای نصب یک پکیج ابتدا همه پکیج های پیش نیاز را نصب می کند (Dependency Resolution) و این یک کابوس تمام عیار است که در DNF این مشکل با استفاده از کتابخانه “libsilv” در SUSE و Python Wrapper همراه با C Hawkey حل شده است.
- YUM هیچ گونه API داکیومنت شده نیست.
- قابلیت های جدید در آن مشکل است.
- برای توسعه آن تنها باید از PYTHON استفاده کرد.
- حافظه زیاد مصرف می کند و همگام سازی metadata در سطح بسیار پایینی صورت می گیرد – در واقع یک فرآیند زمان بر است.
ویژگی های بارز DNF
- سرعت بالاتر نسبت به YUM
- راحت و ساده
- پشتیبانی از ریپازیتوری
- برخورد داری از رفتارهای RPM
- تعداد خط کد کمتری در ساخته شدنش به کار رفته خط
- پشتیانی python 2 و python 3
همچنین اثری بر سوییچ های skip-broken– ندارد. فرمان به روز رسانی در آن برابر ارتقا می باشد.
گزینه Skip_if_unavailable به صورت پیش فرض در,DNF ON است.
پروسهً Dependency Resolving در خط فرمان قابل مشاهده نیست.
مثال از دستورات DNF و YUM
در اینجا میخواهیم شما را با برخی از دستورات این پکیج های مدیریتی آشنا سازیم:
مثال تفاوت نصب یک پیکج در DNF و YUM
#dnf install name_of_package
#yum install package-name
مثال تفاوت حذف یک پیکج در DNF و YUM
#dnf remove name_of_package
#yum remove package-name
مثال تفاوت ارتقا و آپدیت پیکج ها در DNF و YUM
#yum update
#yum upgrade
# dnf update
# dnf upgrade
توجه : همانطور که پیشتر گفته شد فرمان های update و upgrade برابر می باشند.
نحوه استفاده و نصب دو پیکج منیجر DNF و YUM در کنار هم
برای استفاده و تفاوت این دو این پییج منیجر شما میتوانید از سیستم عامل محبوب آلمالینوکس که به تازگی جایگزین سنتوس شده است استفاده کنید و هر دو پیکج منیجر را بر روی لینوکس خود داشته باشید و با هر دو در کنار هم کار کنید. برای این امر شما میتوانید به مطلب Use Yum on Almalinux در سایت ارکاکور مراجعه کرده و پکیج منیجر yum را نصب کرده و از آن استفاده نمایید.
سخن پایانی
همانطور که در این مقاله متوجه شدید سرویس DNF شباهت زیادی به سرویس مدیریت پکیج YUM دارد و همینطور میتونیم بگیم DNF همان YUM است با این تفاوت که در مشکلات YUM را برطرف کرده و از امکانات بیشتری برخوردار است.
نظرات در مورد : تفاوت پکیج منیجر YUM و DNF در لینوکس