Instalarea de software din pachetele RPM

Aflați cum să instalați software din pachetele RPM în Linux. De asemenea, veți afla cum să faceți upgrade, să eliminați și să administrați pachetele RPM de pe sistemul dvs.

Ce este RPM >

RPM înseamnă Red Hat Package Manager. Cu toate acestea, în prezent, RPM nu este doar specific pentru Red Hat, deoarece multe alte distribuții Linux folosesc RPM pentru gestionarea software-ului lor. De exemplu, atât Mandriva, cât și SuSE utilizează RPM pentru gestionarea software-ului. Cu RPM, puteți instala, actualiza și dezinstala software-ul pe Linux, precum și să urmăriți pachetele RPM deja instalate pe sistemul dvs. Acest lucru se poate face deoarece RPM păstrează o bază de date cu toate software-urile care au fost instalate cu acesta.

RPM utilizează pachete software care au (surpriză) .rpm extensie. Un pachet RPM conține software-ul real care se instalează, poate și alte fișiere suplimentare pentru software, informații despre locul în care se instalează software-ul și fișierele acestuia și o listă de alte fișiere pe care trebuie să le aveți pe sistemul dvs. pentru a rula această piesă specifică de software.

Când utilizați RPM pentru instalarea pachetului software, RPM verifică dacă sistemul dvs. este potrivit pentru software-ul pe care îl conține pachetul RPM, indică unde să instaleze fișierele furnizate de pachet, le instalează pe sistem și adaugă acea bucată de software în baza de date a pachetelor RPM instalate.

Rețineți că diferite distribuții Linux pot păstra software-ul lor și fișierele aferente acelui software în diferite directoare. De aceea, este important să utilizați pachetul RPM care a fost creat pentru distribuția dvs. De exemplu, dacă instalați un pachet software specific SuSE pe un sistem Red Hat, RPM poate introduce fișierele din acel pachet în directoare greșite. În cel mai rău caz, rezultatul este că programul nu găsește toate fișierele de care are nevoie și nu funcționează corect.

Există câteva programe grafice bune pentru instalarea pachetelor RPM, dar în acest fișier tuXfile voi discuta despre metoda liniei de comandă nepăsătoare pentru instalarea software-ului. Rețineți că trebuie să fiți root atunci când instalați software în Linux. Când ai privilegiile de root, folosești fișierul rpm comanda cu opțiuni adecvate pentru a gestiona pachetele software RPM.

Instalarea și actualizarea pachetelor RPM >

Pentru instalarea unui pachet software, utilizați rpm comanda cu -i opțiune (care înseamnă „instalați”). De exemplu, pentru a instala un pachet RPM numit software-2.3.4.rpm:
rpm -i software-2.3.4.rpm

Dacă aveți deja o versiune instalată în sistemul dvs. și doriți să o faceți upgrade la noua versiune, utilizați -U în schimb (care înseamnă „upgrade”). De exemplu, dacă aveți software-2.3.3.rpm instalat și doriți să îl actualizați:
rpm -U software-2.3.4.rpm

Dacă totul merge bine, fișierele din pachetul dvs. vor fi instalate în sistemul dvs. și vă puteți rula fericit noul program. Dar unde este noul tău program? Rețineți că rpm nu creează de obicei un director special pentru fișierele pachetului software. În schimb, diferitele fișiere din pachet sunt plasate în directoarele corespunzătoare existente pe sistemul dvs. Linux. Programele executabile merg de obicei în / bin, / usr / bin, / usr / X11 / bin sau / usr / X11R6 / bin după instalarea cu rpm.

Dar cum poți rula noul tău program dacă nu știi unde este executabilul? Uneori, programul este adăugat automat în meniul dvs., dar, de obicei, puteți rula programul tastând numele acestuia la promptul de comandă. În majoritatea cazurilor nu trebuie să știți unde a fost instalat programul, deoarece nu trebuie să tastați întreaga cale atunci când rulați programul, este necesar doar numele programului.

Eroare: dependențele au eșuat >

Emitent rpm -i or rpm -U instalează software-ul și puteți începe să îl utilizați. RPM este foarte ușor atunci când funcționează. Cu toate acestea, RPM poate fi un diavol atunci când nu funcționează. Există multe motive pentru care instalarea software-ului nu funcționează corect, dar de obicei se datorează eșuate dependențe.

Vedeți, multe programe Linux au nevoie de alte fișiere sau programe pentru a funcționa corect. Cu alte cuvinte, un anumit software depinde de pe alte programe software. Când încercați să instalați un pachet RPM, RPM verifică automat baza de date a acestuia pentru alte fișiere de care software-ul instalat are nevoie. Dacă RPM nu găsește acele fișiere în baza sa de date, se oprește instalarea software-ului și se plânge de dependențe eșuate.

