4 Weeër fir verschidde Packageupdates auszeschalten/ze spären mam Yum Command


Package Manager ass Software déi e Benotzer erlaabt am Fall vun der Installatioun vun neier Software, Upgradatioun vum System, oder Update vun enger spezifescher Software an esou Aarte vu Saachen. Am Fall vu Linux baséiert Systemer, wou eng Software vill Ofhängegkeeten huet, déi erfuerderlech sinn um System präsent ze sinn fir eng komplett Installatioun vun där Software, sou Software wéi Package Manager ginn e vill gebraucht Tool op all System.

All Linux Distribution verschéckt mat sengem Standard Package Manager fir uewe genannte Funktionalitéiten, awer vun all deenen am meeschte fonnt sinn: Yum op RHEL a Fedora Systemer (wou et am Moment duerch DNF vun Fedora 22+ ersat gëtt) an apt vun Debian.

Wann Dir no engem APT-Tool sicht fir gewësse spezifesch Packageupdates ze blockéieren oder auszeschalten, da sollt Dir dësen Artikel liesen.

Dnf oder Danified yum ersetzt Yum op Fedora Systemer wat en aneren op eiser Lëscht ass. Wann richteg exploréiert, kënnen dës Package Manager fir folgend Funktionalitéite benotzt ginn:

  1. Nei Software aus dem Repository installéieren.
  2. Léist Ofhängegkeete vun der Software andeems Dir dës Ofhängegkeeten installéiert ier Dir d'Software installéiert.
  3. Datebank vun Ofhängegkeete vun all Software erhalen.
  4. Downgrade Versioun vun all bestehend Software.
  5. Upgrade vun der Kernel Versioun.
  6. Lëscht Pakete verfügbar fir Installatioun.

Mir hu scho detailléiert Artikelen getrennt iwwer all eenzel Package Manager mat praktesche Beispiller ofgedeckt, Dir sollt se liesen fir ze kontrolléieren a Manager Package Management an Äre jeweilege Linux Verdeelungen.

Liest och:

  1. Master Yum Command mat dësen 20 praktesche Beispiller
  2. 27 DNF Kommandoen fir Packagen a Fedora 22+ Versiounen ze managen
  3. Léiert 25 APT Kommandoen fir Ubuntu Packagen ze managen

Am Artikel wäerte mir kucken wéi Dir verschidde Packageupdates mat Yum Package Manager an RHEL/CentOS a Fedora Systemer spären/auszeschalten (applicabel bis Fedora 21, spéider méi nei Fedora Versioun verschéckt mat dnf als Standard Package Manager).

Desaktivéiere/Spär Package Updates mat Yum

Yellow Dog Updater, Modifizéiert (yum) ass Package Management Tool a RedHat baséiert Verdeelungen wéi CentOS a Fedora. Verschidde Strategien benotzt fir Package Updates mat Yum ze spären/auszeschalten ginn hei ënnen diskutéiert:

1. Öffnen an änneren d'Datei yum.conf, déi an /etc/yum.conf oder an /etc/yum/yum.conf läit.

Et gesäit aus wéi hei drënner:

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
...

Hei, fir e bestëmmte Package aus der Installatioun oder der Upgradatioun auszeschléissen, musst Dir just ausgeschloss Variabel zesumme mam Numm vum Package addéieren deen Dir wëllt ausschléissen. Zum Beispill, wann ech all python-3 Packagen ausschléisse wëll fir d'Aktualiséierung auszeschléissen, dann addéieren ech just déi folgend Zeil op yum.conf:

exclude=python-3*

Fir méi wéi ee Package auszeschléissen, trennt just hir Nimm duerch Raum.

exclude=httpd php 
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
exclude=python-3*        [Exclude Single Package]
exclude=httpd php        [Exclude Multiple Packages]
...

Notiz: fir dës Pakete matzebezéien, ignoréiert Entréen an yum.conf, benotzt \-disableexcludes a setze se op all|main|repoid, wou 'main' déi sinn, déi an yum.conf a ' repoid' sinn déi deenen hir Ausgrenzung am Repos.d Verzeichnis spezifizéiert ass, wéi spéider erkläert.

Loosst eis elo probéieren déi spezifizéiert Packagen z'installéieren oder ze aktualiséieren a kuckt de yum Kommando deaktivéiert se z'installéieren oder ze aktualiséieren.

