Ohjelmien asentaminen

Linux.fista
Versio hetkellä 28. maaliskuuta 2022 kello 13.59 – tehnyt Foliohattu (keskustelu | muokkaukset) (→‎Rosetta: muotoilua)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun

Linuxiin asennetaan ohjelmia pääsääntöisesti jakelun paketinhallintajärjestelmästä. Paketinhallintaa käytetään jakelun omilla työkaluilla joko graafisesti tai komentoriviltä. Kun ohjelmat asennetaan paketinhallintajärjestelmästä, asennetaan automaattisesti myös muut ohjelman tarvitsemat ohjelmapaketit (esimerkiksi peli voi vaatia OpenGL-kirjaston asentamisen). Paketinhallintajärjestelmä pitää myös kirjaa kaikista järjestelmään asennetuista ohjelmista ja pystyy päivittämään ne kaikki uusien versioiden ilmestyessä.

Vaihtoehtoja[muokkaa]

Pakettivarastosta asentaminen paketinhallinnan kautta vaatii, että haluttu ohjelma (tai sen haluttu versio) löytyy käytetyn jakelun pakettilähteistä. Aina näin ei ole. Tällöin haluttu ohjelma saattaa löytyä omalle jakelulle paketoituna jostain epävirallisesta pakettilähteestä tai ohjelman kotisivuilta. Tällaisissa tapauksissa ohjelma voidaan asentaa tästä paketista, jos paketin tarjoava taho on luotettava. Tällöin paketinhallintajärjestelmä saa tiedon siitä, että järjestelmään on asennettu uusi ohjelma, jolloin paketinhallintajärjestelmä pysyy ajan tasalla ja mm. ohjelman poistaminen on helppoa. Tässä tavassa haittapuolena on se, että ohjelmapaketin toimintaa muun järjestelmän kanssa ei välttämättä ole testattu tarpeeksi (jakelun kehittäjät eivät sitä tue) ja päivityksistä joutuu yleensä huolehtimaan itse. Lisäksi epäluotettavista lähteistä asennetut paketit ovat tietoturvariski.

Perinteisempi tapa ohjelmien asentamiseen on kääntäminen lähdekoodista. Tämä tulee kysymykseen lähinnä tilanteessa, jossa halutaan asentaa jokin ohjelma, jota jakelun omista pakettilähteistä ei löydy. Kääntämällä asennettavien ohjelmien asentaminen voi vaihdella paljonkin eri ohjelmien välillä ja käyttäjän on myös itse huolehdittava siitä, että kaikki ohjelman tarvitsemat muut ohjelmat on asennettu. Ohjelmat tulee aina asentaa ensisijaisesti jakelun paketinhallinnasta, sillä käsin asennetut paketit voivat pahimmassa tapauksessa sotkea paketinhallintajärjestelmän ja aiheuttaa ongelmia.

Itse kääntäminen voi tulla kyseeseen myös vaikka ohjelman saisi suoraan paketinhallinnasta, jos haluaa eri version kyseisestä ohjelmasta, esimerkiksi jonkin erikoisen ominaisuuden ottamiseksi käyttöön. Omasta jakelusta saatavaan lähdekoodiin on helppo tehdä tarvittavat muutokset, pakettihallinta auttaa riippuvuuksien täyttämisessä ja käännöksen tuloksen voi paketoida jakelun omilla välineillä. Jos lähdekoodi haetaan muualta, esimerkiksi koska jakelussa ei ole tarpeeksi uutta versiota, paketin sovittamiseen niin että se sopii jakeluun on nähtävä enemmän vaivaa, ja ohjelman asentaminen paketinhallinnan ohi hakemistoon /usr/local voi hyvinkin olla varteenotettava vaihtoehto.

Jotkut suljetut ohjelmat ovat saatavilla vain omalla asennusskriptillä asennettavina binääripaketteina. Näiden pitäisi asentua hakemistoon /opt eikä niiden asentamisen pitäisi vaatia pääkäyttäjän oikeuksia. Joitakin vinkkejä tällaisten ohjelmien asentamiseksi löytyy sivulta Epäviralliset pakettilähteet osiosta Asentaminen eri käyttäjänä.

Ohjelmien asennustapaa valittaessa järjestys on seuraava:

  1. Jakelun omasta pakettilähteestä
  2. Epävirallisesta, mutta luotettavasta lähteestä tai ohjelman kotisivuilta ladattu omalle jakelulle tehty paketti
  3. Lähdekoodista kääntäminen
  4. Ohjelman kotisivulta ladatun paketin oman asennusskriptin avulla

Ohjelmien asentaminen eri jakeluissa[muokkaa]

Seuraavassa on lyhyesti kerrottu, mitä työkaluja käyttäen ohjelmien asennus onnistuu eri jakeluissa. Tarkemmat ohjeet työkalujen käyttöön löytyvät kyseistä työkalua käsittelevistä artikkeleista.

Arch Linux[muokkaa]

Archissa paketinhallintaa hoitaa Pacman jonka graafisena edustaohjelmana on käytettävissä Shaman. Pacmanilla voi asentaa paketteja myös suoraan (pakettien pääte on .pkg.tar.gz).

Arch Linux sekä siihen pohjautuviin on myös mahdollista asentaa AUR:n kautta kolmannen osapuolen epävirallisia pakettivarastoja. Noudata erityistä varovaisuutta lisätessäsi niitä.

Debian[muokkaa]

