Elementele de bază rpm, sisteme deschise

infrastructura IT pentru întreprinderea dvs.

Red Hat Package Manager (RPM) este un set de instrumente care sunt utilizate pentru a crea și controla pachete software în Unix-sisteme. RPM, livrat cu Red Hat Linux și distribuțiile derivate din acesta, se poate lucra cu orice formă de realizare Unix, deoarece distribuite în texte sursă. Cu toate acestea, găsirea RPM-pachete pentru alte dialecte Unix dificil.

Deși gestionarea pachetului se bazează pe principii mai degrabă banală, punerea sa în aplicare se poate dovedi a fi dificilă. Desigur, controlat de pachete software de instalare de software, managementul a instalat, și îndepărtarea lor de constrângerile sistemului nu este. RPM a fost creat ca urmare a necesității de a efectua astfel de operațiuni în mod eficient; alte soluții semnificative nu exista.

RPM, spre deosebire de alte manageri de pachete software pentru Unix, utilizează un format de fișier de proprietate. Acest lucru poate duce la probleme grave în cazul în care aveți nevoie pentru a izola oricare componentă a pachetului, iar utilitarul RPM la îndemână acolo. Din fericire, există instrumente, cum ar fi străin, care să permită pentru a obține fișierele într-un format care permite controlul, de exemplu, folosind gudron sau Ar.

Schema de numire a fișierelor RPM este ea însăși o convenție standardizată. numele RPM au formatul (numele) - (versiune) - (build) (platforma) .rpm .. De exemplu, numele de pisica-2.4-7.i386.rpm folosit pentru a se referi la utilități-pachet RPM pisica versiunea 2.4, 7 pentru a construi platforma x86. În cazul în care, în loc de numele platformei dat src, atunci vorbim despre codul sursă.

De ce este necesar de gestionare a pachetelor?

Pentru utilități mici, cum ar fi, să zicem, pisica, care au un executabil și un director pagină om, nu este nevoie de RPM. Dar ia în considerare, de exemplu, KDE, care cuprinde o multitudine de componente și dependențele lor și necesită respectarea pe scară largă. Monitorizați toate dintre ele este extrem de dificil, dacă nu chiar imposibil.

Managementul de pachete simplifică foarte mult sarcina. Permiterea programului pentru a menține informații despre modulele obiect, fișierele de configurare, precum și toate celelalte care are nevoie, puteți specifica care dintre ele ar trebui să fie instalat, ușor pentru a le elimina sau pentru a face upgrade cu ușurință.

Instalarea are loc fara probleme. Tu alegi ce ai nevoie și cere sistemului pentru a efectua pentru tine lucrarea „murdar“: dezarhivați programul, asigurați-vă că există suficient spațiu, loc toate în ordinea corectă și de instalare. Țineți evidența de dependențe și cerințele suplimentare ale unui pachet software pentru un bun manager de pachet este, de asemenea, nu este dificil.

Managementul pachetelor instalate este, de asemenea, bine făcut sisteme bune de administrare a pachetelor. Sistemul stochează o listă completă a software-ului instalat, care este în valoare de o privire, dacă vă decideți să instalați ceva. Mai important, un astfel de sistem îl face ușor de a actualiza soluțiile existente. În cele din urmă, cu ajutorul ușor pentru a verifica corectitudinea pachetului. Știind ce sunt instalate pachete, și care sunt proprietățile componentelor lor, puteți diagnostica rapid problema si ao rezolva cu succes.

RPM și alte

Pe scurt, principalul meu RPM nemulțumire din cauza lipsei de ea o interfață grafică cu utilizatorul puternic. În ciuda faptului că unele interfețe sunt disponibile (cum ar fi gnorpm și licărire), ele nu dispun de funcții mai sofisticate disponibile pe Manager SGI Software. În general, cred că RPM este Analizează mai bune și rezolvarea conflictelor decât Inst, și mult, mult mai rapid. Deci, sunt de acord să facă, fără o interfață grafică puternică.

RPM fuzionează mai multe fișiere într-un singur fișier arhivă și realizează compresie pentru corpul pachetului RPM. În plus, informațiile introduse suplimentar antet, care include script-uri care sunt executate înainte și după instalare pregătirea sistemului pentru instalarea unui nou pachet, precum și informațiile pentru baza de date care acceptă RPM. Dependențele sunt verificate înainte de instalarea fiecărui pachet; în conformitate cu componentele suplimentare pot fi prezentate steaguri.

RPM poate face minuni tocmai datorită acestei baza de date.

Instalarea cu RPM

Aceasta este funcția de bază a RPM, și una dintre cele mai populare. Pentru a face acest lucru, executați comanda

