Muokataan sivua RPM

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
{{Ohjelma
== Yleistä RPM:stä ==
| nimi=RPM
| kuva=[[Tiedosto:RPM logo.svg|200px]]
| kuvateksti=
| lisenssi=[[GPLv2+]]
| käyttöliittymä=teksti
| kotisivu=[http://rpm.org/ rpm.org]
}}


'''RPM''' eli ''RPM Package Manager'' (alun perin ''RedHat Package Manager'') on monissa [[jakelu|Linux-jakeluissa]] käytettävä [[paketinhallintajärjestelmä]], joka kehitettiin alun perin [[Red Hat Linux]]in tarpeisiin. RPM:lla tarkoitetaan sekä RPM-tiedostoformaatissa olevia RPM-paketteja että niiden hallinnassa käytettävää RPM-ohjelmaa.
RPM eli ''RPM Package Manager'' (alunperin ''RedHat Package Manager'') on [[Redhat]]-pohjaisissa järjestelmissä käytettävä [[paketinhallintajärjestelmä]].  


==Toiminta==
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).
RPM-paketti koostuu pakatussa muodossa olevasta asennettavasta ohjelmasta sekä siihen liittyvästä metatiedosta, kuten paketin nimestä, versionumerosta, [[Riippuvuus|riippuvuuksista]], ja sen sisältämistä tiedostoista.


RPM-järjestelmän tehtävä on tietää, mitä paketteja järjestelmässä on asennettuna ja kyetä selvittämään niistä esimerkiksi, mihin pakettiin mikin tiedosto kuuluu. Lisäksi RPM mahdollistaa pakettien lisäämisen ja poistamisen järjestelmästä. Paketteja asennettaessa ja poistettaessa RPM ottaa huomioon pakettien riippuvuudet, eikä anna pakottamatta saattaa järjestelmää sellaiseen tilaan, että jonkin asennetun paketin tarvitsemat muut paketit eivät olisi asennettuna.
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.
 
===Korkeamman tason pakettienhallinta===
Vaikka RPM osaakin käsitellä riippuvuuksia, se ei ratko niitä itse. Lisäksi RPM ei osaa käsitellä verkossa olevia [[pakettivarasto]]ja, joten yksinomaan sen käyttö pakettienhallintaan olisi melko työlästä.
 
Käytännössä kaikki RPM:aa käyttävät jakelut käyttävätkin jotain korkeamman tason pakettienhallintaohjelmaa, joka osaa automaattisesti hakea pakettivarastoista asennettavan ohjelman uusimman version tarvittavine riippuvuuksineen. Tällaisia ovat esimerkiksi:
 
*[[DNF]] ([[Fedora Linux]], [[Rocky Linux]])
*[[URPMI]] ([[Mageia]])
*[[YaST]] ([[openSUSE]])


=== RPM:ää käyttävät jakelut ===
=== RPM:ää käyttävät jakelut ===
Rivi 29: Rivi 12:
* [[ArkLinux]]
* [[ArkLinux]]
* [[CentOS]] (epäkaupallinen RHEL-versio)
* [[CentOS]] (epäkaupallinen RHEL-versio)
* [[Fedora Linux]]
* [[Fedora]] (ent. Fedora Core)
* [[Mandriva]] (ent. Mandrake)
* [[Mandriva]] (ent. Mandrake)
* [[Mageia]] (Mandriva-johdannainen)
* [[PS2 Linux]]
* [[PS2 Linux]]
* [[Red Flag Linux]]
* [[Red Flag Linux]]
* [[PCLinuxOS]] (Mandriva-johdannainen)
* [[PCLinuxOS]] (Mandriva-johdannainen)
* [[RHEL|Redhat Enterprise Linux]] (lyh. RHEL)
* [[RHEL|Redhat Enterprise Linux]] (lyh. RHEL)
* [[Rocky Linux]]
* [[SuSE Linux]]
* [[SUSE Linux]]
* [[Yellow Dog Linux]]
* [[Yellow Dog Linux]]


== Käyttö ==
== Rpm-työkalun käyttö ==
RPM-paketit asennetaan yleensä komennolla
RPM-paketit asennetaan yleensä komennolla
  rpm -ivh tiedostonnimi.rpm
  rpm -ivh tiedostonnimi.rpm
Mikäli jotakin paketin tarvitsemaa riippuvuutta ei löydy järjestelmän rpm-tietokannasta, näytetään se komennon tulosteessa.
Mikäli jotakin paketin tarvitsemaa riippuvuutta ei löydy järjestelmän rpm-tietokannasta, näytetään se komennon tulosteessa.


=== Rpm-komennon valitsimia ===
=== Rpm-komennon optiot ===
* i - asentaa
* i - asentaa
* U - päivittää (ero i-valitsimeen on, että kaikki samannimiset aikaisemmat paketit poistetaan asennuksen päätteeksi)
* U - päivittää
* e - poistaa
* e - poistaa
* q - kyselee
* q - kyselee
* V - todentaa
* V - todentaa
* v - tulostaa ylimääräistä tietoa suoritettavasta operaatiosta
* h - näyttää #-merkit etenemisestä
* h - näyttää #-merkit etenemisestä
* --force - pakottaa asennuksen ylikirjoittaen järjestelmästä mahdollisesti jo löytyvät, toiseen pakettiin kuuluvat tiedostot
* --force - pakottaa asennuksen ylikirjoittaen järjestelmästä mahdollisesti jo löytyvät, toiseen pakettiin kuuluvat tiedostot
Rivi 65: Rivi 45:
*<tt>rpm --rebuilddb</tt> - rakentaa rpm-tietokannan uudelleen
*<tt>rpm --rebuilddb</tt> - rakentaa rpm-tietokannan uudelleen


== RPM5 & rpm5.org ==
== Linkkejä ==
 
RPM:n pitkäaikaisen kehittäjän jbj:n työsuhteen loputtua Red Hat:lla, jatkoi hän RPM:n kehitystä henkilökohtaisena projektinaan [http://rpm5.org/ rpm5.org] sivustolla. Tätä jatkui usean vuoden eikä RPM:n oikeudet omistava Red Hat tehnyt ohjelmiston kehitystä lainkaan. Vuonna 200? projektiin määrättiin uudet kehittäjät ja kehitys lähti vauhdilla eteenpäin. Sittemmin rpm5:n kehitys on lakannut vuonna 2009.
 
RPM5 sivusto löytyy vielä verkosta, mutta tulee huomioida, että alkuperäinen Red Hatin RPM ja RPM5 eivät ole keskenään yhteensopivia, alkuperäisessä RPM:ssä itsessään on ollut migraatiopolut nykyisiin versioihinsa.
 
 
==Katso myös==
* [[Rosetta]], eri jakeluiden paketinhallintaohjelmistojen käskyjen tulkinta ja käyttö.
*[[Fedora Linux/Paketinhallinta]]
*[[Fedora Linux/Päivittäminen]]
 
==Aiheesta muualla==
* [http://rpm.org rpm.org - kotisivu]
* [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]


[[Luokka:Paketinhallinta]]
[[Luokka:Ylläpitotyökalut]]
[[Luokka:Komentorivin erikoisohjelmat]]
[[Luokka:Komentorivi]]
[[Luokka:Tiedostomuodot]]
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetty malline:

Tämä sivu kuuluu seuraavaan piilotettuun luokkaan:

Noudettu kohteesta ”https://www.linux.fi/wiki/RPM