امروز می خواهیم مدیر بسته YUM و RPM را که مخصوص خانواده ردهت (RedHat) می باشد را معرفی کنیم. در پست قبل “استفاده از مدیر بسته دبیان” هم درباره خانواده دبیان صحبت کردیم و هم توضیحاتی درباره تمام انواع پکیج ها دادیم، پس بهتر است قبل از این که این پست را بخوانید سری به پست قبل نیز بزنید زیرا موارد مشابه زیادی دارند.

لوگوی شرکت ردهت | استفاده از مدیر بسته YUM و RPM

لوگوی شرکت ردهت | استفاده از مدیر بسته YUM و RPM

اول یه توضیح درباره خود ردهت بدیم، رد هت (Red Hat) یک شرکت آمریکایی نرم‌افزار متن باز و سازنده مهم توزیع لینوکس است، که در سال 1993 در رالی، کارولینای شمالی تأسیس شده‌است. این شرکت پشتیبان توزیع‌های لینوکس، Red Hat Enterprise Linux و فدورا می‌باشد. لینوکس رد هت هم توسط این شرکت ایجاد شده‌است. این شرکت با نام رد هت اینکوپریشن در بورس نیویورک به فروش سهام خود مشغول است.

در اوایل سال 1991، باب یانگ نرم‌افزار آزاد و یونیکس را به مدیران سیستم حاضر در نیویورک معرفی کرد. پس از آن، او در سال 1993 شرکت ای‌سی‌سی اینکوپریشن را راه‌اندازی کرد که به فروش نرم‌افزارهای لینوکس و یونیکس و مجله‌های مربوط به آن‌ها می‌پرداخت. مارک ارویگ در اکتبر 1994 نسخه‌ای از لینوکس خود را با نام ردهت عرضه کرد که به «انتشار هالوین» معروف است. در سال 1995، یانگ لینوکس ارویگ را خریداری و با شرکت خود ادغام کرد و سپس نام شرکت را به ردهت تغییر داد. ارویگ و یانگ در همان سال، نسخهٔ 2 لینوکس ردهت را منتشر کردند که برای اولین بار شامل سیستم مدیریت بسته‌های آرپی‌ام (RPM) بود. این شرکت تاکنون به پیشرفت و گسترش سیستم‌های لینوکس کمک کرده‌است.

درحال حاضر به دلیل رایگان بودن سِنت او. اِس. (CentOS) خیلی از افراد از آن استفاده می کنند زیرا یک نسخه رایگان از Red Hat می باشد و تقریبا تمام ویژگی های آن را نیز دارد.

مدیر بسته YUM و RPM

آموزش نصب فایل rpm

مانند سناریو قبل ما باز کار خود را روی نرم افزار bzr انجام می دهیم، فرمت rpm مخصوص فایل های ردهتی و خانواده آن است، برای مثال ما فایل bzr-2.6.0-2.fc20.x86_64.rpm را دانلود کرده ایم و با دستور زیر میتوانیم آن را نصب کنیم:

ولی به ما ارور زیر را می دهد:

دلیل این پیغام این است که نیاز به کتابخانه python-paramiko دارد و شما باید اول python-paramiko را نصب کنید و سپس bzr-2.6.0-2.fc20.x86_64.rpm  را نصب کنید.

آموزش نصب برنامه با yum

ولی برای این که به مشکل بالا بر نخورید میتونید از مخازن دستور yum استفاده کنید که دقیقا شبیه به apt و apt-get عمل می کند، البته یک فرق کوچک دارد، شما در apt و apt-get اول باید از دستور update استفاده می کردید تا repository های آن بروز شود و سپس دستور نصب را می زدید ولی در yum به این صورت نیست، خود yum به صورت خودکار اول repository ها را برسی و بروز می کنند و سپس شروع به دانلود و نصب می کند.

برای نصب bzr از دستور زیر در yum استفاده می کنیم:

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

همانطور که در متن بالا می بینید به ما گفته برای نصب bzr چند پکیج دیگه هم مانند پایتون و موارد دیگر نصب شده است.

محل repository های yum

دقیقا مثل دیبان در این جا هم ما فایل تنظیمات را داخل etc در /etc/yum.repos.d/ پیدا می کنیم که تمام فایل های این قسمت یک repository می باشند، برای نمونه فایل fedora-updates.repo را باز می کنیم:

و همچنین یک فایل به آدرس /etc/yum.conf/ داریم که تنظیمات خود دستور yum می باشد.

حذف با rpm

برای حذف یک پکیج با دستور rpm کافیه از سوئیچ e- استفاده کنیم:

نکته ای که اینجا داریم برعکس apt نمیتواند dependencies  های آن را شناسایی و حذف کند، یعنی فایل هایی که به واسته نصب آن نصب شده بود را پاک نمی کند دلیل آن هم این است که dependencies ها را در هیچ دیتابیسی ذخیره نمی کند.

آموزش Upgrading با yum

شما با دستور زیر به راحتی می توانید تمام پکیج های خود را بروزرسانی کنید و نکته ای هم که دارد گفتیم برعکس apt نیاز ندارد اول update بزنید و سپس Upgrad کنید:

