آشنایی با مدیریت بسته

سلام پای ابری های عزیز ما اینجا هستیم تا مدیریت بسته پای ابر را به شما معرفی نماییم.

نصب برنامه ها

در سیستم عامل ویندوز ما برای نصب برنامه ها به دو صورت اقدام می کنیم:

  • نصب از طریق فروشگاه ویندوز
  • نصب از طریق نصاب ها Setup

مدیریت بسته ها

در توزیع های لینوکس غالبا برنامه به صورت بسته بندی شده قرار می گیرند و به وسیله یک مدیریت بسته واحد که قلب توزیع هم محسوب می شود مدیریت می شوند که شامل:

  • نصب بسته ها
  • تعمیر بسته
  • پشتیبان گیری
  • بروزرسانی
  • حذف

می باشند؛ هر توزیع لینوکسی ممکن است مدیریت بسته مخصوص خود را داشته باشد که بسته هایش را مدیریت.

مدیریت بسته دبیان

در توزیع هایی که بر پایه دبیان هستند مدیریت بسته اصلی DPKG نام دارد و بسته های فشرده شده ای را نصب می نماید. برنامه نویس ها می توانند برنامه هایشان را به صورت بسته های فشرده شده ای تحت عنوان فایل deb. منتشر نمایند و این فایل ها در توزیع های دبیانی قابل نصب خواهد بود.

مدیریت بسته اصلی پای ابر

مدیریت بسته پایه در پایانه
مدیریت بسته پایه در پایانه

در توزیع پای ابر مدیریت بسته دبیانی به صورت پیش فرض قرار دارد منتهی ما از یک مدیریت بسته بومی استفاده می کنیم که با پایتون نوشته شده و سازگاری بیشتری به آن دارد نام آن «پایه» می باشد.

بسته های نصبی در توزیع پای ابر با پسوند pa. شناخته می شوند این بسته ها با فرمت زیپ فشرده سازی شده و قابلیت های فراوانی را برای مدیریت بسته پایه فراهم می کنند؛ بسته های پای ابری برخلاف بسته های توزیع های دیگر به صورت متن باز و کدمنبع هم می توانند ارائه شوند سپس توسط مدیریت بسته کامپایل می شوند یا به بایت کدهای پایتونی تبدیل می گردند.

مخازن پایه

لیست بسته ها در پایه
لیست بسته ها در پایه

مخازن مدیریت بسته اصلی پای ابر به صورت پویا می باشند یعنی یک مخزن ایستا و ثابت وجود نداشته و کاربران می توانند هر مخزنی را برای هر بسته ای به صورت جداگانه اضافه نمایند این دقیقا برخلاف dpkg بوده و شبیه به eopkg سلوس می باشد.

ساختار بسته های pa.

خوب حالا می رویم سراغ ساختار کلی بسته های پای ابر تا بیشتر بتوانیم با آنها و کارکردشان آشنا شویم؛ بسته های پای ابری اصلا امضا شدنی نبوده و این امکان را برای کاربران و برنامه نویسان فراهم می کنند تا در آزادی کامل برنامه هایشان را توسعه دهند چون سیاست های پای ابر کاملا مخالف انحصار طلبی می باشد.

البته امکان امضای بسته ها در صورتی که به پای ابر اضافه شود به هیچ عنوان اجباری نخواهد شد و در صورت خواست کاربر بسته های بدون امضا قابل نصب خواهند بود.

قبل از بسته بندی (پروژه)

بسته های پای ابر قبل از بسته بندی به عنوان یک پروژه حساب می شوند و برنامه نویسان روی آن کار می کنند چنین ساختاری دارند:

تصویری از یک پروژه پای ابری
تصویری از یک پروژه پای ابری
  • بخش کد منبع (Source Code): در این قسمت برنامه نویسان کدهای خودشان را به صورت خام و کامپایل نشده قرار می دهند و روی آن کار می کنند؛ مدیریت بسته پایه مسئولیت کامپایل کردن آنها را به عهده می گیرد و جالبی نکته این است که زمان بسته بندی کامپایل صورت نمی گیرد و موقع نصب بسته توسط کاربر کدها کامپایل می شود این امکان چندسکویی و سبک بودن بسته را فراهم می کند و مزیت دیگری که دارد باعث می شود به راحتی بتوانید به کدمنبع دسترسی داشته باشید و هر موقع که خواستید آن را به دلخواه خود تغییر دهید.
  • بخش فایل های مدیریتی (Control Files): این فایل ها شامل اطلاعات اصلی بسته، توسعه دهندگان، تاریخ انتشار بسته و نگارش آن هستند همچنین اسکریپ هایی که قرار است کارهایی را پیش و بعد از نصب یا پیش و بعد از حذف بسته اعمال شوند را هم فراهم می کنند.
  • بخش داده ها (Multi media & Data): فایل های غیربرنامه نویسی شامل تصاویر، لوگوها، تم ها، میانبرهای میزکار و … در این بخش قرار می گیرند و مدیریت بسته بر اساس موقعیتی که قرار است نصب شوند بدون هیچ تغییری آنها را استخراج می نماید.

