RPM Package Manager: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Vvinogra (talk | contribs)
Vvinogra (talk | contribs)
Line 210: Line 210:
  '''Paketi verifitseerimine:'''
  '''Paketi verifitseerimine:'''
  -V või verify
  -V või verify
Verify väga kasulik, sest ta võib võrrelda käesoleva oleku installitud failide nende algse olekuga.<br/>
Eraldamise kujutamise jaoks kasutatakse spetsiaalsed tähistused:
  Failide kontrollimise tulemus:
  Failide kontrollimise tulemus:
  S                 Faili suuruse eraldamine (size)
  S                 Faili suuruse eraldamine (size)

Revision as of 10:32, 27 April 2011

RPM Package Manager

Originaal autor:

Red Hat

Stabiilne versioon:

4.9.0

Kuupäev:

02.03.2011

Operatsioonisüsteem:

GNU/Linux

Tüüp:

Paketihaldussüsteem

Litsents:

GNU GPL

Veebileht:

rpm.org/

rpm5.org/

Referaat on protsessis

Sissejuhatus

RPM (rekursiivne akroonüüm RPM Package Manager; varem oli nimetud nagu Red Hat Package Manager) määrab kaks üksusi: tarkvarapakettide vorming ja programm, milline oli loodud selle paketi kontrollimise jaoks. RPM määrab kaks asju: paketi tarkvara vormingu ja tarkvarat, milline oli tehtud selle paketi juhtimiseks. Programmi abil võib installida, kustutada ja uuendada tarkvarat.
RPM - see on põhine paketide vorming Linux Standards Base-s. RPM on litsentseeritud GPLv2 all.
Failide hoidmiseks vormingus RPM kasutatakse arhiivne konteiner cpio, kasutades utiliidiga gzip. Hilisemades versioonides võib kasutada ka star arhivaatorit ja kokkupakkimist bzip2, LZMA või XZ abiga. Alustades versioonist RPM 5.0 võimalik arhivaatorit XAR kasutamine.

Eesmärk

  • Artikli eesmärgiks on tutvustamine RPM Package Manageriga
  • Ülevaade mida võiks teha selle programmi abil
  • Vaadata üle tihti kasutatavad käsud

Sisukord

Artiklis on olemas teoreetiline ja praktiline osa.
Teoreetilises osas võib teada ja uurida mis on RPM ja mille jaoks ta on vaja.
Praktilises osas võib vaadata kuidas seda programmi kasutada.

Kasutus

Selles artiklis on kirjutatud käsud, millised on kõige tihti kasutavamad.
Lisaks on olemas spikker.

Struktuur

RPM sisaldab .spec fail, milline annab informatsiooni paketist, tema määramisest ja sõltuvusest (millised paketid oli installitud, et see pakett võib töötada). Fail .spec ka sisaldab paketi failide manifest, infot sellest, kuhu süsteemis need failid peavad olema koormatud ja millised nendel on põlised õigused. RPM veel sisaldab преинсталляционный script, milline oli kirjutatud paketi töötleja poolt. Peale seda, RPM sisaldab kompileeritud binaarsed failid ja постинсталляционный skript.

.spec преинсталляционный skript binaarne fail binaarne fail ... binaarne fail постинсталляционный skript

Andmebaas

RPM andmebaas ведётся kataloogis /var/lib/rpm. Ta seisneb ühest andmebaasist (Packages), millisel hoiatakse kõik informatsioon paketidest, ja palju väikesed andmebaasid (__db.001, __db.002 jne), millised teenindavad indekseerimise jaoks ja sisaldab teaded sellest, millised failid muutusid ja luuasid paketide installerimise ja kustutamise protsessis.

Kui andmebaas natuke rikkub (see võib juhtuda, millal installerimise või kustutamise protsess oli «tapetud» või lõpetas jaotusele vaba ruumi), siis teda võib taastada käsu abil:

rpm --rebuilddb

Mis on sees

Paar sõna sellest, mis toimub installimise või kustutamise protsessi jooksul. RPM automatiseerub rutiinseid operatsioone. Paketide installimise/kustutamise jooksul kõik tegevused võib panna skriptidesse. Asukoha selle skriptide sõltuvuses kanoonilise tegevuste järjestikkus, näiteks paketi installimise protsessis, need skriptid nimetatakse enne paigaldatavad või paigaldatavad. Standaartne operatsioonide järjekord, millised initsialiseeritakse rpmi paketi installimise jooksul on:

  • Kontrollitatakse sõltuvusi
  • Kontrollitatakse võimalikud konfliktid (kõige tihti konflikti variant - süsteemis paigaldatud ühenimeline pakett enam uuem versiooni)
  • Töödeldakse konfiguratsioonide failid
  • Kooperitakse binaarsed failid vajalikku kataloogisse
  • Teostatakse peale installerimist skriptid
  • Uuendatakse paketide andmebaas

