linux package management
معرفی و آشنایی با نرم‌افزارهای مدیریت بسته در سیستم‌عامل لینوکس
لینوکس سیستم‌عامل جامع و کاملی است که قابلیت‌های مختلفی در اختیار کاربران قرار می‌دهد. با این‌حال، کاربرانی که از سیستم‌عامل ویندوز به دنیای لینوکس وارد می‌شوند در ابتدای راه به دلیل عدم آشنایی با محیط لینوکس با دشواری‌هایی روبرو می‌شوند. مدیر بسته در دنیای لینوکس شبیه به یام در فدورا عملکردی هوشمند دارند و قادر هستند بسته‌های موردنیاز کاربران را از مخازنی که روی سیستم فعال هستند نصب، به‌روزرسانی یا حدف کنند. در این مطلب با تعدادی از نرم‌افزارهای مدیریت بسته در لینوکس آشنا می‌شویم.

Apt

ابزار بسته‌بندی پیشرفته (Apt) سرنام  Advanced Packaging Tool یکی از برنامه‌های مدیریت بسته در سیستم‌عامل‌های گنو/لینوکس دبیان است. هدف از ایجاد این نرم‌افزار جستجو، نصب و مدیریت آسان بسته‌های نرم‌افزار بر روی این توزیع لینوکس است. اپت از چند کتابخانه تشکیل شده‌ که مهم‌ترین آن‌ها apt-get و apt-cache هستند. اپت در اپن‌سولاریس نیز مورد استفاده قرار می‌گیرد. در عین حال امکان وارد کردن آن به مک اواس هم از طریق بسته نرم‌افزاری فینک وجود دارد. از روی ایده اپت-گت نرم‌افزار وین-گت طراحی شده‌است که شبیه به اپت اما روی سیستم‌عامل‌های مایکروسافت ویندوز کار می‌کند. نحوه به‌کارگیری ابزار فوق به این صورت است که در ‎ /etc/apt/sources.list آدرس منابع نرم‌افزار قرار دارند. این منابع می‌توانند سی‌دی، دی‌وی‌دی، فایل تحت شبکه یا پوشه‌های اف‌تی‌پی یا اچ‌تی‌تی‌پی باشند. اگر بسته‌ای در پوشه‌ها یا دیسک سخت موجود باشد خودکار دریافت شده و نصب می‌گردد. تمامی بسته‌ها با فرمت دب (قالب پرونده) می‌باشند و پیش‌نیازها به صورت خودکار شناسایی شده‌اند، برای همین ممکن است در هنگام نصب برنامه‌ای کتابخانه‌های مورد نیاز هم دریافت و نصب گردند. نرم‌افزار اپت از روی دی‌پی‌کی‌جی کار می‌کند.

dpkg

دی‌پی‌کی‌جی (dpkg) نرم‌افزاری است که مبنای سامانه مدیریت بسته سیستم‌عامل دبیان می‌باشد. از دی‌پی‌کی‌جی برای نصب، پاک کردن، یا بدست آوردن اطلاعات در رابطه با بسته‌های نرم‌افزاری دِب استفاده می‌شود.

اسنپ

اسنپ یک سیستم استقرار نرم‌افزار و مدیر بسته است که توسط کنونیکال برای سیستم‌عامل گنو/لینوکس ساخته شده‌است. این بسته‌ها توسط ابزاری به نام اسنپ‌دی استفاده می‌شوند و در طیف وسیعی از توزیع‌های لینوکسی وجود دارند. اسنپ در ابتدا برای اوبونتو تاچ طراحی شده بود. همچنین این سیستم طوری طراحی شده که در اینترنت اشیاء، رایانش ابری و رایانه‌های رومیزی هم کار کند. بسته‌های نرم‌افزاری اسنپ، خودمحور هستند و در طیف وسیعی از توزیع‌های لینوکس کار می‌کنند. این ویژگی برخلاف عملکرد مدیر بسته‌های لینوکسی قدیمی‌تر، مانند APT یا یام است که برای هر توزیع لینوکس به بسته‌های اختصاصی سازگار با همان توزیع نیاز دارند. در مدیربسته‌های قدیمی‌تر به دلیل به‌وجود آمدن وقفه میان توسعه نرم‌افزار و استقرار و آماده‌سازی نرم‌افزار برای توزیع‌های مختلف، محصول دیرتر به دست کاربر نهایی می‌رسد. اسنپ‌ها هیچ وابستگی‌ای به فروشگاه برنامه‌ای ندارند و از هر منبعی قابل دستیابی هستند.

