Ubuntu logo

Pakkehandtering i Ubuntu

Lær hvordan du installerer og administrerer programvare med APT

Om APT og APT-GET

Ubuntu bruker APT (Advanced Package Tool) for å håndtere programvare. APT gjør det enkelt å:

  • Installere nye programmer
  • Oppdatere eksisterende programmer
  • Oppgradere hele systemet
  • Fjerne uønskede programmer
Tips: apt er en nyere og mer brukervennlig versjon av apt-get. For daglig bruk anbefales apt, men begge kommandoene fungerer like bra.

Systemoppdateringer og grunnleggende pakkehandtering

Før du installerer eller oppdaterer programvare, er det viktig å oppdatere pakkelisten. Dette gjør du med apt update. Deretter kan du oppgradere alle installerte pakker med apt upgrade.
$ sudo apt update
Hit:1 http://no.archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://no.archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB]
Get:3 http://no.archive.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
7 packages can be upgraded. Run 'apt list --upgradable' to see them.

$ sudo apt upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
  firefox linux-firmware systemd systemd-timesyncd
7 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 79.8 MB of archives.
After this operation, 2,048 B of additional disk space will be used.
Do you want to continue? [Y/n] y
...
For å søke etter tilgjengelige pakker kan du bruke apt search. Dette vil søke i pakkenavnene og beskrivelsene. Bruk apt show for å se detaljert informasjon om en spesifikk pakke.
$ apt search nginx
Sorting... Done
Full Text Search... Done
nginx/jammy-updates 1.18.0-6ubuntu14.4 all
  small, powerful, scalable web/proxy server

nginx-common/jammy-updates 1.18.0-6ubuntu14.4 all
  small, powerful, scalable web/proxy server - common files

nginx-core/jammy-updates 1.18.0-6ubuntu14.4 amd64
  nginx web/proxy server (standard version)

$ apt show nginx
Package: nginx
Version: 1.18.0-6ubuntu14.4
Priority: optional
Section: web
Origin: Ubuntu
...
Description: small, powerful, scalable web/proxy server
 Nginx ("engine X") is a high-performance web and reverse proxy server
 created by Igor Sysoev. It can be used both as a standalone web server
 and as a proxy to reduce the load on back-end HTTP or mail servers.

Installere og fjerne programvare

For å installere programvare bruker du apt install. Du kan installere flere pakker samtidig ved å liste dem opp etter hverandre. Flagget -y kan brukes for å automatisk svare "ja" på spørsmål.
$ sudo apt install nginx
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  nginx-common nginx-core
Suggested packages:
  fcgiwrap nginx-doc
The following NEW packages will be installed:
  nginx nginx-common nginx-core
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 548 kB of archives.
After this operation, 1,878 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
...
For å fjerne programvare har du to valg: apt remove fjerner selve programvaren men beholder konfigurasjonsfiler, mens apt purge fjerner både programvaren og alle tilhørende konfigurasjonsfiler.
$ sudo apt remove nginx
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be REMOVED:
  nginx nginx-core
0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
After this operation, 1,878 kB disk space will be freed.
Do you want to continue? [Y/n] y
...

$ sudo apt purge nginx
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be REMOVED:
  nginx* nginx-common* nginx-core*
0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
After this operation, 1,997 kB disk space will be freed.
Do you want to continue? [Y/n] y
...

Håndtere pakkekilder (repositories)

Ubuntu bruker repositories for å distribuere programvare. Du kan legge til ekstra repositories, for eksempel PPAs (Personal Package Archives), for å få tilgang til programvare som ikke finnes i standardarkivene.
$ sudo add-apt-repository ppa:ondrej/php
Adding repository...
 Co-installable PHP versions: PHP 5.6, PHP 7.x and most requested extensions are included.
...
Press [ENTER] to continue or Ctrl+c to cancel adding it.

Repository added! Please update your package lists:

$ sudo apt update
Hit:1 http://ppa.launchpad.net/ondrej/php/ubuntu jammy InRelease
...
OBS! Vær forsiktig med å legge til ukjente pakkekilder, da disse kan inneholde skadelig programvare. Bruk kun betrodde kilder og verifiser alltid kilden før du legger den til.

Feilsøking og vedlikehold

Noen ganger kan pakkeinstallasjoner feile eller bli avbrutt. Her er noen nyttige kommandoer for å fikse vanlige problemer.
$ sudo apt --fix-broken install
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Correcting dependencies... Done

$ sudo dpkg --configure -a
Setting up python3-pip (22.0.2+dfsg-1) ...
Setting up python3-setuptools (59.6.0-1.2) ...

$ sudo apt clean
$ sudo apt autoclean
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Hvis APT er låst fordi en annen prosess bruker den, kan du finne den blokkerende prosessen eller fjerne låsefilene (kun hvis du er sikker på at ingen apt-prosesser kjører).
$ ps aux | grep -i apt
root      2345  0.0  0.1 236496  8456 ?        Ssl  10:35   0:00 /usr/bin/apt-get update
user      2789  0.0  0.0  10680   736 pts/0    S+   10:36   0:00 grep --color=auto -i apt

$ sudo rm /var/lib/apt/lists/lock
$ sudo rm /var/cache/apt/archives/lock
$ sudo rm /var/lib/dpkg/lock*
Tips for vellykket pakkehandtering:
  • Kjør alltid sudo apt update før du installerer nye pakker
  • Les nøye gjennom hvilke pakker som vil bli installert eller fjernet
  • Ta backup av viktige konfigurasjonsfiler før store systemoppgraderinger
  • Bruk apt show pakkename for å lese om pakken før installasjon
  • Hold systemet regelmessig oppdatert med sudo apt update && sudo apt upgrade