Ero sivun ”RPM” versioiden välillä

Kohteesta Linux.fi
Siirry navigaatioon Siirry hakuun
(siistintää)
(ajan tasalle)
Rivi 1: Rivi 1:
 
== Yleistä RPM:stä ==
 
== Yleistä RPM:stä ==
  
RPM eli ''RPM Package Manager'' (alunperin ''RedHat Package Manager'') on [[Redhat]]-pohjaisissa järjestelmissä käytettävä [[paketinhallintajärjestelmä]]. RPM-paketeista voi suorittaa hakuja [[Rpmfind]]-palvelussa.
+
RPM eli ''RPM Package Manager'' (alunperin ''RedHat Package Manager'') on [[Redhat]]-pohjaisissa järjestelmissä käytettävä [[paketinhallintajärjestelmä]].  
  
=== Jakelut jotka käyttävät RPM:ää ===
+
RPM-paketti koostuu pakatussa muodossa olevasta asennettavasta ohjelmasta sekä siihen liittyvästä metatiedosta, kuten paketin riippuvuuksista eli sen tarvitsemista toisista rpm-paketeista (''engl. dependencies''). RPM-paketteja on perinteisesti käsitelty [[komentorivi|komentorivipohjaisella]] rpm-ohjelmalla, jolla on mahdollista asentaa, päivittää ja poistaa paketteja, tarkastella erilaisia pakettiin sisältyviä metatietoja sekä tehdä hakuja järjestelmän RPM-pakettitietokantaan. Rpm-työkalun puutteena on kuitenkin se, ettei se osaa tyydyttää pakettien riippuvuuksia, vaan käyttäjän on itse etsittävä riippuvuudet tyydyttävät toiset RPM-paketit esimerkiksi [[Rpmfind]]-palvelun avulla. Tietyn paketin tyydyttämättömiä riippuvuuksia ja riippuvuuksien riippuvuuksia voi pahimmillaan olla jopa kymmeniä, mikä tässä tapauksessa tekee ohjelmien asentamisesta todella työlästä (ns. rpm hell).
  
 +
Ohjelmistojen asentamisen helpottamiseksi onkin viime vuosina kehitetty [[Debian]]in [[apt]]in kaltaisia työkaluja, jotka automaattisesti hakevat asennettavaksi haluttavan ohjelmapaketin sekä kaikki sen riippuvuudet omasta RPM-pakettivarastostaan Internetistä. Jokaisella jakelulla on yleensä oma tällainen työkalunsa, ja niillä yleensä erilaisia virallisia ja epävirallisia graafisia käyttöliittymiä. Myös eräitä jakeluriippumattomia työkaluja on olemassa (esimerkiksi [[smart]]). Fedoran ja RHELin työkalu on nimeltään [[yum]], Mandrivan [[URPMI]] sekä SuSEn [[YaST]]. Useimmat näistä tukevat myös erillisten, jo järjestelmästä löytyvien RPM-pakettien asentamista niin, että niiden riippuvuudet tyydytetään automaattisesti.
 +
 +
=== RPM:ää käyttävät jakelut ===
 
RPM Package Manager löytyy mm. seuraavista jakeluista:
 
RPM Package Manager löytyy mm. seuraavista jakeluista:
* [[Fedora Core]]
+
* [[ASPLinux]] (epäkaupallinen RHEL-versio)
* [[Mandriva]] (katso myös [[URPMI]])
+
* [[ArkLinux]]
* [[RHEL|Redhat Enterprise Linux]]
+
* [[CentOS]] (epäkaupallinen RHEL-versio)
 +
* [[Fedora]] (ent. Fedora Core)
 +
* [[Mandriva]] (ent. Mandrake)
 +
* [[PS2 Linux]]
 +
* [[Red Flag Linux]]
 +
* [[PCLinuxOS]] (Mandriva-johdannainen)
 +
* [[RHEL|Redhat Enterprise Linux]] (lyh. RHEL)
 
* [[SuSE Linux]]
 
* [[SuSE Linux]]
 +
* [[Yellow Dog Linux]]
  
 
+
== Rpm-työkalun käyttö ==
== RPM:n käyttö ==
+
RPM-paketit asennetaan yleensä komennolla
RPM-pakettien asennus onnistuu helposti. Hae rpm-tiedosto verkosta tai cd:ltä ja aja komento
 
 
  rpm -ivh tiedostonnimi.rpm
 
  rpm -ivh tiedostonnimi.rpm
Mikäli ohjelma tarvitsee jotakin muita rpm-tiedostoja, saat siitä ilmoituksen. Nämä paketit (riippuvuudet, ''engl. dependencies'') on asennettava ensin.
+
Mikäli jotakin paketin tarvitsemaa riippuvuutta ei löydy järjestelmän rpm-tietokannasta, näytetään se komennon tulosteessa.
  
=== RPM komennon optiot ===
+
=== Rpm-komennon optiot ===
 
* i - asentaa
 
* i - asentaa
 
* U - päivittää
 
* U - päivittää
Rivi 24: Rivi 33:
 
* V - todentaa
 
* V - todentaa
 
* h - näyttää #-merkit etenemisestä
 
* h - näyttää #-merkit etenemisestä
* --force - pakottaa
+
* --force - pakottaa asennuksen ylikirjoittaen järjestelmästä mahdollisesti jo löytyvät, toiseen pakettiin kuuluvat tiedostot
 
* --nodeps - ei välitä riippuvuuksista
 
* --nodeps - ei välitä riippuvuuksista
 
  
 
=== Yleisiä rpm-komentoja ===
 