شما می توانید با دستور زیر بگید تمام پکیج هایی که با z شروع می شود را بروزرسانی کن:

چند نکته در yum:

  • اگر با i- استفاده کنید فقط نصب می کند
  • اگر با U- استفاده کنید هم نصب می کند و هم بروزرسانی
  • اگر با F- استفاده کنید فقط پکیج هایی که نصب هستن را بروزرسانی می کند
  • اگر v- استفاده کنید یعنی توضیحاتی هم به شما نمایش دهد
  • اگر h- استفاده کنید (به معنی هشتگ #) یعنی روند نصب را به شما نمایش دهد

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

دریافت اطلاعات از yum

شما می توانید با دستورات زیر اطلاعاتی درباره پکیج های نصب شده یا نصب نشده پیدا کنید که چند مثال اوردیم.

اگر پکیج نصب شده باشد:

اگر پکیج نصب نشده باشد ولی در مخازن مجود باشد:

همچنین با سوئیچ q- هم اطلاعات مختصری می دهد.

اگر پکیج نصب شده باشد:

اگر پکیج نصب نشده باشد:

برای دیدن اطلاعات پکیج ها به صورت تکمیلی تر هم می توانید از دستور info استفاده کنید:

نمونه پکیج نصب شده:

نمونه پکیج نصب نشده:

جستجو با yum

برای این که با کمک yum جستجو انجام دهید به صورت زیر عمل کنید، yum تمام پکیج هایی که کلمه شما در داخل آن باشد را پیدا و نمایش می دهد:

با دستور زیر اول تمام پکیج های نصب شده را میارد (qa-) و سپس با grep گفتیم هرچی داخلش vim داشت نمایش بده:

و یا با دستور زیر گفتیم پکیج bzr چه فایل هایی را روی سیستم کپی کرده است و به دلیل کمبود جا با head گفتیم چنتای اولش رو نشون بده

و دستور زیر عمل برعکس بالا رو انجام میده، برای مثال میخواهیم بدانیم فایل /usr/bin/bzr را کی کپی کرده است، پس به صورت زیر می نویسیم:

و با دستور زیر نیز به ما می گوید پکیج مورد نظر به چه مواردی نیاز دارد تا اجرا شود:

همچنین با دستور زیر لیست تمام Dependency های یک نرم افزار را می دهد:

همچنین با whatprovides هم میتوان یکسری اطلاعات درباره پکیج مورد نظر هم قبل نصب پیدا کرد:

یکپارچگی

rpm برای این که فایل ها به درستی دانلود شود و امنیت شما رو حفظ کند برای تمام پکیج ها یک امضای دیجیتال قرار می دهد که با K- یا checksig– می توانید آن فایل را برسی کنید که از الگریتم های MD5 و SHA1 استفاده می کند:

دستور V- میاد پکیج رو برسی میکنه اگه اشکالی پیدا کند می گوید فلان فایل اشکال دارد در غیر این صورت هیچ پیغامی نمایش نمی دهد.

اگر bzr نصب باشد و دستور زیر را بزنید و هیچ اشکالی پیدا نکند چیزی نمایش نمی دهد:

حال ما یک فایل را از bzr پاک میکنیم

حال اگر دوباره دستور اول را بزنیم اینبار متوجه می شود که یک فایل حذف شده است:

و برای درست کردن آن نیز باید دوباره bzr را با دستور زیر reinstall کنیم:

 

yum یک ابزار دارد به نام yumdownloader که پکیج مورد نظر ما را فقط دانلود میکند و نصب نمی کند، اگر با سوئیچ resolve– استفاده شود تمام dependencies ها را نیز دانلود می کند:

 

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

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

مدیر بسته دبیان و دیگر توزیع ها | استفاده از مدیر بسته YUM و RPM


دستورات آپدیت لیست پکیج ها | استفاده از مدیر بسته YUM و RPM

دستورات آپدیت لیست پکیج ها | استفاده از مدیر بسته YUM و RPM


دستورات بروزرسانی پکیج های نصب شده | استفاده از مدیر بسته YUM و RPM

دستورات بروزرسانی پکیج های نصب شده | استفاده از مدیر بسته YUM و RPM


دستورات جستجوی پکیج ها | استفاده از مدیر بسته YUM و RPM

دستورات جستجوی پکیج ها | استفاده از مدیر بسته YUM و RPM


دیدن اطلاعات پکیج ها | استفاده از مدیر بسته YUM و RPM

دیدن اطلاعات پکیج ها | استفاده از مدیر بسته YUM و RPM


دستورات نصب پکیج از مخازن | استفاده از مدیر بسته YUM و RPM

دستورات نصب پکیج از مخازن | استفاده از مدیر بسته YUM و RPM


دستورات نصب پکیج از سیستم لوکال | استفاده از مدیر بسته YUM و RPM

دستورات نصب پکیج از سیستم لوکال | استفاده از مدیر بسته YUM و RPM


دستورات حذف پکیج ها و کتابخانه های نصب شده آن | استفاده از مدیر بسته YUM و RPM

دستورات حذف پکیج ها و کتابخانه های نصب شده آن | استفاده از مدیر بسته YUM و RPM