Hvernig á að setja upp og nota yum-utils til að viðhalda Yum og auka afköst þess


Burtséð frá því að Fedora hafi byrjað að samþykkja yum pakkastjóra til góðs í öðrum spinoff dreifingum (eins og Red Hat Enterprise Linux (RHEL) og CentOS) þar til það hefur reynst jafn áreiðanlegt og yum og traustara (samkvæmt Fedora Project wiki, eins og frá 15. nóvember 2015, dnf er enn í prófunarhæfu ástandi). Þannig mun yum-stjórnunarhæfileikar þínir þjóna þér vel í þó nokkurn tíma.

Af því tilefni munum við í þessari handbók kynna þér yum-utils, safn tóla sem samþættast yum til að auka innfædda eiginleika þess á nokkra vegu og gera það þannig öflugra og auðveldara í notkun.

Að setja upp yum-utils í RHEL/CentOS

Yum-utils er innifalið í grunnafgreiðslunni (sem er sjálfgefið virkt) svo að setja það upp í hvaða Fedora-byggða dreifingu sem er er eins auðvelt og að gera:

# yum update && yum install yum-utils

Öll tólin sem yum-utils veita eru sett upp sjálfkrafa með aðalpakkanum, sem við munum lýsa í næsta kafla.

Kannaðu tól sem yum-utils pakki býður upp á

Verkfærin sem yum-utils býður upp á eru skráð á mannasíðu þess:

# man yum-utils

Hér eru 10 af þessum yum tólum sem við héldum að þú hefðir áhuga á:

debuginfo-install setur upp debuginfo pakkana (og ósjálfstæði þeirra) sem þarf til að villuleita ef um hrun er að ræða eða meðan verið er að þróa forrit sem nota ákveðinn pakka.

Til að kemba pakka (eða önnur keyrslutæki), þurfum við líka að setja upp gdb (GNU villuleitarforritið) og nota það til að ræsa forrit í villuleitarham.

Til dæmis:

# gdb $(which postfix)

Ofangreind skipun mun ræsa gdb skel þar sem við getum slegið inn aðgerðir sem á að framkvæma. Til dæmis, keyra (eins og sýnt er á myndinni hér að neðan) mun ræsa forritið, en bt (ekki sýnt) mun sýna staflasporið (einnig þekkt sem backtrace) forritsins, sem mun gefa upp lista yfir aðgerðarköll sem leiddu til ákveðinn punktur í framkvæmd forritsins (með því að nota þessar upplýsingar geta bæði forritarar og kerfisstjórar fundið út hvað fór úrskeiðis ef hrun varð).

Aðrar tiltækar aðgerðir og væntanlegar niðurstöður þeirra eru skráðar í man gdb.

Eftirfarandi skipun sýnir frá hvaða geymslu pakkarnir voru settir upp frá:

# find-repos-of-install httpd postfix dovecot

Ef keyrt er án rökstuðnings mun find-repos-of-install skila öllum listanum yfir uppsetta pakka.

package-cleanup stjórnar pakkahreinsun, afritum, munaðarlausum pökkum (forrit sett upp frá öðrum uppruna en núverandi geymslum) og öðru ósamræmi í ósjálfstæði, þar á meðal að fjarlægja gamla kjarna eins og sýnt er í eftirfarandi dæmi:

# package-cleanup --orphans
# package-cleanup --oldkernels

Þú þarft ekki að hafa áhyggjur af því að síðasta skipunin skaði kjarnann þinn. Það mun bara hafa áhrif á gamla kjarnapakka (útgáfur eldri en sá sem er í gangi) sem er ekki lengur þörf.

repo-graph skilar fullum pakkaháðalista á punktasniði fyrir alla pakka sem eru tiltækir frá stilltum geymslum. Að öðrum kosti getur repo-graph skilað sömu upplýsingum eftir geymslu ef það er notað með --repoid= valkostinum.

Til dæmis skulum við skoða ósjálfstæði hvers pakka í uppfærslugeymslunni:

# repo-graph --repoid=updates | less

Í ofangreindri skipun erum við að senda úttak af endurvinnsluriti á minna til að auðvelda sjón, en þú getur að öðrum kosti vísað því á staðbundna skrá til síðari skoðunar:

# repo-graph --repoid=updates > updates-dependencies.txt

Í báðum tilvikum getum við séð að iputils pakkinn fer eftir systemd og openssl-libs.

endurlokun les lýsigögn stilltra geymsla, athugar ósjálfstæði pakka sem eru innifalin í þeim og sýnir lista yfir óleyst ósjálfstæði fyrir hvern pakka:

# repoclosure

repomanage leitar í möppu með rpm pakka og skilar lista yfir nýjustu eða elstu pakka í möppu. Þetta tól getur komið sér vel ef þú ert með möppu þar sem þú geymir nokkra .rpm pakka af mismunandi forritum.

Þegar það er keyrt án rökstuðnings skilar repomanage nýjustu pakkanum. Ef keyrt er með --gamla fánanum mun það skila elstu pakkunum:

# ls -l
# cd rpms
# ls -l rpms
# repomanage rpms

Vinsamlegast athugaðu að það að breyta nafni rpm pakkana mun EKKI hafa áhrif á hvernig endurstjórnun virkar.

repoquery leitar eftir yum geymslum og fær viðbótarupplýsingar um pakka, hvort sem þeir eru settir upp eða ekki (ósjálfstæði, skrár sem fylgja pakkanum og fleira).