Paketide nimetused

Igal RPM paketil on nimetus, milline sisaldab mitmest osast:

  • Programmi nimetus
  • Programmi versioon
  • Reliisi number (arv kui palju kordi programm oli uuendatud). Tihti kasutatakse distributsiooni määramise jaoks, mille all tehtud pakett
  • Arhitektuur, mille all pakett tehtud (i386, ppc jne)

Kokku võetav pakett tavaliselt sisaldab niisugune nimetuse vorming:

<nimetus>-<versioon>-<redaktsioon>.<arhitektuur>.rpm

Näiteks:

nano-2.2.6-1.i386.rpm

RPMi eelised ja puudused

RPMi eelised

  • Kustutamise kergus ja programmide uuendamine
  • Populaarsus: väga palju programme собираются RPMisse, see tähendab et ei ole vajadusi teha programmi lähtekoodidest
  • "Pole interaktiivne" installerimine: kergesti automatiseerida installerimise/uuendamise/kustutamise/ protsess
  • Paketide tervikluse kontroll kontrolli summade abil ja GPG-allkirjadega
  • DeltaRPM - see on apache'i analoog, millega võib uuendada installitud tarkvarat minimaalsega pingitusega
  • Akkumulatsiooni võimaluse kogemus kogujade spec-failis
  • Spec-failide relatiivne kompaktsus macroside kasutamise abil

RPM väärilisused

Uuendamine

RPMi abil te saate uuendada Teie süsteemi individuaalsed komponendid ja kõik süsteem ilma installita. RPM tagab intellektuaalne, täis automaatne uuendamise viis Teie süsteemi ja paketide installimine. RPM jälgib eraldi konfiguratsioonifaile ja dokumentatsiooni paketides ja annab installimise/uuendamise võimalusi kõikide paketide osa eraldi.

Tugev päringude vahend

RPM oli loodud tugevaga liidesega päringude töötluse jaoks. Te võite otsida paketide andmebaasis või mõnedes failides. Te võite lihtne leida millele paketile milline fail kuulub ja kust oli võetud see paket. Te võite teha andmebaasi järelepärimist või .rpm fail, sest tema pealkiri sisaldab kõik vajaliku informatsiooni tema sisust.

Süsteemide kontroll

RPM annab võimalusi süsteemi terviklikkuse ja eri failide kontrollimise jaoks. Kui Teil tekkisid kahtlusi, millised on seotud iga paketi kohta (näiteks Te kahtlete, kas te ei kustutanud vajalik fail) - Te võite kontrollid paketi terviklust. RPM annab teha sõltuvusi kontroll, failide kontrollide summad, juurdepääsu õigusi, suurus jne kõikide installitud süsteemis paketide jaoks.

RPM salvestab originaalseid allikaid распространяемый programmi looja. RPMi paketi allikaid (.src.rpm) sisaldavad programmi algkoodi, kõik paigid pluss täis instruktsioon paketi koostamise kohta. RPM paketi uuendamiseks peale выхода uue tarkvara versiooni Teie on piisavalt vahetada algkoodi ja võimalik parandada kostamise instruktsioone ja viita RPMile koostada antud paket.

Põhilised puudused

  • Makropaketid distributsioonide vahel võivad eraldada
  • ...

Toetavad Linuxi distributsioonid

See on nimekiri mõnede tuntumate distributsioonide, millised olid asutatud RPM baasil:

(See on mittetäielik nimekiri)

Praktiline kasutamine

Kõikides Linuxi programmides võib vaadata kasutusjuhendit. Selle jaoks kirjutage:

man rpm

Kui te tahate installida pakket RPMi abil, siis kirjutage:

rpm -i <paketi nimi>

Peale seda millal pakett asub teie failisüsteemis, piisavalt käivitada rpm käsk ja anda kolm omadusi:

-U (upgrade) Miks -U parem, kui -i? Asi on selles, et -i võib ainult installida, aga -U annab uuendamine ja installimine. Sõltumatu sellest, kas te tahate uuendada programmi või installida, see käsk teeb vajalikud tegevused.

-h (installimise protsessi kujutamise jaoks)