هر اسنپ کانالی دارد که بررسی نسخه فعلی و ردگیری به‌روزرسانی‌های بسته اسنپ از طریق این کانال‌ها انجام می‌شود. توسعه‌دهندگان می‌توانند از اسنپ برای ایجاد ابزارهای خط فرمان و خدمات پس زمینه و همچنین برنامه‌های دسکتاپ استفاده کنند. توسعه‌دهندگان همچنین می‌توانند از اسنپ‌ها برای به اشتراک گذاشتن برنامه‌ها و داده‌ها استفاده‌کنند تا کتابخانه‌ها، چارچوب‌های نرم‌افزاری و به‌طور کلی افزونگی وابستگی‌ها را کاهش دهند. در ژوئن سال ۲۰۱۶، اسنپ‌دی به طیف گسترده‌ای از توزیع‌های لینوکس منتقل شد تا امکان استفاده از اسنپ درمیان توزیع‌های لینوکسی، و نه فقط در اوبونتو، فراهم شود. اسنپ‌دی برای آرچ لینوکس، سنت‌اواس، دبیان، فدورا، سولوس، مانجارو، مینت، اوپن‌امبدد، رزبین، اوپن‌دبلیوآرتی و اوپن‌سوزه در دسترس یا در حال توسعه است.

پورتج

پورتج (Portage) یک سامانه مدیریت بسته است که جنتو لینوکس از آن استفاده می‌کند و بر اساس مفهوم ports collections ایجاد شده است. پروژه Gentoo/Alt وظیفه سازگار کردن ابزار پرتج برای سایر سیستم عامل‌ها مانند بی‌اس‌دی، اواس‌ده و سولاریس (سیستم‌عامل) را بر عهده دارد؛ که معروفترین آن Gentoo/FreeBSD نام دارد. پرتیج شبیه به سامانه مدیریت بسته در بی‌اس‌دی می‌باشد که مجموعه پورت‌ها نام دارد. پرتیج بوسله پایتون نوشته شده است و به نوعی هسته مرکزی جنتو لینوکس می‌باشد. دو عنصر اصلی در پرتیج emerge و ebuild می‌باشند که بوسیله ابزار emerge، می‌توان سورس کد پکیج مورد نظر را (که مشخصات آن درون ebuild مشخص می‌شود) دریافت و بعد آن را کامپایل نمود.

زایپ

زایپ (ZYpp) که برخی منابع آن‌را لیب زایپ (libzypp) می‌گویند، یک موتور مدیریت بسته است که در برنامه‌هایی چون یاست، زایپر و پیاده‌سازی PackageKit در اوپن‌سوزه/سوزه لینوکس انترپرایز سرور و سوزه لینوکس انترپرایز دسکتاپ مورد استفاده قرار می‌گیرد. برخلاف دیگر مدیر بسته‌های متداول چون APT, RPM و yum، زایپ از مکانیز خاصی برای محاسبه وابستگی‌های بسته‌ها استفاده می‌کند. به دلیل داشتن همین ویژگی، در توزیع‌های لینوکس مذکور می‌توان بسته‌ها را در مرحله نصب سیستم‌عامل، برای نصب یا نصب نشدن انتخاب کرد و وابستگی‌های نرم‌افزارها با دقت بسیار بالایی رهگیری و کنترل می‌شوند. زایپر واسط خط فرمان بومی مدیر بسته زایپ برای نصب، حذف، به روزرسانی و پرس و جو برای حل وابستگی‌های بسته‌ها است، معادل گرافیکی آن، ماژول مدیریت بسته یاست است. در ژوئن ۲۰۰۹، توزیع لینوکس Ark Linux اعلام کرد که بررسی حل کننده‌های وابستگی‌های بسته‌ها توسط زایپ را به اتمام رسانده و زایپ و ابزارهای آن را جایگزین مدیر بسته پیر شده APT-RPM (که آخرین نسخه پایدار آن سال ۲۰۰۶ عرضه شد)، خواهد کرد، و اولین توزیع لینوکس بود که چنین کاری را کرد. زایپر همچنین در توزیع‌های لینوکس موبایل چون تایزن، Sailfish OS و MeeGo مورد استفاده قرار گرفته است.

فلت‌پک

