GNU/Linux >> Znalost Linux >  >> Linux

Jak vyloučit konkrétní úložiště pro aktualizaci Yum v CentOS / Red Hat

Otázka:V systému mám několik úložišť yum. Například centos, epel, docker, mongo atd. Když spustím příkaz yum update, aktualizují se nainstalované balíčky ze všech úložišť. Jak mohu vyloučit konkrétní úložiště během aktualizace yum?

Odpověď:Chcete-li během aktualizace yum vyloučit balíčky, které patří do konkrétního úložiště, použijte kteroukoli ze dvou metod vysvětlených v tomto tutoriálu.

Mějte také na paměti, že namísto vyloučení celého úložiště může také vyloučit konkrétní balíček:10 Yum Exclude Příklady pro přeskočení balíčků pro Linux Yum Update (How to Yum Exclude Kernel Updates)

1. Získat seznam úložiště

Chcete-li zobrazit všechna dostupná úložiště ve vašem systému, spusťte yum repolist, jak je uvedeno níže.

# yum repolist
repo id                repo name              status
base                   CentOS-6 - Base        6,575
extras                 CentOS-6 - Extras         62
updates                CentOS-6 - Updates     1,622
dockerrepo             Docker Repository          2
mongodb-org-3.0        MongoDB Repository        75
repolist: 8,336

Ve výše uvedeném příkladu máme následující:

  • První tři výše uvedená úložiště jsou hlavní úložiště CentOS:základní, extra a aktualizace
  • dockerrepo je úložiště třetí strany, které obsahuje balíčky související s kontejnerem Docker
  • mongodb-org-3.0 je úložiště třetí strany, které obsahuje balíčky související s MongoDB.

Když provedete aktualizaci yum, jak je uvedeno níže, upgraduje všechny balíčky, které jsou již nainstalovány ve vašem systému, na nejnovější verzi dostupnou ze všech výše uvedených úložišť.

yum update

Pokud již máte na svém systému nainstalovaný mongodb a když provedete výše uvedenou „yum aktualizaci“, upgraduje také balíčky mongodb na nejnovější verzi.

Pokud nechcete upgradovat mongodb, když provádíte „yum update“, měli byste to vyloučit během aktualizace yum, jak je vysvětleno v následující sekci.

Také, pokud chcete vědět, ke kterému repozitáři patří konkrétní balíček, abyste mohli toto úložiště vyloučit z upgradu, použijte příkaz yum info, jak je ukázáno níže.

yum info package-name | grep -i repo

Pokud jste novým příkazem yum:15 příkladů příkazu yum pro Linux – instalace, odinstalace, aktualizace balíčků

2. Vyloučit úložiště z aktualizace Yum (metoda 1)

Spolu s aktualizací yum můžete použít volbu –disablerepo=název-úložiště. Toto neaktualizuje balíčky, které patří k danému názvu úložiště.

V následujícím příkladu aktualizace yum upgraduje všechny nainstalované balíčky kromě všech nainstalovaných balíčků, které patří do úložiště MongoDB.

yum --disablerepo=mongodb-org-3.0 update

Můžete také zadat volbu –disablerepo na konci po aktualizaci yum. Následující vyloučí balíčky, které patří do úložiště Docker během aktualizace yum.

yum update --disablerepo=dockerrepo

Přesný název úložiště, který chcete vyloučit, můžete získat pohledem na 1. sloupec výstupu příkazu „yum repolist“.

3. Vyloučit úložiště z aktualizace Yum pomocí povoleného parametru (metoda 2)

Namísto vyloučení konkrétního úložiště z příkazového řádku aktualizace yum můžete trvale vyloučit balíček z aktualizace yum nastavením parametru enabled na 0 v konfiguračním souboru úložiště.

Konfigurační soubory úložiště jsou umístěny v adresáři /etc/yum.repos.d, jak je uvedeno níže.

# ls -l /etc/yum.repos.d/
-rw-r--r--. 1 root root 1926 Jan 30  2016 CentOS-Base.repo
-rw-r--r--  1 root root  166 Feb 18  2016 docker.repo
-rw-r--r--  1 root root  142 Feb  5  2016 mongodb-org-3.0.repo
..
..

Chcete-li vyloučit úložiště mongodb, otevřete soubor úložiště mongodb a nastavte změnit hodnotu enabled na 0, jak je uvedeno níže.

# vi /etc/yum.repos.d/mongodb-org-3.0.repo 
[mongodb-org-3.0]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=0

Nyní, když uděláte yum repolist, ve výstupu neuvidíte úložiště MongoDB.

# yum repolist
repo id           repo name              status
base              CentOS-6 - Base        6,575
extras            CentOS-6 - Extras         62
updates           CentOS-6 - Updates     1,622
dockerrepo        Docker Repository          2
repolist: 8,261

To také znamená, že i když máte na svém systému nainstalované balíčky související s mongodb, když provedete následující „yum update“, balíčky mongodb již nebudou upgradovány.

yum update

4. Vyloučit více úložišť z příkazového řádku aktualizace Yum

Během aktualizace yum můžete také vyloučit více úložišť zadáním úložišť oddělených čárkou, jak je uvedeno níže.

Následující příklad vyloučí úložiště MongoDB, Docker a EPEL během aktualizace yum.

yum update --disablerepo=mongodb-org-3.0,dockerrepo,epel

5. Povolte úložiště pro aktualizaci Yum

Pokud jste deaktivovali úložiště nastavením „enabled=0“ v konfiguračním souboru úložiště, stále to můžete zahrnout během aktualizace „yum“ pomocí možnosti –enablerepo, jak je uvedeno níže.

Následující příklad bude zahrnovat balíčky z úložiště MongoDB během „yum update“, i když je toto úložiště zakázáno v souboru úložiště v adresáři /etc/yum.repos.d/.

yum update --enablerepo=mongodb-org-3.0

6. Kombinujte EnableRepo a DisableRepo v Yum Update

Kreativitu můžete získat také kombinací možnosti enablerepo a disablerepo.

Například následující příkaz yum update upgraduje pouze balíčky z úložiště MongoDB.

yum update --disablerepo=* --enablerepo=mongodb-org-3.0

Ve výše uvedeném:

  • –disablerepo=* To znamená, že všechna úložiště by měla být nejprve deaktivována a neměla by být zvažována aktualizace yum
  • –enablerepo=mongo To znamená, že během aktualizace yum by se mělo brát v úvahu pouze úložiště MongoDB (v kombinaci s výše uvedenou možností deaktivace)

Linux
  1. Jak vytvořit místní úložiště Red Hat

  2. Jak přidat úložiště Yum

  3. Jak zrcadlit úložiště v Linuxu

  1. Jak se připravit na certifikační zkoušky správce systému Linux

  2. Jak získat zdarma Red Hat Enterprise Linux?

  3. Jak vyčistit mezipaměť yum na CentOS?

  1. Jak vytvořit úložiště Yum pro instalaci systémových balíčků v CentOS/RHEL

  2. Jak vytvořit úložiště yum v CentOS/RHEL

  3. Red Hat / CentOS :Jak vytvořit propojení / propojení NIC