بخش بیرونی پروژه هم اسکریپت هایی هستند که امکان بسته بندی، نصب پروژه را برای شما امکان پذیر می کنند.

موقع بسته بندی (بسته)

زمانی که مدیریت بسته، پروژه را تولید کرد یک فایل قابل نصب با پسوند pa. ایجاد می شود که ساختار زیر را دارد:

این ساختار بسیار شبیه به ساختار بسته های دبیانی دارد اما مکانیزم آن متفاوت می باشد؛ برای پشتیبانی شدن در همه سکوها و سیستم عامل ها و همچنین قابل تغییر بودن بسته به صورت فایل های فشرده زیپ ارائه می شود.

موقع نصب (برنامه نصب شده)

نمایی از قرارگیری بسته ها بعد از نصب
نمایی از قرارگیری بسته ها بعد از نصب

برخلاف ویندوز توزیع های لینوکسی زمان نصب برنامه های خود هر برنامه در پوشه مخصوص قرار ندارد بلکه تجزیه شده و هر فایلی در پوشه مخصوص خود قرار دارد؛ در اول کار مدیریت بسته پایه اطلاعات اصلی و فایل های مدیریتی را در پوشه app/packages/ استخراج می کند و به این عمل نصب می گویند.

سپس مدیریت بسته اسکریپت پیش نصب را اجرا می کند البته در صورتی که این اسکریپت وجود داشته باشد؛ این اسکریپت نامش preinstall.sa می باشد و بعد از آن اقدام به استخراج فایل های خام و دادها می نماید؛ سپس سراغ کد منبع رفته و تمام کدها را به بایت کدهای پایتونی تبدیل می کند این بایت کدها سرعت بیشتری در اجرا شدن نسبت به کدهای ساده پایتونی دارند؛ البته کدهای سی، سی پلاس پلاس و هاسکال با GCC به صورت خودکار توسط مدیریت بسته پایه کامپایل می شوند؛ در مرحله بعدی اسکریپت postinstall.sa در صورتی که وجود داشته باشد اجرا می شود و عملیات نصب پایان می یابد.

دستورات مهم خط فرمانی پایه

نصب بسته

نصب یک برنامه در پای ابر
نصب یک برنامه در پای ابر

به طور مثال می خواهیم برنامه برگه را که یک ویراشگر متن هست را نصب نماییم که نام بسته آن ir.pyabr.barge می باشد:

paye in ir.pyabr.barge

حذف بسته

حذف یک بسته در پای ابر
حذف یک بسته در پای ابر

حالا می خواهیم برنامه برگه را پاک نماییم به صورت زیر می توانیم بسته برگه را پاک کنیم:

paye rm ir.pyabr.barge

اضافه کردن مخزن

اضافه کردن یک مخزن
اضافه کردن یک مخزن

برای نصب یک مخزن به راحتی می توانید یک بسته را آدرس دهی نمایید تا آن را نصب کنید به طور مثال ما یک بسته داریم به اسم ir.pyabr.barge.pa که در آدرس https://mirror.pyabr.ir/zayanderoad قرار دارد به این شکل آدرس دهی کنیم:

paye add https://mirror.pyabr.ir/zayanderoad  ir.pyabr.barge

حذف مخزن

حذف یک مخزن
حذف یک مخزن

با این کار دیگر بسته ir.pyabr.barge در مخزن نیست که بتوانید آن را نصب نمایید:

paye del ir.pyabr.barge

بروزرسانی مخازن

بروزرسانی مخازن
بروزرسانی مخازن

مخازن رسمی پای ابر به صورت پویا ارائه می شوند و الگوی پیش فرض برای نصب و بروزرسانی بسته ها می باشد که تحت نام ir.pyabr.updates است:

paye in ir.pyabr.updates

بروزرسانی کل بسته ها

بروزرسانی بسته ها
بروزرسانی بسته ها

با این کار تمام بسته های نصب شده در پای ابر شما برسی و بروزرسانی می شوند؛ همچنین مخازن هم با این دستور بروزرسانی می شوند.

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.