=== Yleisiä rpm-komentoja ===
*<tt>rpm -ivh joku.rpm</tt> - asentaa ohjelman joku.rpm-tiedosta
+
*<tt>rpm -ivh joku.rpm</tt> - asentaa paketin joku.rpm
*<tt>rpm -Uvh joku.rpm</tt> - päivittää ohjelman joku.rpm-tiedosta
+
*<tt>rpm -Uvh joku.rpm</tt> - päivittää paketin joku.rpm
 
*<tt>rpm -qi joku</tt> - näyttää (asennetun) joku-nimisen ohjelman tiedot
 
*<tt>rpm -qi joku</tt> - näyttää (asennetun) joku-nimisen ohjelman tiedot
 
*<tt>rpm -qpi joku.rpm</tt> - näyttää rpm-tiedoston tiedot
 
*<tt>rpm -qpi joku.rpm</tt> - näyttää rpm-tiedoston tiedot
 
*<tt>rpm -qpl joku.rpm</tt> - näyttää joku.rpm-tiedoston sisältämät tiedostot
 
*<tt>rpm -qpl joku.rpm</tt> - näyttää joku.rpm-tiedoston sisältämät tiedostot
*<tt>rpm -qa</tt> - listaa koneelle asennetut paketit
+
*<tt>rpm -qa</tt> - listaa koneelle asennetut paketit, jota listausta voi suodattaa esimerkiksi putkittamalla sen [[grep]]ille
 
*<tt>rpm --rebuilddb</tt> - rakentaa rpm-tietokannan uudelleen
 
*<tt>rpm --rebuilddb</tt> - rakentaa rpm-tietokannan uudelleen
 
  
 
== Linkkejä ==
 
== Linkkejä ==
 
 
* [http://www.rpm.org/RPM-HOWTO/ RPM-HOWTO]
 
* [http://www.rpm.org/RPM-HOWTO/ RPM-HOWTO]
 
* [http://www.rpm.org/max-rpm-snapshot/ max-rpm-snapshot]
 
* [http://www.rpm.org/max-rpm-snapshot/ max-rpm-snapshot]

Versio 22. huhtikuuta 2007 kello 20.11

Yleistä RPM:stä

RPM eli RPM Package Manager (alunperin RedHat Package Manager) on Redhat-pohjaisissa järjestelmissä käytettävä paketinhallintajärjestelmä.

RPM-paketti koostuu pakatussa muodossa olevasta asennettavasta ohjelmasta sekä siihen liittyvästä metatiedosta, kuten paketin riippuvuuksista eli sen tarvitsemista toisista rpm-paketeista (engl. dependencies). RPM-paketteja on perinteisesti käsitelty komentorivipohjaisella rpm-ohjelmalla, jolla on mahdollista asentaa, päivittää ja poistaa paketteja, tarkastella erilaisia pakettiin sisältyviä metatietoja sekä tehdä hakuja järjestelmän RPM-pakettitietokantaan. Rpm-työkalun puutteena on kuitenkin se, ettei se osaa tyydyttää pakettien riippuvuuksia, vaan käyttäjän on itse etsittävä riippuvuudet tyydyttävät toiset RPM-paketit esimerkiksi Rpmfind-palvelun avulla. Tietyn paketin tyydyttämättömiä riippuvuuksia ja riippuvuuksien riippuvuuksia voi pahimmillaan olla jopa kymmeniä, mikä tässä tapauksessa tekee ohjelmien asentamisesta todella työlästä (ns. rpm hell).

Ohjelmistojen asentamisen helpottamiseksi onkin viime vuosina kehitetty Debianin aptin kaltaisia työkaluja, jotka automaattisesti hakevat asennettavaksi haluttavan ohjelmapaketin sekä kaikki sen riippuvuudet omasta RPM-pakettivarastostaan Internetistä. Jokaisella jakelulla on yleensä oma tällainen työkalunsa, ja niillä yleensä erilaisia virallisia ja epävirallisia graafisia käyttöliittymiä. Myös eräitä jakeluriippumattomia työkaluja on olemassa (esimerkiksi smart). Fedoran ja RHELin työkalu on nimeltään yum, Mandrivan URPMI sekä SuSEn YaST. Useimmat näistä tukevat myös erillisten, jo järjestelmästä löytyvien RPM-pakettien asentamista niin, että niiden riippuvuudet tyydytetään automaattisesti.

RPM:ää käyttävät jakelut

RPM Package Manager löytyy mm. seuraavista jakeluista:

Rpm-työkalun käyttö

RPM-paketit asennetaan yleensä komennolla

rpm -ivh tiedostonnimi.rpm

Mikäli jotakin paketin tarvitsemaa riippuvuutta ei löydy järjestelmän rpm-tietokannasta, näytetään se komennon tulosteessa.

Rpm-komennon optiot

  • i - asentaa
  • U - päivittää
  • e - poistaa
  • q - kyselee
  • V - todentaa
  • h - näyttää #-merkit etenemisestä
  • --force - pakottaa asennuksen ylikirjoittaen järjestelmästä mahdollisesti jo löytyvät, toiseen pakettiin kuuluvat tiedostot
  • --nodeps - ei välitä riippuvuuksista

Yleisiä rpm-komentoja

  • rpm -ivh joku.rpm - asentaa paketin joku.rpm
  • rpm -Uvh joku.rpm - päivittää paketin joku.rpm
  • rpm -qi joku - näyttää (asennetun) joku-nimisen ohjelman tiedot
  • rpm -qpi joku.rpm - näyttää rpm-tiedoston tiedot
  • rpm -qpl joku.rpm - näyttää joku.rpm-tiedoston sisältämät tiedostot
  • rpm -qa - listaa koneelle asennetut paketit, jota listausta voi suodattaa esimerkiksi putkittamalla sen grepille
  • rpm --rebuilddb - rakentaa rpm-tietokannan uudelleen

Linkkejä