# yum install httpd php

Loaded plugins: fastestmirror, langpacks, versionlock
Loading mirror speeds from cached hostfile
 * base: mirror.nbrc.ac.in
 * epel: mirror.wanxp.id
 * extras: mirror.nbrc.ac.in
 * updates: mirror.nbrc.ac.in
Nothing to do
# yum update httpd php

Loaded plugins: fastestmirror, langpacks, versionlock
Loading mirror speeds from cached hostfile
 * base: mirror.nbrc.ac.in
 * epel: mirror.wanxp.id
 * extras: mirror.nbrc.ac.in
 * updates: mirror.nbrc.ac.in
No packages marked for update

2. Uewe war eng permanent Léisung fir e Package auszeschléissen well ausser de Fichier geännert gëtt, gëtt dee Package net aktualiséiert. Hei ass och eng temporär Léisung dofir. Just zu der Zäit wou Dir fir all Update gitt, benotzt -x Schalter am yum Kommando fir de Package auszeschléissen deen Dir net wëllt aktualiséieren, wéi:

# yum -x python-3 update

Deen uewe genannte Kommando wäert all d'Packagen aktualiséieren, deenen hir Updates verfügbar sinn, ausser python-3 op Ärem System.

Hei, fir verschidde Packagen auszeschléissen, benotzt -x e puer Mol, oder trennt Packagenimm mat , an engem eenzege Schalter.

# yum -x httpd -x php update
OR
# yum -x httpd,php update

3. Mat --exclude Schalter funktionnéiert d'selwecht wéi -x, muss just -x duerch -exclude ersetzen an , getrennt Lëscht vu Paketnamen uginn.

# yum --exclude httpd,php

4. Fir all Package installéiert vun enger externer Quell iwwer e Repository ze addéieren, gëtt et en anere Wee fir seng Upgradatioun an Zukunft ze stoppen. Dëst kann gemaach ginn andeems Dir seng .repo Datei ännert, déi am /etc/yum/repos.d/ oder /etc/yum.repos.d Verzeichnis erstallt gëtt.

Füügt d'Exklusiounsoptioun mam Packagenumm an der Repo dobäi. Wéi: fir all Package auszeschléissen, seet Wäin aus Epel Repo, füügt déi folgend Zeil an epel.repo Datei:

[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=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
exclude=wine

Probéiert elo de Wäinpaket ze aktualiséieren, Dir kritt Feeler wéi hei ënnendrënner:

# yum update wine

Loaded plugins: fastestmirror, langpacks, versionlock
epel/x86_64/metalink                                    | 5.6 kB     00:00     
Loading mirror speeds from cached hostfile
 * base: mirror.nbrc.ac.in
 * epel: mirror.wanxp.id
 * extras: mirror.nbrc.ac.in
 * updates: mirror.nbrc.ac.in
No Match for argument: wine
No package wine available.
No packages marked for update

5. Eng aner Manéier am yum fir d'Versioun vun engem Package ze maskéieren, sou datt et net verfügbar ass fir d'Upgradatioun, ass d'versionlock Optioun vun yum ze benotzen, awer fir dëst ze maachen, musst Dir yum-plugin-versionlock Package benotzen op de System installéiert.

# yum -y install yum-versionlock

Zum Beispill, fir d'Versioun vum Package ze spären, soen httpd nëmmen op 2.4.6, schreift just de folgende Kommando als Root.

# yum versionlock add httpd
Loaded plugins: fastestmirror, langpacks, versionlock
Adding versionlock on: 0:httpd-2.4.6-40.el7.centos
versionlock added: 1

Fir gespaarte Packagen ze gesinn, benotzt de folgende Kommando fir d'Packagen ze lëschten déi Versioun gespaart goufen.

# yum versionlock list httpd
Loaded plugins: fastestmirror, langpacks, versionlock
0:httpd-2.4.6-40.el7.centos.*
versionlock list done

Conclusioun

Dëst sinn e puer Tipps, déi Iech hëllefen, Package Updates auszeschalten/ze spären mam Yum Package Manager. Wann Dir aner Tricks hutt fir déiselwecht Saachen ze maachen, kënnt Dir se mat eis kommentéieren.