-v (verbose, väljastus laiemalt informatsiooni täidetavast tegevustest)

rpm -Uhv <paketi nimi>

Kustutada pakett ka väga lihtne:

rpm -e <paketi nimi>

Paketi uuendamise jaoks kasutatakse:

rpm -U <paketi nimi>

Vaadata, kas installitud pakett võib selle käsu abil:

rpm -qa | grep <paketi nimi>

Kui te tahate uurida informatsiooni paketist, siis kirjutage:

rpm -qi | grep <paketi nimi>

Veel üks võimalus informatsiooni vaatamiseks võib teenida käsk:

rpm -q --queryformat '%{NAME}-%{VERSION}-%{RELEASE}\n' <paketi nimi>

Vaadata failide nimekiri, millised sisenevad paketide sisukorra võib:

rpm -ql | grep <paketi nimi>

Suur kollektsioon võimalusi annavad resiimi päringide omadusi. Paketist ja tema failidest võib anna praktiliselt kõik informatsiooni. Need võimalusi realiseeritakse enda võti-filtri abil või --queryformat abil. --queryformat näitab ainult tellitud ametlikude väljad. Näiteks selline käsk näitab paketi kirjeldus:

rpm -q --queryformat %{DESCRIPTION} <paketi nimi>

Distributsiooni nimetus, millisel asub pakett saab teada selle käsu abil:

rpm -q --queryformat %{DISTRIBUTION} <paketi nimi>


NB! Märkus
Nagu teised programmid Linuxi jaoks, programm rpm alati rakendab. Ja seda tõttu versiooni vahel võib tekkida probleemid ja raskused paketide installerimisega, millised oli loodid eelmistes versioonides. On vaja kasutada paketid, millised sobivad teie installitud versiooni.

Spikker

See on väike spikker RPMi käsu kohta.
Need käsud autor kontrollis Fedora 14 distributsioonis.

Juhtimine:
Nende käsude käivitamiseks on vaja olla super userina ja tuleb kasutada koos käsuga rpm -<täht> <paketi nimi>	
-e või --erase		        Paketi kustutamine
-F või --freshen	        Paketi uuendamine, paigaldada ainult uue paketi, kui ta oli juba selle versiooni installitud
-h või --hash		        Räsimine
-i või --install	        Paketi intalleerimine
-K või --checksig               Võimalus kontrollida kõiki ülevaateväljaanded ja allkirjade sisalduvate PACKAGE_FILE ja tagada terviklust ja päritolu paketis.
-U või --upgrade	        Paketi ülendus või installeerimini, kui ta ei olnud varem installitud
Paketi valimise suvandid: Järgmised käsud kasutatakse koos käsuga rpm -q<täht> <paketi nimi> -a või --all Päring kõiki installitud pakette -c või --configfiles Konfiguratsioonifailide nimekiri -d või --docfiles Dokumentatsioonifailide nimekiri -f või --file FILE Paketti omanikud FILE -g või --group GROUP Paketti gruppid GROUP -i või --info Näita paketi infot, sealhulgas nime, versiooni ja kirjeldus -l või --list Paketti failide nimekiri -V või --verify Paketi kontrollimine -R või --requires Paketide nimekiri, millised sõltuvad selle paketi -s või --state Näitab failide olek paketis (on olemas kolm olekud: normal, not installed või replaced)
Paketi verifitseerimine: -V või verify Verify väga kasulik, sest ta võib võrrelda käesoleva oleku installitud failide nende algse olekuga.
Eraldamise kujutamise jaoks kasutatakse spetsiaalsed tähistused: Failide kontrollimise tulemus: S Faili suuruse eraldamine (size) M Oleku eraldamine (Mode) (juurdepääsu õigused ja faili tüüp) 5 MD5 summa eraldamine D Ei ühita major/minor-numbrid L Ei ühita readLink(2) tee U Ei ühita kasutajanimi G Ei ühita grupp T Eraldab mTime

Eeskomponendid RPMi jaoks

Töö programmiga rpm konsoolis ei ole raske, kui mõnikord on lihtsam kasutada graafilist liidest. Linux tavaliselt sisaldab eeskomponentide programmid, millised on graafilised. Igal distbutsioonil on oma eeskomponendid ja nad võivad erineda. Seda infot võib leida distrubutsiooni dokumentatsioonis.

Kokkuvõte

Kasutatud kirjandus

Autor

  • Vadim Vinogradin A21
  • vvinogra AT itcollege.ee