Dacă totul merge bine, pachetul va fi instalat, și veți obține un prompt de comandă, fără nici un mesaj. Din păcate, în cazul în care aveți nevoie pentru a afla de ce ai eșuat. Dacă specificați pavilion -h, este posibil să se vadă pe ecran „termometru“ pentru a umple cu pictograme #. Aparent, mulți oameni le place să folosească steaguri -ivh împreună:

Din nou, în acest caz, știi puțin despre ceea ce se întâmplă. Numai faptul că procesul de instalare merge bine. Am tendința de a căuta atunci când instalați un nou pachet pentru a obține toate informațiile posibile (vv). Acest lucru îmi permite să văd ce se întâmplă:

Deși informațiile de pe ecran este, în general defilat, face posibil să se știe exact dacă nu a existat nici o problemă. În plus, desigur, ce module sunt deja instalate.

În funcție de RPM suporta destul de rezonabil, dar este într-o mare măsură determinată de pachetele de module de asamblare de calitate. Am văzut pachete care depindeau de ei înșiși, și cei care păreau să depindă de pachetele, jefuire altceva. Păstrați acest lucru în minte.

Uneori, RPM va da observații cu privire la pachetele care sunt instalate, dar nu sunt înregistrate. Poate că le-instalat fără ajutorul RPM (de exemplu, OpenSSL). Pentru a scapa de aceste comentarii, puteți provoca RPM pentru a ignora dependențe:

-nodeps rpm -ivv (pachet)

Trebuie remarcat faptul că nu este întotdeauna înțelept și ar trebui să se facă numai atunci când știi exact ce intra in. Destul de rare, pentru a deteriora modulele deja instalate, dar uneori un pachet instalat nu va funcționa corect.

În cazuri rare, RPM va crea confuzie și insistă că ați instalat pachetul, chiar dacă nu a făcut în mod explicit. Cu toate că, de regulă, un astfel de caz indică o eroare, acesta poate fi, de asemenea, eludate. Trebuie doar să instalați forțat pachetul:

rpm -ivv -Force (pachet)

Fii atent. În mod similar, la fel ca în cazul în care ați ignorat în funcție, instalare forțată poate fi pachet înțelept. Rețineți că sistemul să nu mai funcționeze. Învinovăți.

Probabil cea mai mare recompensa va fi capabil de a utiliza una dintre caracteristicile uimitoare RPM: instalații de rețea. Uneori, sistemul are clienți de rețea, și trebuie să le instalați prin RPM. În acest scop, RPM încorporat clienții software-ul web și FTP:

de gestionare a pachetelor

Să presupunem că doriți să lucrați cu unele dintre pachetele disponibile, indiferent dacă acestea sunt sau nu stabilite. Puteți utiliza funcțiile de conducere pentru acele pachete care sunt deja instalate, iar pentru cei care nu sunt instalate. De asemenea, este posibil să se verifice corectitudinea pachetului.

Când mâinile tale are un nou pachet, uneori, pe care doriți să-l exploreze, să înțeleagă exact ceea ce le oferă capabilități. Acest lucru se poate face folosind modul de interogare.

Acesta va lista toate fișierele din arhivă cu numele lor complet, inclusiv numele directorului. Eu folosesc de multe ori această opțiune pentru a vedea dacă trebuie să instalați pachetul, dar, cel mai important, în cazul în care să-l instalați. Prefer să adere la acordul că modulele ar trebui să fie plasate în locurile destinate lor, dar unii manageri de pachete nu. În cele din urmă, pentru a vedea toate pachetele pe care le-ați instalat pe sistemul dvs., utilizați:

Vi se va da o listă de pachete instalate pe sistemul dumneavoastră.

Una dintre cele mai remarcabile, din punctul meu de vedere, caracteristicile RPM - precizie de control de pachete. Este adesea util atunci când caută calculator zasboivshego sau modulul executabil, care ar putea fi omise sau modificate ca urmare a oricăreia dintre greșelile tale. Pentru a verifica corectitudinea pachetului, utilizați steagul -V:

Verificați corectitudinea tuturor pachetelor instalate pe sistem, de asemenea, este destul de simplu:

Modul de validare vă permite să obțineți unele statistici cu privire la dosar.

Uneori, aceste date sunt lipsite de sens, de exemplu, dacă modificați fișierul /etc/inetd.conf, dimensiunea și suma de control MD5 se va schimba. Cu toate acestea, unele lucruri nu ar trebui să se schimbe, cum ar fi / bin / conectare. Comanda rpm -VA poate fi utilă pentru a efectua o verificare de securitate rapidă, ce permite să înțeleagă ce este în primul rând ar trebui să acorde o atenție.

