استفاده از خط فرمان برای افزودن یا حذف برنامه ها در لینوکس ضروری نیست، اما سریعتر از استفاده از یک برنامه گرافیکی است. بسیاری از مردم متوجه میشوند که در مرحلهای از سفر لینوکس خود، پایانهای را برای نصب برنامههای جدید یا بهروزرسانیهای سیستم باز میکنند.
استفاده از خط فرمان برای افزودن یا حذف برنامه ها در لینوکس ضروری نیست، اما سریعتر از استفاده از یک برنامه گرافیکی است. بسیاری از مردم متوجه میشوند که در مرحلهای از سفر لینوکس خود، پایانهای را برای نصب برنامههای جدید یا بهروزرسانیهای سیستم باز میکنند.
APT و DNF دو تا از محبوب ترین مدیران بسته برای این کار هستند. این دو برنامه بسیار شبیه به هم هستند، اما تفاوت هایی در نحوه عملکرد آنها دارند. بیایید شیرجه بزنیم
آشنایی با APT و DNF
APT و DNF اشتراکات زیادی دارند و برای بسیاری از توابع، نحو مشابهی دارند. اگر قبلاً با هر یک از آنها آشنا هستید، احتمالاً برای یادگیری دیگری کار دشواری نخواهید داشت. اگر کاملاً تازه وارد هستید، بدانید که این دو مدیر بسته از جمله مواردی هستند که یادگیری آنها آسانتر است، به خصوص در مقایسه با مدیریت بسته Pacman که در Arch Linux و سایر توزیعهای مبتنی بر Arch وجود دارد.
APT مخفف Advanced Package Tool است. به عنوان مدیر بسته پیشفرض برای دبیان و در نتیجه توزیعهای لینوکس مبتنی بر دبیان مانند اوبونتو عمل میکند. از آنجایی که اوبونتو محبوب ترین توزیع لینوکس است، و تعداد زیادی توزیع بر اساس اوبونتو وجود دارد، APT مدیر بسته ای است که بسیاری از ما ابتدا با آن مواجه می شویم. نرم افزار در لینوکس در فرمت های مختلفی ارائه می شود و APT به ویژه با فرمت بسته DEB کار می کند.
DNF مدیر بسته پیشفرض در فدورا و توزیعهای مبتنی بر فدورا مانند Red Hat Enterprise Linux و CentOS است. DNF با فرمت بسته RPM کار می کند.
DNF در مقابل YUM
نام DNF مخفف نیست. این سه حرف کوتاه برای “Dandified YUM” هستند.
DNF بازنویسی YUM است، “Yellowdog Updater، Modified.” YUM خود قبلاً بازنویسی “Yellowdog UPdater” یا YUP بود که در ابتدا برای Yellow Dog Linux توسعه یافته بود.
در حالی که ممکن است YUM را در سیستم های قدیمی تر مشاهده کنید، اما به نفع DNF متوقف شده است. دلیل زیادی برای جستجوی YUM امروز وجود ندارد.
به عنوان مثال دستورات APT و DNF
بیایید با یکی از اولین کارهایی که بسیاری از ما پس از نصب توزیع جدید لینوکس انجام می دهیم، شروع کنیم – دانلود به روز رسانی های سیستم.
به روز رسانی های سیستم را دانلود کنید
در APT، این شامل دو دستور است.
sudo apt update
sudo apt upgrade
بیایید اینها را بشکنیم.
sudo به شما دسترسی مدیریتی به سیستم شما می دهد. بدون آن، دستور شما با یک پیغام خطا به دلیل عدم دسترسی ناموفق خواهد بود.
دستور به روز رسانی متادیتای بسته ها را از منابع نرم افزاری موجود دانلود می کند تا رایانه شما بداند چه نسخه هایی را باید درخواست کند.
هنگامی که پایگاه داده محلی شما به روز شد، نوبت به دانلود و نصب آخرین نرم افزار می رسد. اینجاست که دستور ارتقا وارد می شود.
برای نصب بهروزرسانیهای سیستم با استفاده از DNF، اجرا کنید:
sudo dnf update
یا
sudo dnf upgrade
هر زمان که بهروزرسانی سیستم را شروع میکنید یا نرمافزار را نصب میکنید، DNF بهطور خودکار ابرداده را بررسی میکند. به همین دلیل، دستورات به روز رسانی و ارتقاء عملکرد یکسانی را انجام می دهند و شما آزاد هستید که از آنها به جای یکدیگر استفاده کنید.
جستجو برای یک بسته
فرض کنید میخواهید برنامهای را نصب کنید، اما نام دقیقی که توزیع شما برای بستهای که برنامه در آن ارائه میشود را نمیدانید. در یک برنامه گرافیکی، میتوانید نرمافزارهای موجود را مرور کنید، اما در خط فرمان، باید این کار را انجام دهید. در عوض یک جستجوی مبتنی بر متن
در این مورد، چه از APT یا DNF استفاده کنید، فقط باید یک فرمان را به خاطر بسپارید، و احتمالاً می توانید حدس بزنید. اگر می خواهید برنامه ای را با نام “package” جستجو کنید، کافی است تایپ کنید:
sudo apt search package
یا
sudo dnf search package
نرم افزار را نصب کنید
مانند انجام جستجو، دستور نصب برنامه با استفاده از APT یا DNF یکسان است.
در APT:
sudo apt install package
در DNF:
sudo dnf install package
یکی از مزایای DNF نسبت به APT، توانایی نصب RPM هایی است که به صورت دستی از وب دانلود کرده اید. می توانید این کار را با استفاده از همان دستور install انجام دهید، اما به جای نام بسته، مسیر کامل RPM را وارد کنید.
sudo dnf install /path/to/package.rpm
در مقابل، برای نصب یک DEB که در پوشه Downloads خود قرار داده اید، نمی توانید از APT استفاده کنید و باید به یک برنامه خط فرمان جداگانه مانند dpkg بروید.
نرم افزار را حذف کنید
راه های مختلفی برای حذف نرم افزار با استفاده از APT وجود دارد. اولین و مستقیم ترین گزینه این است:
sudo apt remove package
برای حذف فایل های پیکربندی، علاوه بر داده های برنامه، اجرا کنید:
sudo apt purge package
برای اینکه APT به طور خودکار نرم افزارهایی را که به عنوان وابستگی نصب شده اند و دیگر مورد نیاز نیستند حذف کند، می توانید از موارد زیر استفاده کنید:
sudo apt autoremove
DNF معادل مستقیم دستور پاکسازی ندارد، زیرا توزیعهای مبتنی بر RPM فایلهای پیکربندی را مانند سیستمهای مبتنی بر دبیان مدیریت نمیکنند. اما دو گزینه دیگر یکی هستند.
برای حذف یک برنامه با استفاده از DNF، اجرا کنید:
sudo dnf remove package
و برای حذف خودکار وابستگیهای غیرضروری، از:
sudo dnf autoremove
DNF و APT بیشتر شبیه هم هستند تا متفاوت
برخی از کاربران قدیمی لینوکس ترجیحی بین APT و DNF دارند. آنها سینتکس را برای انجام عملیات قدرتمندتر یاد گرفتهاند، و تعویض شامل یادگیری مجدد چیزهایی است که قبلاً میدانند.
اما برای تازه واردان، این دو مدیر بسته تا حد زیادی یکسان هستند. تفاوت آنها ظریف است، مانند DNF به طور خودکار اطلاعات بسته را قبل از نصب نرم افزار یا بررسی به روز رسانی ها دانلود می کند.
همانطور که در دو تصویر بالا می بینید، دو مدیر بسته نیز اطلاعات متفاوتی را ارائه می دهند.
با این حال، هر دو برنامههای خط فرمان هستند که فوراً کار میکنند و زمان انتظار بیشتر به اتصال اینترنت شما و سرعت سرورهایی که به آنها متصل میشوید مربوط میشود. برای بسیاری از ما، دسترسی به یک مدیر بسته متفاوت دلیلی برای تغییر از یک توزیع لینوکس به توزیع دیگر نیست.
APT در مقابل DNF: کدام را باید استفاده کنید؟
اینکه از APT یا DNF استفاده می کنید تا حد زیادی به توزیعی که استفاده می کنید بستگی دارد. این بدان معناست که برای اکثر کاربران لینوکس، انتخاب برای ما انجام می شود. اما اگر اولویت کافی دارید، میتوانید توزیع خود را بر اساس استفاده از APT یا DNF انتخاب کنید.
هیچ یک از مدیران بسته به ویژه قدرتمندتر یا توانمندتر از دیگری نیستند. بنابراین هر کدام که با آن گیر کرده اید، برای یادگیری بسیار خوب است. و اگر روزی نیاز به تعویض دارید، انجام این کار چندان دشوار نیست.