فلت پک (Flatpak) یک نرم‌افزار کاربردی برای استقرار نرم‌افزار و مدیریت بسته برای لینوکس است. فلت پک یک محیط sandbox در اختیار کاربران می‌گذارد که در آن می‌توانند نرم‌افزارهای کاربردی را به صورت جدا از بقیه سیستم اجرا کنند. برنامه‌های کاربردی با استفاده از فلت پک برای دسترسی به بلوتوث، صدا (با PulseAudio)، شبکه، پرونده‌ها و غیره به مجوزهایی احتیاج دارند که توسط نگهدارنده فلت پک تعریف شده‌اند و توسط کاربران در سیستم خود قابل کنترل (اضافه یا حذف) هستند. فلت پک به عنوان بخشی از پروژه Freedesktop.org (که قبلاً با نام X Desktop Group یا XDG شناخته می‌شد) توسعه داده شد و در ابتدا xdg-app نامیده می‌شد. Flathub، مخزنی (یا منبع از راه دور در اصطلاحات فلت پک) که در flathub.org قرار دارد، به یک استاندارد برای دریافت برنامه‌های بسته‌بندی شده با فلت پک تبدیل شده‌است. بسته‌های flathub توسط مدیران Flathub یا برنامه‌نویسان برنامه‌ها ارایه می‌شوند. اگرچه Flathub منبع اصلی برای برنامه‌های بسته‌بندی شده با فلت پک است، فلت پک می‌تواند به‌طور مستقل از Flathub کار کند. امکان میزبانی از راه دور و دسترسی به Remoteهایی که کاملاً مستقل از Flathub هستند امکان‌پذیر است.

گنوگیکس

گنو گیکس یک مدیر بسته انشعاب یافته از مدیر بسته Nix برای گنو/لینوکس و سیستم‌عامل گنو با هسته گنو هرد است. گنو گیکس علاوه بر کارکردهای متداول یک مدیر بسته، از به‌روز رسانی‌های تراکنشی، بازگردانی نسخه، مدیریت بسته بدون مجوز کاربر ریشه، نمایه‌های شخصی برای هر کاربر، و امکان جستجوی بسته‌های بلااستفاده هم پشتیبانی می‌کند. از دیگر امکانات این مدیر بسته می‌توان به امکان نصب و اجرای هم‌زمان چندین نسخه از یک نرم‌افزار اشاره کرد. پروژه گنو گیکس اولین نسخه گنو گیکس را در نوامبر ۲۰۱۲ معرفی نمود، یک مدیر بسته کاربردی برپایه Nix که در کنار باقی چیزها، APIهای گنو گویل را نیز ارائه می‌داد. پروژه در ژوئن ۲۰۱۲ توسط Ludovic Courtès، یکی از هکرهای گنو گویل آغاز گردید. در ۲۰ اوت ۲۰۱۵، اعلام شد که به گنو هرد منتقل شد و اولین مدیر بسته بومی گنو هرد شد.

یاست

یاست (YaST) یک ابزار راه‌اندازی و پیکربندی برای سیستم‌عامل لینوکس است که در توزیع‌های اوپن‌سوزه و توزیع‌های تجاری شرکت سوزه مانند سوزه لینوکس انترپرایز سرور و دسکتاپ مورد استفاده قرار می‌گیرد. این ابزار می‌تواند بسیاری از جنبه‌های سیستم را پیکربندی کند. اولین توزیع سوزه که یاست را در خود جای داد در می ۱۹۹۶ عرضه شد. یاست به مدیران سیستم اجازه می‌دهد تا بسته‌های نرم‌افزاری را مدیریت کنند، سخت‌افزارها را پیکربندی کنند، شبکه‌ها و سرورها را راه‌اندازی و تنظیم کنند و کارهای دیگر. یکی از ویژگی‌های یاست این است که front end آن هم به صورت گرافیکی و هم بدون گرافیک با استفاده از کتابخانه ان‌کرسز در دسترس است. این یک ویژگی بسیار مفید برای مواقعیست که نصب سیستم‌عامل بدون واسط گرافیکی انجام می‌گیرد مثلاً برای سرورها و همچنین مواقعی که کاربر نمی‌تواند به یک سرور گرافیکی بوت کند ولی نیازمند یک واسط کاربر پیشرفته برای مدیریت بسته‌ها و کارهای دیگر است، همچنین برای مدیریت سیستم بر فراز ارتباط کم سرعت اینترنت می‌تواند مفید واقع شود. یاست قابلیت مدیریت بسته را از طریق زایپ ارائه می‌کند.

یام