Una dintre caracteristicile notabile ale managementului pachetului, după cum puteți vedea, este ușurința cu care puteți efectua un upgrade. RPM are două opțiuni de upgrade-uri de pachete, care sunt uneori confundate. Prima dintre ele - un simplu actualizare:

Confuzia apare aici din cauza acțiunilor întreprinse de către managerul de pachete, în cazul în care pachetul nu este încă instalat. În cazul în care pachetul este găsit, acesta este modificat. Dacă nu este găsit, atunci este modificat pentru sistem, și este instalat pachetul. Uneori poate fi confuz, dacă nu doriți să instalați pachetul și de a efectua modificarea, care urmează în mod automat. Sugerez „refresh“ numai acele pachete, cea mai recentă versiune pe care doriți cu adevărat să aibă:

În acest caz, pachetele numai instalate vor fi modificate, iar în cazul în care pachetul nu este găsit, atunci acesta nu va fi instalat.

Modificarea este, de asemenea, realizată într-un mod interesant. În primul rând noua versiune și notele de modul în care aceasta este diferită de cea veche. Apoi, versiunea veche este îndepărtată, ci doar părți din ea, astfel încât să nu afecteze noile componente. Imaginați-vă dacă / usr / local / bin / netscape a fost schimbat, iar apoi îndepărtat, atunci tot efortul ar fi în zadar!

Eliminarea pachetelor

Puteți instala, actualiza și gestiona pachete și, desigur, poți dezinstala pachete folosind RPM. Pentru „necondiționat“ pentru a elimina un pachet RPM, utilizați:

Spre deosebire de instalațiile și upgrade-uri, atunci când eliminați un pachet pentru a specifica nu ar trebui să fie utilizate numit „pachet-versiya.i386.rpm“, ci pur și simplu „versiune pachet“. Acestea sunt numele care sunt afișate în modul de interogare și că acestea ar trebui să fie de intrare. Trebuie să dea managerului posibilitatea de a elimina pachetele toate componentele pachetului, indicând cea mai frecventă parte a numelui, de exemplu, pentru linuxconf și linuxconf-devel Aceasta va linuxconf. Puteți face, de asemenea, fără dependențe:

rpm (pachetul -nodeps -E)

Aici se va lua din nou riscul pe ei înșiși, pentru că puteți elimina în cele din urmă mai mult decât era de așteptat. Este posibil, precum și în timpul instalării, adăugați indicatorii pentru a obține informații mai detaliate.

Unele observații privind RPM

Uneori, dezvoltatorii creează o dependență destul de ciudat pentru a lor RPM-pachete. Să luăm, de exemplu, libsafe. El are o relație clar definită: ea însăși ( «de la sine"). În acest caz, instalați în mod corect pachetul poate doar -nodeps pavilion. Cu o altă ocazie, pachetul poate include fragmente suplimentare, și poate fi necesar să instalați mai mult decât vă doriți de fapt.

Cele mai multe dintre toate pachetele RPM nu-mi place ceea ce au nume care nu corespund funcțiilor. Deși acordul poate fi lucrat în jurul valorii prin utilizarea instrumentelor de interogare, așa cum este descris mai sus, dar este nevoie de mai mult timp decât sunt dispus să-și petreacă. Te sfătuiesc să-da pachetul RPM numele maxime corecte.

IPR poate fi utilizat cu orice versiune de Linux / Unix, deoarece acesta se extinde în codul sursă. RPM este distribuit ca parte a Red Hat Linux și unii derivați de la el distribuții. Se recomandă să utilizați versiunea 3.0 sau mai mare, pentru a asigura compatibilitatea. Versiunea 4.0 a fost raportat de a avea un alt format de baze de date, asa ca am recomanda pentru a afla cum să rezolve această problemă înainte de a actualiza RPM la versiunea 4.0. Nu sunt sigur ce să facă doar suficient pentru a reconstrui baza de date în 4.0.

RPM este de obicei distribuit ca un pachet de auto-RPM. Este clar? Din fericire, de asemenea, vine sub forma unui fișier preparat folosind gzip tarball, și direct în codul sursă. Eu, de exemplu, RPM este instalat pe Slackware, dar poate fi instalat pe SGI IRIX, sau Sun Solaris, dacă este necesar. Cu toate acestea, el este aproape inutil pe alte platforme, în plus față de Linux, ca și alte variante Unix pachete RPM preparate prin intermediul extrem de rare.

Jose Nazario - student absolvent al Facultății de Biochimie, Universitatea din Case Western Reserve University. Acesta funcționează cu Unix timp de aproape zece ani, și Linux - cu versiunea de nucleu 1.2.

Partajați imagini cu prietenii și colegii