وبلاگ علی حسین زاده

صفحه شخصی علی حسین زاده در برگیرنده یادداشت‌هایی در رابطه با سیستم‌عامل لینوکس، مدیریت، و...
alihzadeh.blog.ir Weblog Logo

وبلاگ علی حسین زاده

صفحه شخصی علی حسین زاده در برگیرنده یادداشت‌هایی در رابطه با سیستم‌عامل لینوکس، مدیریت، و...

وبلاگ علی حسین زاده

علی حسین زاده هستم؛ در این وبلاگ در مورد علائق و عقایدم می‌نویسم. گاهی هم مطالبی را که برایم جذابند را در اینجا قرار می‌دهم تا بهتر در دسترسم باشند.
»»» باز نشر مطالب با ذکر «وبلاگ علی حسین زاده» و درج لینک به همان مطلب آزاد است مگر اینکه به گونه‌ای دیگر در پائین متن ذکر شده باشد.
»»» لطفا توجه داشته باشید که من نمی‌توانم به پیام‌های خصوصی پاسخ دهم.

آخرین نظرات

مطابق اعلام کنونیکال، مدیر بسته‌های تمام نسخه‌های توزیع لینوکسی اوبونتو به مدیر بسته جدیدی به نام اسنپی (Snappy) تغییر خواهد کرد.

پیش از این، اسنپی در اوبونتو پایه (Ubuntu Core) که نسخه‌ای مینیمال از لینوکس اوبونتو برای استفاده در فضای ابری، ابزارهای همراه، و سیستم‌های توکار یا نهفته (Embeded Systems) می‌باشد ارائه شده بود.

بر اساس برنامه‌ریزی صورت گرفته، گام بعدی در این مسیر ارائه اسنپی در نسخه آزمایشی اوبونتو دسکتاپ موسوم به نکست* است. نکست یک نسخه خاص از اوبونتو است که به عنوان محلی برای آزمون تکنولوژی‌های جدید پیش از عرضه آنها بر روی نسخه پایدار توزیع گنو لینوکس اوبونتو مورد استفاده قرار می‌گیرد. هم‌اکنون برای مثال یونیتی ۸، میر و... در اوبونتو نکست در حال تست هستند.

لوگوی اوبونتو

مدیر بسته نرم‌افزاری چیست؟

پیش از آنکه وظیفه مدیر بسته تشریح شود ابتدا باید مفهوم بسته نرم‌افزاری توضیح داده شود:

نرم‌افزارهایی که همراه با توزیع‌های گنو لینوکسی مانند دبیان ارائه می‌شوند، معمولا در بسته‌هایی قرار دارند که حاوی مجموعه‌ای از برنامه‌ها، اسکریپت‌ها و فایل‌های کمکی مثل فایل‌های فراداده (Metadata)، چک‌سام، لیست وابستگی‌های نرم‌افزار و... است. یکی از بزرگترین مسائل در نصب نرم‌افزار بر روی انواع سیستم‌عامل‌ها مسئله وابستگی‌هاست. گاهی یک برنامه برای نصب و اجرای موفقیت‌آمیز نیازمند وجود یا نصب یک کتابخانه یا برنامه دیگری روی رایانه کاربر است که به این بسته‌های پیش‌نیاز، وابستگی‌های نرم‌افزاری یا Dependencies گویند.

سامانه مدیریت بسته** به مجموعه ابزارهایی گفته می‌شود که برای نصب، بروزرسانی، پیکربندی و یا حذف یک بسته نرم‌افزاری در سیستم‌عامل استفاده می‌شود. در حال حاضر لینوکس اوبونتو از APT (ابزار بسته‌بندی پیشرفته***) و dpkg که از توزیع مادر خود یعنی دبیان به ارث برده است برای مدیریت بسته‌ها استفاده می‌کند.