Katso myös artikkeli Debian GNU/Linux#Debianin paketinhallinta

Debianissa käytetään dpkg-nimistä paketinhallintajärjestelmää. Paketteja voidaan asentaa graafisesti työpöytäasennuksen jälkeen valikoista löytyvällä Synaptic-sovelluksella josta kerrotaan tarkemmin artikkelissa Synaptic.

Komentoriviltä paketinhallintaa käytetään apt-get ja aptitude -sovelluksilla. Yksittäisiä .deb-paketteja voi asentaa dpkg tai GDebi -ohjelmilla.

Fedora[muokkaa]

Fedorassa RPM-paketinhallintaa käytetään yleensä DNF, yum- tai PackageKit-sovelluksilla. Tarkemmat ohjeet löytyvät artikkelista Fedora/Paketinhallinta.

Gentoo[muokkaa]

Gentoossa paketinhallintajärjestelmää käytetään lähes aina komentoriviltä käyttäen emerge-sovellusta. Myös graafisia työkaluja Gentoon paketinhallintaan on olemassa, muun muassa Porthole, Guitoo ja Portagemaster. Nämä ovat kuitenkin vielä enemmän tai vähemmän testivaiheessa.

Mandriva[muokkaa]

Mandrivassa paketinhallintajärjestelmää voidaan käyttää komentoriviltä URPMI-sovelluksella.

openSUSE[muokkaa]

openSUSEssa ohjelmia voi asentaa joko graafisesti YaST-työkalulla (Ohjelmistot --> Ohjelmistohallinta) tai tekstipohjaisesti Zypper-komentorivityökalulla. Ohjelmien asennustyökalun voi GNOMEssa käynnistäää valitsemalla Tietokone --> Asenna ohjelmistoja.

Ubuntu[muokkaa]

Koska Ubuntu pohjautuu Debianiin, paketinhallinta toimii samoin kuin Debianissa, mutta lisäksi käytössä on Ubuntun oma yksinkertaistettu Ubuntun sovellusvalikoima... -sovellus, joka löytyy nimellä Ubuntun sovellusvalikoima tai englanninkielisissä jakeluissa nimellä Ubuntu Software Center. Lisäksi on mahdollista käyttää Synapticia, joka pitää asentaa erikseen.

Ladatun .deb-paketin pystyy asentamaan kaksoisnapsauttamalla pakettia, jolloin Ubuntun sovellusvalikoima käynnistyy ja hoitaa asennuksen.

Komentoriviltä apt, apt-get, aptitude ja dpkg toimivat kuten Debianissa. Ubuntun ohjeista löytyy myös lisätietoja pakettien hallinnasta: käynnistä ohjekeskus (Ohjeet ja tuki tai englanniksi Help) ja valitse ohje Sovellusten lisääminen ja poistaminen. Lisäksi Ubuntu tutuksi -wikikirja esittelee kattavasti ohjelmien asentamista ja pakettilähteiden käyttöä.

Ubuntun pakettilähteet[muokkaa]

  • Main - Sisältää julkisesti tuetut ohjelmistot.
  • Restricted - Sisältää tuetut ohjelmistot, jotka eivät ole käytettävissä täysin ilmaisella lisenssillä.
  • Universe - Sisältää yhteisön ylläpitämät ohjelmistot, jotka eivät ole virallisesti tuettuja ohjelmistoja.
  • Multiverse - Sisältää ohjelmistot, jotka eivät ole vapaita.

Ubuntuun on myös mahdollista asentaa PPA:n kautta kolmannen osapuolen epävirallisia pakettivarastoja. Noudata erityistä varovaisuutta lisätessäsi niitä.

Kääntäminen lähdekoodista[muokkaa]

Katso artikkeli kääntäminen.

Perinteinen tapa ohjelmien asentamiseen on kääntäminen lähdekoodista. Jos mahdollista, ohjelma kannattaa kuitenkin asentaa käytetyn Linux-jakelun paketista, sillä:

  • Paketinhallinnan ohi asennetun paketin poistaminen voi olla hankalaa
  • Paketinhallintatyökalut eivät toimi oikein paketinhallinnan ohi asennettujen ohjelmien kanssa
  • Riippuvuuksia ei tarkisteta yhtä tarkasti
  • Paketti ei välttämättä toimi yhteen muun järjestelmän kanssa
  • Turvapäivityksistä joutuu huolehtimaan itse

Vapaan ohjelman olennainen ominaisuus on kuitenkin, että lähdekoodi on helposti käytettävissä. Jokaisesta jakelun vapaasta paketista on lähdekoodit saatavilla, niihin voi tehdä omat muutoksensa ja muokatun lähdekoodin voi itse kääntää ja koota paketiksi, joka on paketinhallinnan piirissä siinä missä virallinenkin versio. Jollei halua menettää tekemiään muutoksia, ne pitää kuitenkin itse siirtää mahdollisiin päivityksiin. Muutettu paketti kannattaa siksi paketinhallinnassa merkitä käsin päivitettäväksi ("hold" tms.).

Jos hakee lähdekoodin muualta kuin oman jakelun käytössä olevasta versiosta, joutuu itse huolehtimaan turvapäivityksistä ja paketin sopeuttamisesta jakeluun.

Rosetta[muokkaa]

Suosituimpien paketinhallintajärjestelmien tulkitsemisopas löytyy alla olevasta artikkelista:

Katso myös[muokkaa]