Ubuntu-pakethantering: APT och dpkg snabbguide
Viktiga APT- och dpkg-kommandon för Ubuntu-paket
Ubuntu’s pakethanteringssystem (https://www.glukhov.org/sv/post/2025/11/listing-installing-upgrading-packages-in-ubuntu-with-apt/ “Ubuntu’s pakethanteringssystem”) är ryggraden för programinstallation och underhåll, vilket gör det till grundläggande kunskap för varje Linux-användare eller systemadministratör.
Denna bild är genererad av AI-modellen Flux 1 dev.
Vad är APT-pakethantering?
APT (Advanced Package Tool) är Ubuntu’s primära pakethanteringssystem, ärvt från Debian. Det är ett kraftfullt kommandoradsverktyg för installation, uppgradering och borttagning av programpaket. APT hanterar beroendeuppfyllelse automatiskt, ansluter till Ubuntu’s officiella repositoryer och är den traditionella metoden för att hantera systempaket på Ubuntu och Debian-baserade distributioner. Om du är ny på Ubuntu, kolla in vår guide om hur man installerar Ubuntu 24.04 och användbara verktyg för att komma igång med ett korrekt konfigurerat system.
Nyckelkarakteristika:
- Naturligt för Ubuntu/Debian: Inbyggt, ingen extra installation behövs
- Delade bibliotek: Effektiv diskanvändning genom delade systemberoenden
- Manuella uppdateringar: Du kontrollerar när paket uppdateras
- Ingen sandboxning: Paket har full systemåtkomst (lämpligt för systemverktyg)
- Lättviktigt: Ingen bakgrundsdemon, körs endast när den anropas
- Moget ekosystem: Decennier av utveckling, extremt stabilt
Pakethanterare jämförelse
Ubuntu stöder flera pakethanteringssystem. Här är hur de huvudsakliga operationerna jämförs:
| Operation | APT | Snap | Flatpak |
|---|---|---|---|
| Sök | apt search keyword |
snap find keyword |
flatpak search keyword |
| Installera | sudo apt install package |
sudo snap install package |
flatpak install flathub app.id |
| Lista installerade | apt list --installed |
snap list |
flatpak list --app |
| Visa info | apt show package |
snap info package |
flatpak info app.id |
| Uppdatera alla | sudo apt update && sudo apt upgrade |
sudo snap refresh |
flatpak update |
| Uppdatera enskilt | sudo apt install --only-upgrade pkg |
sudo snap refresh package |
flatpak update app.id |
| Ta bort | sudo apt remove package |
sudo snap remove package |
flatpak uninstall app.id |
| Rensa upp | sudo apt autoremove |
snap remove --revision=N |
flatpak uninstall --unused |
| Repository | /etc/apt/sources.list |
Snap Store (inbyggt) | Lägg till med flatpak remote-add |
Snabb funktion jämförelse
| Funktion | APT | Snap | Flatpak |
|---|---|---|---|
| Automatiska uppdateringar | Nej | Ja | Nej |
| Sandboxning | Nej | Ja | Ja |
| Beroenden | Systembibliotek | Bundlade | Delade runtime-miljöer |
| Paketstorlek | Liten (5-50MB) | Stor (50-500MB) | Medel (20-200MB) |
| Root behövs | Ja | Ja | Nej (användarinstallation) |
| Startupplevelse | Snabb | Långsammare | Snabb |
| Bäst för | Systempaket | Universella appar | Skrivbordsappar |
Om denna guide
Denna guide fokuserar på APT (apt/apt-get/dpkg) - Ubuntu’s traditionella pakethanteringssystem. APT är essentiellt för att hantera systempaket, bibliotek och tjänster på Ubuntu och Debian-baserade system.
För andra pakethanterare:
- 📦 Snap Pakethanterare Guide - Universella paket med automatiska uppdateringar och sandboxning
- 📦 Flatpak Pakethanterare Guide - Tvärdistributionsskrivbordsprogram med detaljerade behörigheter
Varje pakethanterare har sina styrkor. Använd APT för systempaket och beroenden, Snap för tvärversionskompatibilitet och auto-uppdateringar, och Flatpak för skrivbordsprogram med finjusterade behörigheter.
APT Pakethantering - Detaljerad guide
Förstå APT vs apt-get
APT (apt) - Modernt val
Introducerad i Ubuntu 14.04, kombinerar apt funktioner från apt-get och apt-cache med förbättrad användarupplevelse:
Fördelar:
- Fortgångsindikatorer och färgad utdata
- Mer intuitiva kommandon
- Renare utdata för mänsklig läsbarhet
- Kombinerar flera verktygsfunktioner
När man ska använda: Dagliga interaktiva kommandoradsoperationer
apt-get - Traditionellt val
Det ursprungliga pakethanteringsverktyget, fortfarande vida använd:
Fördelar:
- Mer stabil API (bättre för skript)
- Bakåtkompatibilitet
- Förutsägbar utdataformat
- Mer detaljerad kontroll
När man ska använda: Skript, automatisering, äldre system
Pro Tip: För snabbare terminalnavigering och arbetsflödeseffektivitet, kolla in vår Ubuntu tangentbordsgenvägscheat för att öka din produktivitet när du hanterar paket.
Grundläggande pakethanteringskommandon
Uppdatera paketlistor
Uppdatera alltid paketlistor innan installation eller uppgradering:
# Uppdatera paketindex
sudo apt update
# Eller med apt-get
sudo apt-get update
Detta kommando uppdaterar den lokala databasen med information om tillgängliga paket och deras versioner från konfigurerade repositoryer.
Installera paket
Grundläggande installation:
# Installera ett paket
sudo apt install paketnamn
# Installera flera paket
sudo apt install paket1 paket2 paket3
# Installera specifik version
sudo apt install paketnamn=versionsnummer
Exempel:
# Installera Nginx webbserver
sudo apt install nginx
# Installera Python och pip
sudo apt install python3 python3-pip
# Installera byggverktyg
sudo apt install build-essential
# Installera systemövervakningsverktyg
sudo apt install htop
För specialiserade övervakningsbehov, såsom spårning av GPU-prestanda på system med NVIDIA-kort, kolla in vår guide om GPU-övervakningsprogram i Linux/Ubuntu.
Installera utan promptar (användbart för skript):
sudo apt install -y paketnamn
# Eller
sudo DEBIAN_FRONTEND=noninteractive apt install -y paketnamn
Installera från .deb fil:
# Metod 1: Använda apt (rekommenderas, hanterar beroenden)
sudo apt install ./paket.deb
# Metod 2: Använda dpkg
sudo dpkg -i paket.deb
sudo apt install -f # Åtgärda saknade beroenden
Anteckning: När du arbetar med nedladdade .deb-filer, kan du vilja använda en filhanterare med ett bra kontextmeny. Se vår jämförelse av filhanterare för Ubuntu 24.04 (Nautilus vs Nemo vs Dolphin vs Caja) för att hitta en som passar ditt arbetsflöde.
Uppgradera paket
Uppgradera installerade paket:
# Uppgradera alla paket (säkert, tar inte bort paket)
sudo apt upgrade
# Uppgradera specifikt paket
sudo apt install --only-upgrade paketnamn
# Fullständig uppgradering (kan ta bort paket för att lösa beroenden)
sudo apt full-upgrade
# Distributionsuppgradering (för majorversioner)
sudo apt dist-upgrade
Fullständig uppgraderingssekvens:
# Rekommenderad uppgraderingsprocedur
sudo apt update
sudo apt upgrade -y
sudo apt autoremove
sudo apt autoclean
Uppgradera Ubuntu-version:
# För LTS till nästa LTS
sudo do-release-upgrade
# För vilken version som helst
sudo do-release-upgrade -d
Lista paket
Lista installerade paket:
# Alla installerade paket
apt list --installed
# Med grep-filter
apt list --installed | grep paketnamn
# Räkna installerade paket
apt list --installed | wc -l
# Använda dpkg
dpkg -l
dpkg --list
dpkg -l | grep paketnamn
Lista uppgraderbara paket:
# Visa paket med tillgängliga uppdateringar
apt list --upgradable
# Detaljerad uppgraderingssimulering
apt list --upgradable -a
Lista alla tillgängliga paket:
# Alla paket i repositoryer
apt list
# Lista från specifikt repository
apt list | grep "källnamn"
Sök efter paket
Sök paketnamn och beskrivningar:
# Sök med apt
apt search sökord
# Case-insensitive sökning
apt search -i sökord
# Visa endast paketnamn
apt-cache search sökord
# Sök endast paketnamn (snabbare)
apt-cache search --names-only sökord
Exempel:
# Sök efter editor
apt search text editor
# Sök efter databas
apt search database
# Sök efter Python-paket
apt search python | grep python3
Visa paketinformation
Detaljerad paketinformation:
# Visa paketdetaljer
apt show paketnamn
# Använda apt-cache
apt-cache show paketnamn
# Visa paketberoenden
apt-cache depends paketnamn
# Visa omvända beroenden
apt-cache rdepends paketnamn
# Kontrollera paketpolicy och versioner
apt-cache policy paketnamn
# Visa paketstatistik
apt-cache stats
Kontrollera om paket är installerat:
# Metod 1
dpkg -s paketnamn
# Metod 2
dpkg -l paketnamn
# Metod 3
apt list --installed paketnamn
# Metod 4 (exitkod 0 om installerat)
dpkg-query -W paketnamn
Ta bort paket
Ta bort paket:
# Ta bort paket (behåll konfigureringsfiler)
sudo apt remove paketnamn
# Ta bort paket och konfigureringsfiler (rensa)
sudo apt purge paketnamn
# Ta bort med beroenden
sudo apt autoremove paketnamn
# Ta helt bort paket och konfigurationer
sudo apt purge paketnamn && sudo apt autoremove
Rensa upp system:
# Ta bort oanvända beroenden
sudo apt autoremove
# Ta bort med rensa
sudo apt autoremove --purge
# Ta bort nedladdade paketfiler
sudo apt clean
# Ta bort gamla versioner av paket
sudo apt autoclean
Kontrollera diskanvändning:
# Kontrollera cache-storlek
du -sh /var/cache/apt/archives
# Kontrollera total paketstorlek
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n
Pakethåll (förhindra uppgraderingar)
Håll paket:
# Håll paket på aktuell version
sudo apt-mark hold paketnamn
# Ta bort håll
sudo apt-mark unhold paketnamn
# Visa hållna paket
apt-mark showhold
# Håll flera paket
sudo apt-mark hold paket1 paket2 paket3
Användningsområde: Förhindra att specifika programversioner uppgraderas automatiskt.
Användning av dpkg - Lågnivåspakethanterare
dpkg är den underliggande pakethanteraren som APT använder:
Grundläggande dpkg-kommandon:
# Installera paket
sudo dpkg -i package.deb
# Ta bort paket
sudo dpkg -r package-name
# Rensa paket
sudo dpkg -P package-name
# Lista installerade paket
dpkg -l
# Lista filer i paket
dpkg -L package-name
# Hitta vilket paket som äger en fil
dpkg -S /path/to/file
# Kontrollera paketstatus
dpkg -s package-name
# Konfigurera om paket
sudo dpkg-reconfigure package-name
# Verifiera paketintegritet
dpkg -V package-name
Laga skadade paket:
# Konfigurera om skadade paket
sudo dpkg --configure -a
# Laga saknade beroenden
sudo apt install -f
# Tvinga ominstallation
sudo apt install --reinstall package-name
Repositoryhantering
Visning av repositories
Kontrollera konfigurerade repositories:
# Visa källlista
cat /etc/apt/sources.list
# Visa ytterligare källor
ls /etc/apt/sources.list.d/
# Visa alla aktiverade repos
grep -r --include '*.list' '^deb ' /etc/apt/
Lägga till repositories
Lägg till PPA (Personal Package Archive):
# Lägg till PPA-repository
sudo add-apt-repository ppa:user/ppa-name
sudo apt update
# Exempel: Lägg till Git PPA
sudo add-apt-repository ppa:git-core/ppa
sudo apt update
sudo apt install git
Lägg till repository manuellt:
# Lägg till repository till sources.list
echo "deb http://repository-url distribution component" | sudo tee -a /etc/apt/sources.list.d/custom.list
# Lägg till GPG-nyckel
wget -qO - https://example.com/key.gpg | sudo apt-key add -
# Uppdatera paketlistor
sudo apt update
Modern nyckelhantering (Ubuntu 22.04+):
# Ladda ner och lägg till nyckel till keyring
wget -qO - https://example.com/key.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/custom.gpg
# Lägg till signerat repository
echo "deb [signed-by=/etc/apt/keyrings/custom.gpg] http://repo-url dist component" | sudo tee /etc/apt/sources.list.d/custom.list
Ta bort repositories
# Ta bort PPA
sudo add-apt-repository --remove ppa:user/ppa-name
# Eller ta bort listfilen
sudo rm /etc/apt/sources.list.d/ppa-name.list
# Uppdatera
sudo apt update
Alternativa pakethanterare
Ubuntu stöder också Snap och Flatpak för universell applikationspaketering:
-
Snap: Se vår omfattande Snap Package Manager Guide för detaljerad information om installation, användning, kanaler, begränsningar och felsökning.
-
Flatpak: Se vår omfattande Flatpak Package Manager Guide för detaljerad information om installation, Flathub, behörigheter, runtime och hantering.
Avancerad pakethantering
Simulera operationer (Dry Run)
# Simulera installation
apt install -s package-name
# Simulera uppgradering
apt upgrade -s
# Visa vad som skulle installeras
apt-cache showpkg package-name
Ladda ner paket utan installation
# Ladda ner endast paket
apt download package-name
# Ladda ner med beroenden
apt install --download-only package-name
# Ladda ner till specifik katalog
cd /path/to/dir
apt download package-name
Hitta paketfiler
# Vilket paket tillhandahåller en fil
dpkg -S /path/to/file
# Sök efter filer i paket (inklusive icke-installerade)
apt-file search filename
# Installera apt-file först
sudo apt install apt-file
sudo apt-file update
Paketpinning
Skapa /etc/apt/preferences för att kontrollera paketversioner:
# Pinna paket till specifik version
sudo nano /etc/apt/preferences
Lägg till:
Package: package-name
Pin: version 1.2.3*
Pin-Priority: 1001
Kontrollera paketsäkerhetsrisker
# Kontrollera säkerhetsuppdateringar
sudo apt list --upgradable | grep security
# Kontrollera specifikt paket för CVEs
apt-cache policy package-name
Felsökning av vanliga problem
Laga skadade paket
# Metod 1: Laga beroenden
sudo apt install -f
# Metod 2: Konfigurera om paket
sudo dpkg --configure -a
# Metod 3: Rensa och uppdatera
sudo apt clean
sudo apt update
sudo apt upgrade
# Metod 4: Tvinga lagning
sudo apt --fix-broken install
Laga “låst” databas
# Ta bort låsfilerna (endast om inga apt-processer körs!)
sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/dpkg/lock
sudo rm /var/cache/apt/archives/lock
sudo dpkg --configure -a
Kontrollera för körande processer först:
ps aux | grep -i apt
sudo lsof /var/lib/dpkg/lock-frontend
Hash Sum Mismatch-fel
# Rensa cache och försök igen
sudo apt clean
sudo rm -rf /var/lib/apt/lists/*
sudo apt update
GPG/Nyckelfel
# Lägg till nyckel igen
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID
# Eller ladda ner nyckel
wget -qO - https://repo-url/key.gpg | sudo apt-key add -
# Modern metod (Ubuntu 22.04+)
wget -qO - https://repo-url/key.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/repo.gpg
Ej uppfyllda beroenden
# Försök aptitude (bättre beroendelösare)
sudo apt install aptitude
sudo aptitude install package-name
# Eller manuell lösning
sudo apt install package-name package-dependency
Repository hittades inte (404)
# Uppdatera till korrekt repository
sudo nano /etc/apt/sources.list
# Ändra gammalt utgivningsnamn till aktuellt
# Eller ta bort föråldrad PPA
sudo add-apt-repository --remove ppa:name/ppa
Bäst praxis
Reguljär underhåll
Veckorutin:
#!/bin/bash
# Systemuppdateringsskript
echo "Uppdaterar paketlistor..."
sudo apt update
echo "Uppgraderar paket..."
sudo apt upgrade -y
echo "Tar bort onödiga paket..."
sudo apt autoremove -y
echo "Rensar paketcache..."
sudo apt autoclean
echo "Uppdatering klar!"
Säkerhetsuppdateringar
Auto-uppdateringar för säkerhetsuppdateringar:
# Installera unattended-upgrades
sudo apt install unattended-upgrades
# Konfigurera
sudo dpkg-reconfigure unattended-upgrades
# Redigera konfiguration
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
Serverkonfiguration: Om du hanterar Ubuntu Server är korrekt nätverkskonfiguration avgörande för pålitliga pakethämtningar och systemuppdateringar. Lär dig hur man ändrar en statisk IP-adress i Ubuntu Server för att säkerställa stabil anslutning för dina pakethanteringsoperationer.
Backup av paketlista
Exportera installerade paket:
# Skapa backup
dpkg --get-selections > ~/package-list.txt
# Eller med explicita installerade paket
apt-mark showmanual > ~/manually-installed.txt
# Återställ på annat system
sudo dpkg --set-selections < ~/package-list.txt
sudo apt-get dselect-upgrade
Kontrollera systemhälsa
# Kontrollera för skadade beroenden
sudo apt check
# Verifiera alla paket
sudo debsums -c
# Kontrollera systemloggar
journalctl -xe | grep -i apt
tail -f /var/log/apt/history.log
Prestandaoptimering
Snabbare pakethämtningar
Aktivera parallella hämtningar:
Redigera /etc/apt/apt.conf.d/99parallel:
echo 'Acquire::Queue-Mode "host";' | sudo tee /etc/apt/apt.conf.d/99parallel
echo 'Acquire::http::Pipeline-Depth "5";' | sudo tee -a /etc/apt/apt.conf.d/99parallel
Använd snabbast spegel:
# Installera apt-fast
sudo add-apt-repository ppa:apt-fast/stable
sudo apt update
sudo apt install apt-fast
# Använd apt-fast istället för apt
sudo apt-fast install package-name
Minska cache-storlek
# Begränsa cache till 100MB
echo 'APT::Archives::MaxSize "100";' | sudo tee /etc/apt/apt.conf.d/99max-cache
Användbara pakethanteringsskript
Uppdatera alla pakethanterare
#!/bin/bash
# Uppdatera alla pakethanterare
echo "=== APT Uppdatering ==="
sudo apt update && sudo apt upgrade -y
echo "=== Snap Uppdatering ==="
sudo snap refresh
echo "=== Flatpak Uppdatering ==="
flatpak update -y
echo "Alla system uppdaterade!"
Hitta stora paket
# Lista största installerade paket
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -nr | head -20
# Eller mer läslig format
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -nr | head -20 | awk '{printf "%.2f MB\t%s\n", $1/1024, $2}'
Paketaudit
#!/bin/bash
# Paketsystemaudit
echo "=== Systempaketstatistik ==="
echo "Installerade paket: $(dpkg -l | grep ^ii | wc -l)"
echo "Uppgraderbara paket: $(apt list --upgradable 2>/dev/null | grep -c upgradable)"
echo "Hållna paket: $(apt-mark showhold | wc -l)"
echo "Auto-borttagbara: $(apt autoremove --dry-run | grep -Po '^\d+')"
echo "Cache-storlek: $(du -sh /var/cache/apt/archives | cut -f1)"
Snabb referensguide
Viktiga kommandon:
# Uppdatera & Uppgradera
sudo apt update && sudo apt upgrade -y
# Installera paket
sudo apt install package-name
# Ta bort paket
sudo apt remove package-name
# Sök paket
apt search keyword
# Visa paketinformation
apt show package-name
# Lista installerade
apt list --installed
# Rensa system
sudo apt autoremove && sudo apt autoclean
# Laga skadade paket
sudo apt install -f && sudo dpkg --configure -a
Slutsats
Att behärska Ubuntus pakethanteringssystem är avgörande för effektiv systemadministration. Oavsett om du använder det moderna apt-kommandot för interaktiva sessioner, apt-get för skriptning eller utforskar universella paket med Snap och Flatpak, hjälper förståelsen av dessa verktyg dig att upprätthålla ett säkert, uppdaterat och välorganiserat Ubuntu-system.
Börja med de grundläggande kommandona, inför gradvis avancerade tekniker och se alltid till att ditt system är uppdaterat. Reguljär underhåll kombinerat med bästa praxis säkerställer en smidig och pålitlig Ubuntu-upplevelse.
Pro-tips: Kör alltid sudo apt update innan du installerar eller uppgraderar paket för att säkerställa att du arbetar med den senaste paketinformationen!
Användbara länkar
- Officiell Ubuntu-dokumentation
- APT Användarhandledning
- Ubuntu Paketsökning
- Snap Store
- Flathub Repository
- Debian Administratörshandbok
- Ubuntu Server Guide
- Man-sidor:
man apt,man apt-get,man dpkg