وقتی کاربر شروع به نصب یک نرم‌افزار می‌کند (که ممکن است فهرستی طولانی از وابستگی‌ها را نیز داشته باشد)، مدیر بسته APT مشکل تشخیص، یافتن و نصب نرم‌افزارهای پیش‌نیاز یا همان وابستگی‌ها را از دوش کاربر برداشته و خود به مدیریت آن می‌پردازد. در کنار این وظیفه مهم، APT مدیریت مخازن نرم‌افزار قابل دسترسی را نیز در سیستم‌عامل بر عهده دارد.

اسنپی رویکرد بسیار متفاوتی برای مدیریت بسته‌ها دارد. و این بدان معناست که توسعه‌دهندگان باید تمام بسته‌های موجود توزیع گنو لینوکس دبیان را با بسته‌های اسنپی جایگزین کنند. مسلم است این کار بسیار طاقت‌فرساست و هزاران بسته باید تغییر یابند بنابراین تا زمانی که اسنپی رایج گردد باید صبور بود.

تغییرات و بهبودهای اسنپی (Snappy) نسبت به APT

همانگونه که گفته شد اسنپی نوع جدیدی از مدیریت بسته با رویکرد متفاوت به امنیت، محتوای بسته‌ها و البته بروزرسانی آنهاست. در اصل اسنپی برای عملکرد بهتر روی دستکاه‌های همراه طراحی شده است اما طیفی از مزایا برای دیگر کاربران نیز برای ارائه دارد. آنچه که اسنپی را نسبت به مدیر بسته کنونی متفاوت می‌کند عبارتست از:

  • تفکیک کدهای نرم‌افزار از داده‌های کاربر: اسنپی فایل‌های کاربر نظیر تنظیمات و شخصی‌سازی‌ها و سایر داده‌های کاربر را از کدهای نرم‌افزار جدا می‌کند. همچنین کدهای نرم‌افزار (application code) برای اطمینان از پایداری سیستم تنها خواندنی (Read Only) خواهند بود. این کارها باعث جلوگیری از دستکاری و نهایتا اطمینان بیشتر در فرآیند بروزرسانی می‌گردد.

  • حفاظت از داده‌های کاربر: داده‌های کاربر هنگام بروزرسانی یا انجام سایر تغییرات بر روی بسته‌ها به صورت خودکار پشتیبان‌گیری می‌شوند. اینکار باعث کاهش ریسک از دست دادن اطلاعات کاربر می‌گردد.

  • بسته‌های اتمی: بسته‌های اسنپی خودکفا (self-contained) هستند. تمام وابستگی‌های یک نرم‌افزار همراه با هم در یک بسته یکتا قرار داده شده و عرضه می‌شوند. این در حالیست که با استفاده از APT، نصب یک بسته اغلب به نصب چندین بسته مربوط به وابستگی‌های آن نیاز دارد و اسنپی پایانی بر این رویه خواهد بود. بسته‌های اتمی باعث خودکفایی بسته‌ها و نهایتا پایداری بیشتر آنها خواهد شد. اما این مزیت مهم هزینه‌ای هم دارد و آن بوجود آمدن محتوای تکراری بین بسته‌ها و اشغال فضای ذخیره‌سازی بیشتر است.

  • بروزرسانی‌های کوچک‌تر: اسنپی از سیستم بروزرسانی دلتا استفاده می‌نماید. یعنی زمانی که یک بسته قرار است بروزرسانی شود، اسنپی تنها بخش‌هایی از آن را که تغییر کرده‌اند دانلود خواهد کرد؛ در نتیجه بروزرسانی‌ها بسیار کوچک‌تر خواهند شد. این قابلیت برای ابزارهای همراه که محدودیت پهنای باند و حجم انتقال داده دارند حیاتی است ضمن اینکه برای سایر کاربران نیز بسیار مفید خواهد بود.

  • پایداری: اصلی‌ترین عاملی که باعث اخلال در کار نرم‌افزارها می‌شود تغییر در کد است. گاهی تغییر تنها در کد خود نرم‌افزار روی می‌دهد، اما اغلب، تغییر روی سایر کدهایی که نرم‌افزار به آنها وابستگی دارد مانند کتابخانه‌ها رخ می‌دهد. پیش می‌آید که نرم‌افزار بعد از آپدیت یک وابستگی یا کتابخانه از کار باز می‌ایستد. اما اسنپی به دلیل آنکه تمام وابستگی‌ها را به همراه نرم‌افزار ارائه می‌دهد، و بنابراین همیشه هماهنگی لازم بین آنها وجود دارد نرم‌افزارها را از ایجاد تغییرات ناسازگار مصون می‌کند.

  • بهبود امنیت: اسنپی امنیت را با بکارگیری دو قابلیت جدید با نام‌های امضاهای دیجیتال و AppArmor بهبود می‌دهد. امضای دیجیتال تضمین می‌کند که بسته‌ای که در حال نصب است از توسعه دهنده اصلی آن و بدون تغییر و دستکاری دریافت شده است؛ این قابلیت در برابر بدافزارها از سیستم محافظت می‌کند زیرا اگر فایل‌های مخرب به بسته اضافه شوند، امضای آن باطل خواهد شد. AppArmor برای دسترسی نرم‌افزارها به سیستم کابر و ایجاد تغییرات در آن محدودیت تعیین می‌کند؛ هدف AppArmor پیشگیری از آسیب و یا دسترسی به اطلاعات امن سیستم است.

  • نرم‌افزارهای بروزتر: هم‌اکنون اغلب نرم‌افزارهای موجود در مخازن اوبونتو و دبیان قدیمی‌تر از آخرین نسخه موجود از آن نرم‌افزار هستند. به همین خاطر گاهی کاربران برای داشتن آخرین نسخه از نرم‌افزار مورد نظر خود مجبور به استفاده از PPAها هستند که خود معضلی امنیتی برای سیستم ایجاد می‌کنند. با ظهور اسنپی، دیگر نیازی به PPAها نخواهد بود زیرا نرم‌افزارها دیگر به سیستم‌عامل و وابستگی‌های جداگانه مرتبط نبوده و خودکفا هستند و این خود باعث افزایش امنیت، بروزتر بودن نرم‌افزارها و کنترل بیشتر توسعه‌دهندگان بر روی هم سیستم‌عامل و هم نرم‌افزار خواهد شد.