Til dæmis er htop (Linux Process Monitoring) ekki uppsett á þessu kerfi eins og þú sérð hér að neðan:

# which htop
# rpm -qa | grep htop

Segjum nú að við viljum skrá ósjálfstæði htop ásamt skrám sem eru innifalin í sjálfgefna uppsetningu. Til að gera það skaltu framkvæma eftirfarandi tvær skipanir, í sömu röð:

# repoquery --requires htop
# repoquery --list htop

yum-debug-dump gerir þér kleift að henda heildarlista yfir alla pakka sem þú hefur sett upp, alla pakka sem eru tiltækir í hvaða geymslu sem er, mikilvægar stillingar og kerfisupplýsingar í hlaðna skrá.

Þetta getur komið sér vel ef þú vilt kemba vandamál sem hefur komið upp. Til hægðarauka nefnir yum-debug-dump skrána sem yum_debug_dump--

# yum-debug-dump

Eins og með allar þjappaðar textaskrár, getum við skoðað innihald hennar með zless skipun:

# zless yum_debug_dump-mail.linuxnewz.com-2015-11-27_08:34:01.txt.gz

Ef þú þarft að endurheimta stillingarupplýsingarnar sem yum-debug-dump gefur, geturðu notað yum-debug-restore til að gera það:

# yum-debug-restore yum_debug_dump-mail.linuxnewz.com-2015-11-27_08:34:01.txt.gz

yumdownloader halar niður RPM skrám frá geymslum, þar með talið ósjálfstæði þeirra. Gagnlegt til að búa til netgeymslu sem hægt er að nálgast frá öðrum vélum með takmarkaðan internetaðgang.

Yumdownloader gerir þér kleift að hala ekki aðeins niður tvöfaldri RPM heldur einnig upprunanum (ef það er notað með --source valkostinum).

Til dæmis skulum við búa til möppu sem heitir htop-skrár þar sem við munum geyma RPM (s) sem þarf til að setja upp forritið með því að nota rpm. Til að gera það þurfum við að nota --resolve rofann ásamt yumdownloader:

# mkdir htop-files
# cd htop-files
# yumdownloader --resolve htop
# rpm -Uvh 

reposync er náskylt yumdownloader (reyndar styðja þeir næstum sömu valkosti) en býður upp á töluverða kosti. Í stað þess að hlaða niður tvöfaldri eða upprunalegu RPM skrám, samstillir það ytri geymslu við staðbundna möppu.

Við skulum samstilla hina þekktu EPEL geymslu við undirskrá sem kallast epel-local inni í núverandi vinnuskrá:

# man reposync
# mkdir epel-local
# reposync --repoid=epel --download_path=epel-local

Athugaðu að þetta ferli mun taka töluverðan tíma þar sem það er að hlaða niður 8867 pakka:

Þegar samstillingunni er lokið skulum við athuga hversu mikið pláss er notað af nýstofnuðum spegli EPEL geymslunnar með því að nota du command:

# du -sch epel-local/*

Nú er það undir þér komið hvort þú vilt halda þessum EPEL spegli eða nota hann til að setja upp pakka í stað þess að nota fjarlægan. Í fyrra tilvikinu skaltu hafa í huga að þú þarft að breyta /etc/yum.repos.d/epel.repo í samræmi við það.

yum-complete-transaction er hluti af yum-utils forritinu sem grípur ólokið eða hætt við yum viðskipti á kerfi og reynir að klára þau.

Til dæmis, þegar við uppfærum Linux netþjónana í gegnum yum pakkastjóra, sendir það stundum viðvörunarskilaboð sem hljóða sem hér segir:

Það eru ólokið viðskipti eftir. Þú gætir íhugað að keyra yum-complete-transaction fyrst til að klára þau.

Til að laga slík viðvörunarskilaboð og leysa slík mál, kemur yum-complete-transaction skipun inn í myndina til að klára ólokið viðskipti, hún finnur þessar ófullkomnu eða aflýstu yum færslur í færslu-allt* og færslugerð* skrám sem er að finna í/var/lib/yum skrá.

Keyrðu yum-complete-transaction skipunina til að klára ófullkomin yum viðskipti:

# yum-complete-transaction --cleanup-only

Nú munu yum skipanir keyra án ófullkominna viðskiptaviðvarana.

# yum update

Athugið: Þessi ábending er stungin upp af einum af venjulegum lesendum okkar, Mr. Tomas, í athugasemdahlutanum hér.

Samantekt

Í þessari grein höfum við fjallað um nokkrar af gagnlegustu tólunum sem veittar eru í gegnum yum-utils. Fyrir tæmandi lista geturðu vísað á mannsíðuna (man yum-utils).

Að auki hefur hvert þessara verkfæra sérstaka mansíðu (sjá man reposync, til dæmis), sem er aðaluppspretta skjala sem þú ættir að vísa til ef þú vilt læra meira um þau.

Ef þú tekur þér eina mínútu til að skoða mannasíðu yum-utils, þá finnurðu kannski annað tól sem þú vilt að við sækjum nánar í sérstakri grein. Ef svo er, eða ef þú hefur spurningar, athugasemdir eða ábendingar um þessa grein, ekki hika við að láta okkur vita hver þeirra með því að senda okkur athugasemd með því að nota athugasemdareyðublaðið hér að neðan.