4 leiðir til að slökkva á/læsa ákveðnum pakkauppfærslum með Yum Command
Package Manager er hugbúnaður sem gerir notanda kleift að setja upp nýjan hugbúnað, uppfæra kerfi eða uppfæra sérstakan hugbúnað og þess háttar hluti. Ef um er að ræða Linux-undirstaða kerfi þar sem einn hugbúnaður hefur mikið af ósjálfstæði sem þarf að vera til staðar á kerfinu fyrir fullkomna uppsetningu á þeim hugbúnaði, verður slíkur hugbúnaður eins og pakkastjóri mjög þörf tæki á hverju kerfi.
Hver Linux dreifing er með sjálfgefna pakkastjórann fyrir ofangreinda virkni, en af öllum þessum sem mest fundust eru: jamm á RHEL og Fedora kerfum (þar sem nú er verið að skipta um það fyrir DNF frá Fedora 22+ og áfram) og viðeigandi frá Debian.
Ef þú ert að leita að APT tóli til að loka fyrir eða slökkva á ákveðnum sérstökum pakkauppfærslum, þá ættirðu að lesa þessa grein.
Dnf eða Danified yum kemur í stað yum á Fedora kerfum sem er annað á listanum okkar. Ef þeir eru skoðaðir rétt er hægt að nota þessa pakkastjóra fyrir eftirfarandi virkni:
- Setur upp nýjan hugbúnað úr geymslunni.
- Leystu ósjálfstæði hugbúnaðarins með því að setja þau upp áður en hugbúnaðurinn er settur upp.
- Viðhalda gagnagrunni yfir ósjálfstæði hvers hugbúnaðar.
- Niðurfærðu útgáfu hvers hugbúnaðar sem fyrir er.
- Uppfærsla á kjarnaútgáfunni.
- Skrápakkar í boði fyrir uppsetningu.
Við höfum þegar fjallað um nákvæmar greinar sérstaklega um hvern einstakan pakkastjóra með hagnýtum dæmum, þú ættir að lesa þær til að stjórna og stjórna pakkastjórnun í viðkomandi Linux dreifingu.
Lestu líka:
- Takaðu þér Yum Command með þessum 20 hagnýtu dæmum
- 27 DNF skipanir til að stjórna pakka í Fedora 22+ útgáfum
- Lærðu 25 APT skipanir til að stjórna Ubuntu pakka
Í greininni munum við sjá hvernig á að læsa/slökkva á ákveðnum pakkauppfærslum með Yum pakkastjóra í RHEL/CentOS og Fedora kerfum (á við þar til Fedora 21, síðar er nýrri Fedora útgáfa send með dnf sem sjálfgefinn pakkastjóra).
Slökktu á/læstu pakkauppfærslum með Yum
Yellow dog Updater, Modified (nammi) er pakkastjórnunartæki í RedHat byggðum dreifingum eins og CentOS og Fedora. Fjallað er um ýmsar aðferðir sem notaðar eru til að læsa/slökkva á pakkauppfærslum með Yum:
1. Opnaðu og breyttu yum.conf
skránni, sem er staðsett í /etc/yum.conf eða í /etc/yum/yum.conf.
Það lítur út eins og hér að neðan:
[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 ...
Hér, til að útiloka ákveðinn pakka frá uppsetningu eða uppfærslu, þarftu bara að bæta við útilokunarbreytu ásamt nafni pakkans sem þú vilt útiloka. Til dæmis, ef ég vil útiloka alla python-3
pakkana frá því að verða uppfærðir, þá mun ég bara bæta eftirfarandi línu við yum.conf
:
exclude=python-3*
Til að útiloka fleiri en einn pakka skaltu bara aðskilja nöfn þeirra með bili.
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] ...
Athugið: til að hafa þessa pakka með, hunsa færslur í yum.conf
, notaðu \-disableexcludes og stilltu það á all|main|repoid, þar sem 'main' eru þau sem færð eru inn í yum.conf og ' repoid' eru þeir sem útilokun er tilgreind í repos.d skránni, eins og útskýrt er síðar.
Nú skulum við reyna að setja upp eða uppfæra tilgreinda pakka og sjá að yum skipunin mun slökkva á uppsetningu eða uppfærslu þeirra.
# 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. Hér að ofan var varanleg lausn til að útiloka pakka þar sem sá pakki verður ekki uppfærður nema skránni sé breytt. Hér er bráðabirgðalausn fyrir þetta líka. Á sama tíma og þú ferð í einhverja uppfærslu, notaðu -x
rofann í yum skipuninni til að útiloka pakka sem þú vilt ekki uppfæra, eins og:
# yum -x python-3 update
Skipunin hér að ofan mun uppfæra alla pakka sem uppfærslur eru tiltækar, að undanskildum python-3
á kerfinu þínu.
Hér, til að útiloka marga pakka, notaðu -x
mörgum sinnum, eða aðskildu pakkanöfnum með ,
í einum rofa.
# yum -x httpd -x php update OR # yum -x httpd,php update
3. Notkun --exclude
rofi virkar eins og -x, þarf bara að skipta út -x fyrir –exclude og senda ,
aðskilinn lista yfir pakkanöfn til hans.
# yum --exclude httpd,php
4. Fyrir hvaða pakka sem er settur upp frá hvaða utanaðkomandi uppruna sem er með því að bæta við geymslu, þá er önnur leið til að stöðva uppfærslu hans í framtíðinni. Þetta er hægt að gera með því að breyta .repo
skránni sem er búin til í /etc/yum/repos.d/ eða /etc/yum.repos.d möppunni.
Bættu við útilokunarvalkostinum með pakkanafninu í endurhverfunni. Eins og: til að útiloka hvaða pakka sem er, segðu vín frá epel repo, bættu eftirfarandi línu við í epel.repo
skránni:
[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
Reyndu nú að uppfæra vínpakkann, þú munt fá villu eins og sýnt er hér að neðan:
# 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. Önnur leið í yum til að fela útgáfu hvers pakka þannig að hann sé ófáanlegur fyrir uppfærslu, er að nota versionlock
valmöguleikann yum, en til að gera þetta verður þú að yum-plugin-versionlock pakkann uppsett á kerfinu.
# yum -y install yum-versionlock
Til dæmis, til að læsa útgáfu pakkans, segðu bara httpd í 2.4.6, skrifaðu bara eftirfarandi skipun sem rót.
# yum versionlock add httpd
Loaded plugins: fastestmirror, langpacks, versionlock Adding versionlock on: 0:httpd-2.4.6-40.el7.centos versionlock added: 1
Til að skoða læsta pakka, notaðu eftirfarandi skipun til að skrá pakka sem hafa verið læstir útgáfa.
# yum versionlock list httpd
Loaded plugins: fastestmirror, langpacks, versionlock 0:httpd-2.4.6-40.el7.centos.* versionlock list done
Niðurstaða
Þetta eru nokkur ráð sem hjálpa þér að slökkva á/læsa pakkauppfærslum með því að nota yum pakkastjóra. Ef þú hefur einhverjar aðrar brellur til að gera sömu hlutina geturðu skrifað athugasemdir við okkur.