Tämä ohje on siirretty osittain tänne http://linux.fi/index.php/Dpkg ja http://linux.fi/index.php/Apt tuonne.Linuxeissa paketinhallinta on varsin keskeisessä osassa, se määrää miten ohjelmia asennetaan, päivitetään ja poistetaan helpoiten. yleensä onkin syytä asentaa mahdollisimman suuri osa ohjelmista paketinhallinnan kautta välttääkseen ongelmia ja käsityötä. Ubuntussa onkin backports ja ei tuetut, mutta Ubuntun viralliset repositoryt mukaan lukien varsin hyvä valikoima paketteja ja joitain kaupallisia tai suljettuja mutta vapaita ohjelmia lukuun ottamatta miltei kaikki tarvittavat paketit löytyvät sitä kautta.
käyn pikaisesti läpi suoraan paketinhallintaan liittyvät työkalut
apt-get ja
dpkg sekä pakettien etsimiseen ja tiedonhakuun liittyvät työkalut
apt-cache ja
apt-file. esitellyt ohjelmat ovat huomattavasti monipuolisempia kuin mitä minä aion käydä läpi, joten uteliaat ja lisä-informaatiota kaipaavat löytävät varmasti tarvitsemansa ohjelmien man-sivuilta.
apt-get:apt-get on varmasti peruskäyttäjän pääasiallinen paketinhallintatyökalu komentorivillä. se osaa ratkoa riippuvuuksia, hakea halutun paketin ja sen riippuvuudet suoraan netistä ja asentaa kaikki automaattisesti. apt-getin käyttö vaatii rootin oikeudet (joko sudo tai terminaali jossa on tarvittavat oikeudet.). apt-getin repositoryt määritellään tiedostossa /etc/apt/sources.list
pakettilistausten päivittäminen ajan tasalle (tämä tulee ajaa aina kun sources.listiä on muutettu ja yleensä se on hyvä ajaa kerran sellaisina päivinä joina aikoo asennella ohjelmia):
# apt-get update
paketin asennus:
# apt-get install <paketti>
paketin lähdekoodin noutaminen (muista esitellyistä komennoista poiketen, tämä komento ei vaadi rootin oikeuksia):
$ apt-get source <paketti>
paketin poistaminen siten, että ohjelman asetustiedostot jätetään järjestelmään:
# apt-get remove <paketti>
paketin poistaminen siten, että myös ohjelman asetustiedostot poistetaan:
# apt-get --purge remove <paketti>
järjestelmään asennettujen pakettien päivittäminen uusimpiin versioihinsa (sisältää myös tietoturvapäivitykset ja edellyttää pakettilistausten päivittämistä):
# apt-get upgrade
järjestelmään asennettujen pakettien päivittäminen uusimpiin versioihinsa siten, että myös muutokset riippuvuuksissa otetaan huomioon. (pelkkä upgrade ei tee tätä, joten se saattaa joskus jättää joitain paketteja päivittämättä.):
# apt-get dist-upgrade
tätä viimeistä komentoa käytetään myös silloin kun päivitetään Ubuntu uuteen versioon ilman uudelleenasennusta. ennen päivitystä tulee vain muuttaa /etc/apt/sources.list:in sisältöä siten, että paketit haetaan uuden version repositoryistä.
dpkg:dpkg toimii paketinhallinnassa hieman apt-get:iä alemmalla tasolla. se ei osaa hakea paketteja netistä saati sitten ratkoa niiden riippuvuuksia. riippuvuuksien selvittäminen toimii kyllä siinä määrin, että jos komennon parametriksi antaa monta pakettia, osaa dpkg tarkistaa täyttävätkö muut asennettavaksi annetut paketit puuttuvia riippuvuuksia. pakettien asentaminen ja poistaminen vaatii luonnollisesti rootin oikeudet, mutta kyselyt eivät. dpkg:n kyselyt vaativat yleensä, että ohjelma on joko asennettu tai kyseltävä .deb -paketti on saatavilla ja annettu parametrina. itse netistä noudetut paketit asennetaan dpkg:n avulla.
haetun .deb paketin asentaminen:
# dpkg -i <paketti>
paketin poistaminen (mikä tahansa asennettu paketti):
# dpkg -r <paketti>
paketin poistaminen siten, että myös asetustiedostot poistetaan:
# dpkg -P <paketti>
haetun paketin tietojen kysely:
$ dpkg -I <paketti>
asennetun paketin tietojen ja stauksen kysely
$ dpkg -s <paketti>
haetun paketin sisällön listaaminen:
$ dpkg -c <paketti>
kaikkien asennettujen pakettien ja niiden versionumeroiden listaaminen:
$ dpkg -l
tietyn (asennetun) paketin versionumeron tarkistaminen:
$ dpkg -l <paketti>
tiedoston etsiminen asennetuista paketeista (selvitetään mihin pakettiin tiedosto kuuluu):
$ dpkg -S <tiedoston nimi tai nimen osa>
apt-cache:apt-cache on osa apt-pakettia ($ dpkg -S apt-cache
) ja on kätevä pakettien etsimisessä ja tutkiskelemisessa (ja parissa muussakin asiassa joita ei käsitellä tässä). hakutoimintoihin riittää mainiosti käyttäjän oikeudet.
paketin hakeminen asennettavissa olevista paketeista (hakee annettua merkkijonoa oletuksena myös pakettien pitkistä kuvauksista):
$ apt-cache search <hakuehto>
hakuehdoksi käyvät myös regular expressionit jos niitä sattuu osaamaan käyttää.
sama kuin edellinen, mutta vain pakettien nimistä:
$ apt-cache search --names-only <hakuehto>
paketin tietojen näyttäminen (versio, pitkä kuvaus, riippuvuudet, ...):
$ apt-cache show paketti
apt-file:apt-file on puhtaasti etsintätyökalu jolla voi hakea tietoa pakettien sisältämistä tiedostoista, mutta toisin kuin dpkg:n tapauksessa, paketin ei tarvitse olla asennettuna jotta sen tietoja olisi mahdollista kysellä. apt-file ei asennu oletuksena, eikä vaadi pääkäyttäjän oikeuksia. apt-file on erityisen kätevä esimerkiksi silloin, jos joku paketinhallinnan ulkopuolelta asennettu ohjelma ei suostu käynnistymään koska ei löydä jotain tietyn nimistä tiedostoa.
apt-file asennetaan kuten muutkin softat ja se löytyy paketista apt-file:
# apt-get install apt-file
aluksi (ja välillä muutenkin) apt-filen tietokanta pitää päivittää:
# apt-file update
tiedoston etsiminen kaikista saatavilla olevista paketeista:
$ apt-file search <tiedosto>
paketin sisällön listaaminen:
$ apt-file list <paketti>
paketin hallinta komentoriviltä on suhteellisen helppoa ja mahdollisuuksia on enemmän kuin graafisella puolella tulee koskaan olemaan. jopa tässä pintapuolisessa esittelyssä esiintyy asioita joita graafisella puolella on mahdoton tai ainakin hankala tehdä. komentorivipohjaisen paketinhallinnan opettelu ei ole muutenkaan turhaa, sillä se antaa edellytykset mm. koneen helppoon hallitsemiseen etänä ja riippumattomuuteen tietystä paketinhallinnan front-endistä.