وعده‌هایی نظیر حجم آپدیت‌های کوچک‌تر، امنیت بالاتر، و پایداری بیشتر مطمئنا جذاب هستند. اوبونتو سرانجام به مدیریت بسته جدید Snappy مهاجرت خواهد کرد و همزمان احتمالا برای دوره محدودی به پشتیبانی از مدیر بسته فعلی نیز ادامه خواهد داد. تا آن زمان، اسنپی بر روی اوبونتو نکست کاملا آزمون خواهد شد بنابراین می‌توان به تغییر آرام و بی دردسر به سمت این مدیر بسته امیدوار بود.

 

* Ubuntu Desktop Next

** Package Management System

*** Advanced Packaging Tool

 

منابع: + + + + +

لینک دائمی و کوتاه به این مطلب: http://alihzadeh.blog.ir/post/227

باز نشر مطالب با ذکر «وبلاگ علی حسین زاده» و درج لینک به همان مطلب، آزاد است.


خبرخوان (RSS) وبلاگ   

سایر مطالب:

اگر از کاربران خبرخوان آنلاین Inoreader هستید می‌توانید با عضویت در کانال
Ali H Zadeh مطالب این وبلاگ را به همراه سایر مطالب برگزیده در وب، دنبال نمائید.

لینکستان در خبرخوان inoreader

نظرات  (۲)

  • سعید زرین فام
  • مطلب بسیار مفیدی بود. فعلا 14.04 خیلی stable و خوب داره برام کار می کنه حالا تا آینده چه شود.
    تشکر.
    سلام 
    وبلاگ زیبایی دارری
    به وب ما هم سر بزن.
    برای یاد گیری برنامه نویسی لینوکس باید چیکار کرد؟از کجا شروع کرد؟
    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی