حتما شما نیز از مخزن YUM برای نصب نرم افزار بر روی   سیستم عامل هایی همچون Centos استفاده می کنید. برخی از اوقات ممکن است بخواهید نرم افزاری را از گروهی از رپوزیتوری خاص نصب کنید یا بخواهید همه مخزن(REPOSITORY)را غیر فعال کرده و بسته ای را از یک مخزن واحد نصب نمایید. در این مقاله قصد داریم به همین موضوع بپردازیم.

این آموزش کوتاه، نحوه فعال یا غیر فعال کردن گروه یا یک مورد از مخزن YUM را به خوبی نشان می دهد. این آموزش بر روی سرور CentOS 7 امتحان شده است با اینحال روش یکسانی برای سایر سیستم عامل نیاز خواهد بود.

همانطور که می دانید با استفاده از دستورات زیر به عنوان کاربر Root ،ما می توانیم تعداد مخزن موجود در CentOS را به دست آوریم.

yum repolist

نمونه خروجی:

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* base: mirrors.vinahost.vn

* epel: mirror.rise.ph

* extras: mirrors.viethosting.vn

* remi-safe: rpms.remirepo.net

* updates: mirrors.vinahost.vn

repo id repo name status

base/7/x86_64 CentOS-7 – Base 9,007

epel/x86_64 Extra Packages for Enterprise Linux 7 – x86_64 10,075

extras/7/x86_64 CentOS-7 – Extras 305

remi-safe Safe Remi’s RPM repository for Enterprise Linux 7 – x86_64 820

updates/7/x86_64 CentOS-7 – Updates 1,676

repolist: 21,883

همانطور که در خروجی بالا مشاهده می کنید، دو مخزن اضافی با نام EPEL و REMI ایجاد شده است. زمانی که دستور yum update را اجرا می کنید، مخزن نیز به روز خواهد شد. بنابراین،بسته های موجود نیز به آخرین نسخه های موجود به روز خواهد شد. برخی از اوقات، ممکن است نخواهید آخرین نسخه از بسته های موجود را نصب کنید. در چنین شرایطی می توانید مخزن خاصی را مستثنی کنید. در این حالت بسته مورد نظری که در مخزن قرار دارد ارتقا نخواهد یافت. این موضوع زمانی مفید خواهد بود که نرم افزار نیاز به نسخه خاصی از یک بسته داشته باشد. به دو روش می توان مخزن را فعال یا غیر فعال کرد:

  • فعال یا غیر فعال کردن مخزن به هنگام نصب بسته با دستور YUM
  • فعال یا غیر فعال کردن دائمی مخزن با استفاده از فایل پیکربندی مخزن
  • فعال یا غیر فعال کردن موقتی رپوزیتوری:

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

    yum –disablerepo=remi-safe update

    یا

    yum update –disablerepo=remi-safe

    دستور بالا به طور موقت رپوزیتوری REMI را غیر فعال می کند . برای غیر فعال کردن مخزن متعدد؛ می توانید مخزن را با علامت کاما از هم جدا کنید:

    yum –disablerepo=remi-safe,updates update

    این دستور می تواند مخزن RMI و به روزرسانی های آن را به طور موقت غیر فعال کند.

    شما می توانید از این روش برای نصب بسته نیز استفاده کنید.

    yum –disablerepo=remi-safe,updates install httpd

    deepin-terminal_002

    خروجی نمونه:

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

    yum –disablerepo=* –enablerepo=epel update

    خروجی نمونه:

    Loaded plugins: fastestmirror

    Loading mirror speeds from cached hostfile

    * epel: mirror.pregi.net

    No packages marked for update

    دستور بالا همه مخزن ها به جز مخزن ‘epel’ را غیر فعال می کند.

    فعال یا غیر فعال کردن دائمی مخزن:

    این روش به طور دائمی مخزن را فعال یا غیر فعال می کند. معمولا، فایل پیکربندی مخزن در دایرکتوری/etc/yum.repos.d/ ذخیره می شود. با استفاده از دستور زیر می توانید مخزن موجود را مشاهده کنید.

    ls /etc/yum.repos.d/

    خروجی نمونه:

    CentOS-Base.repo CentOS-Media.repo epel-testing.repo

    CentOS-CR.repo CentOS-Sources.repo remi-php70.repo

    CentOS-Debuginfo.repo CentOS-Vault.repo remi.repo

    CentOS-fasttrack.repo epel.repo remi-safe.repo

    فرض کنید می خواهیم مخزن EPEL را غیر فعال کنیم. برای اینکار باید فایل مخزن EPEL را ویرایش کنیم:

    vi /etc/yum.repos.d/epel.repo

    مقدار enabled=1 را به صفر تغییر دهید.

    [epel]

    name=Extra Packages for Enterprise Linux 7 – $basearch

    #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch

    mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

    failovermethod=priority

    enabled=0

    gpgcheck=1

    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

    deepin-terminal_004

    حالا فایل را ذخیره کرده و ببندید. برای اینکه تغییرات ایجاد شده را مشاهده کنید باید آن را به روزرسانی نمایید.

    yum repolist

    اگر می خواهید مخزن را فعال کنید باید مقدار ‘enabled’ را به ۱ تغییر دهید.

    خوب همانطور که مشاهده کردید، فعال یا غیر فعال کردن مخزن کار بسیار اسانی است. امیدوارم از این آموزش لذت برده باشید.

    منبع

    برچسب هاچگونه رپوزیتوری را در سیستم عامل CentOS فعال یا غیر فعال کنیم؟ رپوزیتوری سیستم عامل مخزن