
معرفی 9 تا از بهترین پکیج منیجرها در لینوکس
اهمیت پکیج منیجرها در لینوکس برای هر کاربر (از مبتدی تا حرفه ای) غیرقابل انکار است چون این ابزارها هستند که امکان دانلود، نصب، آپدیت، مدیریت وابستگی ها و حذف انواع پکیج های نرم افزاری را فراهم می کنند.
apt برای توزیع های مبتنی بر دبیان، dnf و yum برای توزیع های مبتنی بر redhat جزو بهترین ها هستند و عملکرد خود را اثبات کنند که البته بعضی از مدیربسته ها مثل snap در اکثر توزیع های لینوکس قابل نصب و استفاده هستند.
برای تبدیل شدن به یک کاربر قدرتمند لینوکس باید با انواع مدیرهای بسته و پکیج های تحت پوشش آنها آشنا باشید و سپس بر اساس نوع توزیع لینوکس خود، بهترین پکیج را انتخاب کنید. البته، اگر می خواهید سرور لینوکس شما هم از عهده پشتیبانی از مدیربسته های مختلف بربیاید، با مراجعه به صفحه خرید سرور مجازی لینوکس می توانید یک انتخاب مطمئن داشته باشید.
۱. Advanced Packaging Tool (APT)
توزیع: دبیان، اوبونتو، لینوکس مینت، کالی لینوکس، Raspbian، Elementary، Zorin و Pop!_OS
وقتی صحبت از مدیربسته لینوکس می شود، apt اولین موردی است که به ذهن کاربران لینوکس می آید.
این ابزار برای نصب، ارتقا و حذف پکیج های مناسب برای توزیع های مبتنی بر دبیان با پسوند deb. استفاده می شود و یکی از نقاط قوت آن هم این است که تمام وابستگی ها و کتابخانه های لازم برای بسته موردنظر را به طور خودکار شناسایی و نصب می کند.
ویژگی های اصلی apt
- ایفای نقش فرانت اند برای ابزار dpkg
- تامین وابستگی های بسته موردنظر به صورت خودکار
- پشتیبانی از مخازن وسیع و بی شمار
- امکان جستجو و کشف اطلاعات در مورد پکیج ها
- امکان نصب پکیج به صورت آنلاین یا محلی
- امکان استفاده از آپشن y- همراه دستور apt، برای پاسخ مثبت به تمام درخواست های حین اجرا
- امکان نصب ورژن های مختلف یک پکیج از ریپازیتوری های مختلف
- …
دستورات اصلی apt
نصب پکیج موردنظر
sudo apt-get install packageName
دانلود اطلاعات مربوط به نسخه های جدید بسته ها از مخازن تعیین شده
sudo apt-get update
آپگرید بسته های نصب شده روی سیستم به آخرین نسخه کشف شده با دستور update
sudo apt-get upgrade
ترکیب دو دستور update و upgrade
sudo apt-get update && sudo apt-get upgrade
جستجوی بسته های قابل نصب متناسب با اسم پکیج موردنظر
sudo apt-cache search packageName
حذف بسته از سیستم
sudo apt-get remove packageName
۲. YUM (Yellowdog Updater, Modified)
توزیع: CentOS، فدورا ( نسخه های قبل از ۲۲)، RHEL ،Oracle Linux و راکی لینوکس
Yum مدیر بسته پیش فرض توزیع های مبتنی بر Redhat است که با استفاده از آن می توانید از عهده نصب، آپدیت و حذف بسته های نرم افزاری rpm. بربیایید.
همانطور که APT نقش فرانت اند dpkg را بر عهده دارد، yum هم محبوب ترین فرانت اند RPM است و به گونه ای طراحی شده است که به طور خودکار تمام وابستگی های لازم برای بسته موردنظر را هم همراه بسته شناسایی و نصب می کند.
ویژگی های اصلی yum
- رایگان و متن باز
- رابط کاربرپسند
- پشتیبانی از ریپازیتوری های متعدد
- مناسب جهت مدیریت بسته های rpm
- شناسایی و نصب خودکار وابستگی های لازم برای پکیج
- امکان جستجوی بسته ها
- امکان دانگرید بسته ها
- امکان نصب پکیج به صورت آنلاین یا محلی
- امکان گروه بندی پکیج ها
- امکان مشاهده تاریخچه تراکنش های نصب، آپدیت و حذف بسته ها
- …
دستورات اصلی yum
نصب پکیج موردنظر
sudo yum install packageName
آپدیت و آپگرید مخازن سیستم
sudo yum update
جستجوی بسته های قابل نصب متناسب با اسم پکیج موردنظر
sudo yum search packageName
حذف بسته از سیستم
sudo yum remove packageName
۳. DNF (Dandified Yum)
توزیع: CentOS (نسخه ۸ به بعد)، فدورا (نسخه ۲۲ به بعد)، RHEL (نسخه ۸ به بعد)، AlmaLinux، راکی لینوکس و OpenMandriva
Dnf، مدیر بسته نسخه های جدیدتر توزیع های مبتنی بر RPM یا ردهت است و به عنوان جانشین Yum به کار می رود.
این مدیر بسته هم مثل yum با بسته هایی که پسوند rpm. دارند، کار می کند و به مراتب، سرعت بالاتر و عملکرد بهینه تری نسبت به yum دارد.
ویژگی های اصلی DNF
- سرعت بالا
- امنیت بالا
- استفاده از الگوریتم بهبودیافته برای شناسایی و نصب وابستگی ها
- ارائه افزونه ها و پلاگین های پیشرفته
- عملکرد بهتر در حل تداخل های مربوط به وابستگی های پکیج
- امکان بازگشت تراکنش در صورت خطا
- طراحی ماجولار
- گزارش خطا به صورت خودکار
- ارائه دستورات CLI پیشرفته
- …
دستورات اصلی DNF
نصب پکیج موردنظر
sudo dnf install packageName
آپدیت و آپگرید مخازن سیستم
sudo dnf update
جستجوی بسته های قابل نصب متناسب با اسم پکیج موردنظر
sudo dnf search packageName
حذف بسته از سیستم
sudo dnf remove packageName
۴. Pacman
توزیع: آرچ لینوکس، مانجارو، ArcoLinux ،EndeavourOS ،ArcoLinux ،Artix Linux و سایر توزیع های مبتنی بر آرچ
Pacman مدیر بسته پیش فرض توزیع های مبتنی بر آرچ لینوکس است و برای نصب، آپدیت و حذف بسته های موجود در مخازن رسمی آرچ لینوکس (با پسوند pkg.tar.zst یا pkg.tar.xz)، مخزن AUR و بسته های محلی دانلود شده، قابل استفاده است.
این مدیر بسته، فرانت اند هیچ ابزار اصلی نیست و به خودی خود حاوی تمام ویژگی های یک مدیربسته کامل است.
ویژگی های اصلی Pacman
- سبک وزن و سریع
- پشتیبانی از AUR
- شناسایی و نصب خودکار وابستگی ها
- دسترسی به آخرین آپدیت های پکیج ها
- امکان سفارشی سازی بسته ها مطابق با اولویت های خاص
- ذخیره بسته های دانلود شده در کش
- امکان مشاهده تاریخچه تراکنش های نصب، آپدیت و حذف بسته ها
- …
دستورات اصلی Pacman
نصب پکیج موردنظر
sudo pacman -S packageName
آپدیت و آپگرید مخازن سیستم
sudo pacman -Sy sudo pacman -Syu
جستجوی بسته های قابل نصب متناسب با اسم پکیج موردنظر
sudo pacman -Ss packageName
حذف بسته از سیستم
sudo pacman -Rns packageName
۵. Zypper
توزیع: SUSE Linux Enterprise و openSUSE
این مدیر بسته مناسب توزیع های مبتنی بر SUSE است و عملکردهای رایج یک پکیج منیجر مثل دسترسی به مخازن، مدیریت بسته ها، حل مسائل مربوط به وابستگی ها و … را ارائه می دهد.
Zypper رابط خط فرمان ZYpp است و از بسته هایی با پسوندهای مختلف مثل rpm ،xml ،solv و patch پشتیبانی می کند.
ویژگی های اصلی Zypper
- ساده و سریع
- پشتیبانی از قابلیت دانگرید
- دستورات ساده و مختصر
- ارائه یک مکانیسم کش برای افزایش سرعت کار با پکیج ها
- شناسایی و نصب خودکار وابستگی های پکیج ها
- استفاده از کتابخانه libzypp
- دسترسی به آخرین پچ های امنیتی
- جستجوی نسخه های بسته موردنظر
- …
دستورات اصلی Zypper
نصب پکیج موردنظر
sudo zypper install packageName
آپدیت و آپگرید مخازن سیستم
sudo zypper update
یا
sudo zypper up
جستجوی بسته های قابل نصب متناسب با اسم پکیج موردنظر
sudo zypper search packageName
حذف بسته از سیستم
sudo zypper remove packageName
یا
sudo zypper rm packageName
۶. Synaptic
توزیع: دبیان، اوبونتو، لینوکس مینت، کالی لینوکس، Raspbian ،Elementary ،Zorin و Pop!_OS
این مدیربسته گرافیکی، همان قابلیت های apt-get و apt در توزیع های لینوکس مبتنی بر دبیان را ارائه می دهد منتها دسترسی به یک رابط کاربرپسند و ساده، کار کردن با انواع پکیج های deb را راحت تر می کند.
ویژگی های اصلی Synaptic
- رابط گرافیکی کاربرپسند
- سبک وزن و سریع
- مدیریت خودکار وابستگی های بسته
- امکان جستجو و فیلتر بسته ها
- ارائه اطلاعات کامل بسته ها
- آپدیت و ارتقا هوشمندانه پکیج ها
- ارائه قابلیت هایی مثل فیلتر و پین پکیج
- …
* Synaptic مثل apt، مدیربسته پیش فرض توزیع های مبتنی بر دبیان نیست و برای استفاده از آن، ابتدا باید آن را نصب کنید.
۷. Portage
توزیع: Gentoo
با اینکه این مدیر بسته به اندازه مدیربسته های دیگر محبوب نیست ولی اگر از توزیع لینوکس Gentoo استفاده می کنید، Portage هم می تواند از بین بهترین پکیج منیجرها در لینوکس برای شما بهترین باشد.
این مدیر بسته مبتنی بر سورس کد است و از پسوند ebuild. استفاده می کند. به این صورت که بسته ها در Gentoo به صورت سورس کد ارائه می شوند و موقع، نصب بر روی سیستم کاربر کامپایل می شود و این ابزار هم امکان نصب و پیکربندی بسته ها را فراهم می کند.
ویژگی های اصلی Portage
- کار با سورس کد پکیج ها
- نصب کتابخانه ها و وابستگی های لازم به صورت خودکار
- امکان دانگرید بسته های نرم افزاری
- انعطاف پذیری و سرعت بالا
- آپدیت مداوم سیستم
- …
دستورات اصلی Portage
نصب پکیج موردنظر
sudo emerge packageName
آپدیت و آپگرید مخازن سیستم
sudo emerge --update --deep world
جستجوی بسته های قابل نصب متناسب با اسم پکیج موردنظر
emerge --search packageName
حذف بسته از سیستم
sudo emerge --depclean packageName
مدیربسته هایی که تا الان بررسی کردیم، هر کدام مناسب توزیع های خاصی بودند اما ابزارهایی هم وجود دارند که برای مدیریت پکیج ها در اکثر توزیع های لینوکس قابل استفاده هستند.
۸. Snap
این ابزار محصول شرکت Canonical است و برای مدیریت بسته های موجود در ریپازیتوری snap در اکثر توزیع های لینوکس مثل اوبونتو، Fedora و مانجارو لینوکس توسعه یافته است.
بسته های Snap در یک محیط ایزوله و مستقل (sandbox) ارائه می شوند و دلیل اصلی سازگاری پکیج ها و ابزار snap با انواع توزیع های لینوکس و امنیت و پایداری بالای آن همین ویژگی sandboxing است.
ویژگی های اصلی مدیر بسته snap
- سازگاری با انواع توزیع های لینوکس
- مدیریت آسان بسته ها
- نصب پکیج همراه با تمام وابستگی های لازم
- ایزوله سازی بسته ها به صورت sandbox
- امکان انتشار سریع نسخه های جدید نرم افزارها
- آپدیت خودکار بسته ها
- …
برای استفاده از این ابزار، ابتدا باید آن را در سیستم لینوکس خود نصب کنید:
توزیع های مبتنی بر دبیان
sudo apt update
sudo apt install snapd
توزیع های مبتنی بر redhat مثل Centos و فدورا
sudo yum install snapd
یا
sudo dnf install snapd
توزیع های مبتی بر آرچ لینوکس مثل مانجارو
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si
sudo systemctl enable --now snapd.socket
دستورات اصلی snap
نصب پکیج
sudo snap install packageName
آپدیت اپلیکیشن های نصب شده توسط snap
sudo snap refresh
جستجوی بسته های مربوط به اسم پکیج موردنظر
snap find packageName
حذف پکیج از سیستم لینوکس
sudo snap remove packageName
۹. Flatpak
Flatpak هم مشابه snap برای نصب بسته های نرم افزاری در اکثر توزیع های لینوکس استفاده می شود و تقریباً سبک کار مشابهی دارند. تنها با این تفاوت که Flatpak، بسته های موردنظر را از مخازن Flathub استخراج و نصب می کند.
ویژگی های اصلی Flatpak
- ارائه رابط گرافیکی همراه با دستورات ترمینال
- ارائه بسته ها همراه با تمام وابستگی های لازم (با پسوند flatpak)
- اجرای برنامه ها در محیط های ایزوله
- ارتقا امنیت پروسه نصب و آپدیت پکیج های نرم افزاری
- …
برای شروع استفاده از این ابزار، ابتدا باید آن را در سیستم لینوکس خود نصب کنید.
توزیع های مبتنی بر دبیان مثل اوبونتو
sudo apt update
sudo apt install flatpak
توزیع های مبتنی بر redhat مثل Centos و فدورا
sudo yum install flatpak
یا
sudo dnf install flatpak
توزیع های مبتنی بر آرچ لینوکس مثل مانجارو
sudo pacman -S flatpak
سپس باید ریپازیتوری Flathub را به سیستم لینوکس خود اضافه کنید:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
دستورات اصلی Flatpak
نصب پکیج
flatpak install flathub packageName
آپدیت تمام اپلیکیشن های نصب شده توسط flatpak
flatpak update
جستجوی بسته های مربوط به اسم پکیج موردنظر
flatpak search packageName
حذف پکیج موردنظر از سیستم لینوکس
sudo flatpak uninstall packageName
نکاتی مهم برای انتخاب از بین بهترین پکیج منیجرها در لینوکس
بهتر است قبل از آشنایی با بهترین پکیج منیجرها در لینوکس، به سوالات زیر پاسخ بدهید و سپس بر اساس پاسخ هایی که داده اید، بهترین مدیربسته را انتخاب کنید:
- با کدام توزیع لینوکس سازگار است؟
- آیا همراه با پکیج موردنظر، تمام وابستگی های آن را هم کشف و نصب می کند؟
- رایگان است؟
- در مدیریت پکیج ها سرعت بهینه ای دارد؟
- امکانات یا ویژگی هایی را برای ارتقا تجربه کاربری ارائه می دهد؟
- متادیتایی مثل ورژن و توضیحات را هم همراه پکیچ ذخیره می کند؟
- دارای ویژگی ها و قابلیت های لازم برای مدیریت نرم افزارها است؟
- …
سخن آخر
تمام توزیع های لینوکسی که وجود دارند، مدیربسته های خاصی خود را دارند و این شما هستید که باید بر اساس نوع توزیع و نیازمندی های خود از بین بهترین پکیج منیجرهای لینوکس، گزینه مناسب خود را انتخاب کنید. البته، مدیر بسته هایی مثل Snap و Flatpak عمومی هستند و در توزیع های مختلف قابل نصب و استفاده هستند.