یام (Yellow dog Updater Modified) یا Yellow dog Update Manager که به اختصار به آن YUM گفته می‌شود، یک نرم‌افزار کاربردی متن باز می‌باشد که برای مدیریت بسته‌های نرم‌افزاری سازگار با RPM در سیستم‌عامل لینوکس استفاده می‌شود. این نرم‌افزار توسط Seth Vidal و گروهی از برنامه‌نویسان داوطلب تولید شد و تحت لیسانس گنو (GNU) منتشر گشت. این پروژه هم‌اکنون به عنوان قسمتی از پروژه لینوکس دوک از دانشگاه دوک نگهداری می‌شود. علی‌رغم اینکه YUM یک ابزار مبتنی بر خط فرمان می‌باشد، ابزار متفاوتی که برای آن رابط گرافیکی کاربر ایجاد می‌کند نیز تولید شده‌اند. از جمله این ابزار می‌توان pup، یام و یام را نام برد.

Aptitude

Aptitude یک front-end با واسط کاربر متنی برای ابزار بسته‌بندی پیشرفته (APT) است که قابلیت‌های زیادی برای مدیریت بسته‌ها به روشی آسان و تعاملی، بدون نیاز به وارد کردن فرمان می‌دهد. از قابلیت‌های مهم آن می‌توان به نمایش بسته‌های نصب شده روی سیستم و بسته‌های موجود در مخزن به صورت لیست‌های دسته‌بندی شده، نصب، حذف و به-روز-رسانی بسته‌ها و سیستم جستجوی قدرتمند با استفاده از الگوهای جستجوی انعطاف پذیر اشاره کرد. این ابزار به طور اختصاصی برای دبیان ساخته شده است.

RPM

مدیر بسته RPM (RPM Package Manager) که در اصل Red Hat Package Manager است، یک سامانه مدیریت بسته طراحی شده توسط شرکت رد هت است. RPM در درجه اول برای توزیع‌های لینوکس در نظر گرفته شد، این قالب پرونده، خط مبنای قالب بسته در پایه استاندارد لینوکس است. RPM برای استفاده در رد هت لینوکس ساخته شد ولی اکنون در خیلی از توزیع‌های لینوکس استفاده می‌شود، همچنین به چند سیستم عامل دیگر مانند سیستم عامل شبکه NetWare از نسخه 6.5 SP3 و IBM AIX از نسخه ۴ پورت شده است.

slackpkg

slackpkg  یک نرم‌افزار ابزاری برای نصب و به‌روزرسانی خودکار بسته‌ها از طریق شبکه یا اینترنت برای اسلکور است. slackpkg از اسلکور ۹٫۱، در بسته‌های جانبی قرار داشت. اما از نسخه اسلکور ۱۲٫۲ به بعد، در شاخه اصلی آن قرار گرفت. slackpkg تحت پروانه عمومی همگانی گنو (GPL) منتشر شده‌است. slackpkg یک ابزار مدیر بسته خودکار شده نوشته شده به زبان بش، و همچون Swaret است؛ و طراحی شد تا امور مدیریت سیستم را با فراهم کردن روند مدریت بسته، تنها با یک فرمان ساده‌تر کند. slackpkg جایگزینی برای ابزارهای مدیر بسته اسلکور همچون installpkg و upgradepkg نیست. بلکه از آن‌ها استفاده می‌کند. برخی از کاربردهای slackpkg شامل نصب بسته‌ها، به‌روزرسانی و جستجوی آن‌ها می‌شود. بسیاری از این ویژگی‌ها، همچون حذف کردن بسته‌ها، می‌تواند به صورت مستقیم توسط خود ابزارهای مدیریت بسته انجام گیرند، اگرچه اجرای آن‌ها در slackpkg رابط کاربری سازگارتری را ارائه می‌دهد. Slackpkg درخت پیش‌نیازهای میان بسته‌ها را همچون مدیر بسته دبیان (apt)، فراهم نمی‌آورد. هرچند برنامه‌های دیگر، همچون slapt-get، مدیریت خودکار پیش‌نیازهای بسته نیز دارند.

ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را می‌توانید از کتابخانه‌های عمومی سراسر کشور و نیز از دکه‌های روزنامه‌فروشی تهیه نمائید.

ثبت اشتراک نسخه کاغذی ماهنامه شبکه     
ثبت اشتراک نسخه آنلاین

 

کتاب الکترونیک +Network راهنمای شبکه‌ها

  • برای دانلود تنها کتاب کامل ترجمه فارسی +Network  اینجا  کلیک کنید.

کتاب الکترونیک دوره مقدماتی آموزش پایتون

  • اگر قصد یادگیری برنامه‌نویسی را دارید ولی هیچ پیش‌زمینه‌ای ندارید اینجا کلیک کنید.

نظر شما چیست؟