Când apare o eroare de dependență, RPM scuipă o listă de fișiere de care are nevoie programul. Uită-te la listă. Fișierele din listă sunt probabil cele pe care nu le aveți în sistem sau fișierele pe care le aveți, dar sunt versiuni greșite. Când primiți temuta eroare de dependență, va trebui să găsiți fișierele de care se plânge RPM, să instalați sau să actualizați mai întâi acele fișiere și apoi să încercați să instalați pachetul pe care îl instalați.

Cu toate acestea, uneori RPM este pur și simplu prost. Vedeți, numai software-ul cu care a fost instalat RPM se adaugă în baza de date a software-ului instalat. Aceasta înseamnă că, dacă ați folosit o altă metodă pentru instalarea unui anumit program, RPM nu știe că programul există în sistemul dvs. În acest caz, RPM se plânge de dependențe eșuate, chiar și atunci când programul necesar există pe sistemul dvs. și nu există dependențe eșuate!

daca tu ști fișierele necesare sunt acolo și RPM-ul este doar prost, puteți ignora dependențele. Folosește --nodeps dacă doriți să spuneți RPM să nu verifice dependențele înainte de a instala pachetul:
rpm -i software-2.3.4.rpm --nodeps

Acest lucru forțează RPM să ignore erorile de dependență și să instaleze software oricum, dar rețineți că dacă oricum fișierele necesare lipsesc, programul nu va funcționa bine sau nu va funcționa deloc. Folosește --nodeps opțiune numai atunci când știi ce faci sau când ești suficient de osos 😉

Eliminarea software-ului instalat cu RPM >

Pentru a elimina software-ul instalat cu RPM, utilizați -e opțiune (care înseamnă „șterge”):
rpm -e software-2.3.4

Rețineți că atunci când Instalarea software, trebuie să tastați numele pachetului RPM. Dar cand eliminarea software, nu trebuie să introduceți numele întreg al pachetului care conținea software-ul. Nu trebuie să tastați .rpm extensie la eliminarea software-ului. Probabil că nici nu trebuie să introduceți numărul versiunii, deci acest lucru ar face exact la fel ca cele de mai sus:
rpm -e software

Acest rpm -e comanda utilizează baza de date RPM pentru a verifica dacă au fost instalate toate fișierele legate de acest software și apoi elimină automat toate aceste fișiere. După eliminarea fișierelor de programe, programul elimină programul din baza de date a software-ului instalat.

Acesta este motivul pentru care este atât de important să nu eliminați niciodată software-ul RPM manual (de exemplu, ștergerea fișierelor unice cu rm). Dacă rulați în jurul sistemului dvs. ștergând aleatoriu fișierele care au fost instalate cu RPM, veți scăpa de software, dar RPM nu îl știe și nu elimină pachetul software din baza sa de date. Rezultatul este că RPM consideră că programul este instalat pe sistemul dvs. și este posibil să aveți probleme de dependență mai târziu.

Dacă ați folosit RPM pentru instalarea unui anumit software, utilizați RPM pentru a elimina și acea bucată de software!

Interogarea bazei de date RPM >

După cum știți deja, baza de date RPM conține o listă a tuturor pachetelor RPM instalate pe sistemul dvs. Puteți interoga această bază de date pentru a obține informații despre pachetele din sistemul dvs. Linux. Pentru a interoga un singur pachet, utilizați -q opțiune. De exemplu, pentru a interoga un pachet al cărui nume este „software”:
rpm -q software

După emiterea acestei comenzi, rpm fie vă spune versiunea pachetului, fie că pachetul nu este instalat.

Dacă doriți o listă cu toate pachetele instalate pe sistemul dvs., va trebui să interogați toate cu -qa:
rpm -qa

Cel mai probabil, această listă va fi foarte lungă, deci veți avea nevoie de o modalitate de a o derula. Cel mai bun mod este să trimiți lista la less:
rpm -qa | less

Dacă sunteți în căutarea pachetelor ale căror nume conțin un anumit cuvânt, puteți utiliza grep pentru a găsi acele pachete. De exemplu, pentru a obține o listă a tuturor pachetelor RPM instalate ale căror nume conțin cuvântul „kde”, puteți face așa ceva:
rpm -qa | grep kde

Comanda de mai sus face rpm listați toate pachetele din baza de date și treceți lista la grep. apoi grep verifică fiecare linie pentru „kde” și vă arată în cele din urmă toate liniile care conțin cuvântul „kde”.

Dacă nu aveți nicio idee despre ceea ce este grep sau conducte, aruncați o privire la redirecționarea standard de intrare și ieșire tuXfile.