Ubuntu anvender Debians pakkesystem dpkg (Debian package management system), som bliver administreret af programmet apt (Advances Packaging tool). Gevinsten ved at bruge kommandolinien er et stærkt og fleksibelt værktøj til at administrere ens programmer.
apt har en konfigurationsfil (/etc/apt/sources.list), der henviser til nogle repositories (programbiblioteker) på Internettet. Når man beder apt om at installeret et program søger det efter filerne i disse repositories. Man kan tilføje flere repositories enten ved at tilføje dem til etc/apt/sources.list eller ved at tilføje PPA'er (Personal Package Archieve) som er mindre pakkearkiver oprettet af private eller programudbydere.
Eksempler:
Man bør opdatere sine repositories og have alle programmer på computeren opdateret før man installerer nye programmer. Det er især vigtigt at opdatere hvis man lige har tilføjet nye repositories eller PPA'er, da de ellers ikke vil blive anvendt.
man-page: apt http://manpages.ubuntu.com/manpages/xenial/en/man8/apt.8.html
Det hænder at apt fejler. Når dette sker kan det være nødvendigt at få apt til at reconfigurere sig selv. Det gøres med kommandoen:
sudo dpkg --configure -a
Når apt er geninitialiseret kan man genstarte processen ved at sætte -f på:
sudo apt install -f
Generelt administreres tjenester på på Ubuntu med service kommandoen. Den fungerer efter nedestående skabelon:
service {start|stop|reload|restart|force-reload|status} [tjeneste]
Det som de forskellige muligheder gør er:
Ønsker du f.eks. at genstarte bind9 tjenesten gøres det med kommandoen:
service restart bind9
For at tjekke om en tjeneste kører
service status bind9
tj@server1:~$ systemctl status bind9
● bind9.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
man-page: service http://manpages.ubuntu.com/manpages/trusty/en/man8/service.8.html
Ubuntu beholder de gamle kerner der ligger på systemet, så de kan anvendes til at boote med. Dette er en sikkerhedsfeature, da man risikerer at nye kerner indeholder fejl, eller mangler funktionalitet som dine programmer anvender. De fylder dog en del.
De kan fjernes med følgende kommando (en linie):
sudo apt purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve $(uname -r | sed -r 's/-[a-z]+//') | sed ':a;N;$!ba;s/\n/ /g')
tj@server1:~$ sudo apt purge $(dpkg -l linux-{image,headers}-"
[0-9]*" | awk '/ii/{print $2}' | grep -ve $(uname -r | sed -r 's/-[a-z]+//')
| sed ':a;N;$!ba;s/\n/ /g')
Indlæser pakkelisterne... Færdig
Opbygger afhængighedstræ
Læser tilstandsoplysninger... Færdig
Følgende pakker vil blive AFINSTALLERET:
linux-generic-lts-utopic* linux-headers-3.16.0-30*
linux-headers-3.16.0-30-generic* linux-headers-3.16.0-46*
linux-headers-3.16.0-46-generic* linux-headers-generic-lts-utopic*
linux-image-3.16.0-30-generic* linux-image-3.16.0-46-generic*
linux-image-extra-3.16.0-30-generic* linux-image-extra-3.16.0-46-generic*
linux-image-generic-lts-utopic*
0 opgraderes, 0 nyinstalleres, 11 afinstalleres og 0 opgraderes ikke.
Efter denne handling, vil 559 MB diskplads blive frigjort.
Vil du fortsætte? [J/n]
Når apt administrerer programmer sker det ved at, at det henter programmet og de programmer der også skal installeres fra disse repositories. Det kan ske fra de officielle repositories som main, partner, universe, restricted osv. Det er også muligt at oprette sine egne repositories ved hjælp af PPA'er da de officielle repositories kan være ret konservative og kun tilbyde ældre versioner af nogle programmer. Man kan sørge for køre med de nyste versioner af sin software ved hjælp af PPA'er.
Det kan være nødvendigt, hvis man (som jeg) anvender LTS-versionerne (Long Term Support) af Ubuntu, så man f.eks. har den nyeste version af Libreoffice, GIMP'en og andre programmer man anvender.
Herunder vil du lære at aktivere, tilføje og fjerne repositories ved hjælp af at redigere i konfigurationsfilen /etc/apt/sources.list og ved at anvende kommandolinien.
Når man har tilføjet eller ændret i repositories skal man først "aktivere" dem. Det gøres ved at køre
sudo apt update
Kører man med LTS-versionerne, så kan det være nødvendigt at lave en dist-upgrade, hvor man opdatere de centrale dele af sit system. På den måde får man fordelene ved ikke-LTS'erne uden at miste de 5 års sikkerhedsopdateringen.
Kør kommandoen:
apt dist-upgrade -y
Et repository bliver konfigureret ved hjælp af en "dev" linie, som ser ud som herunder:
deb http://extras.ubuntu.com/ubuntu xenial mainLinien fortæller hvor den er placeret, hvilken distribution det drejer sig om og hvad repositoriet hedder. Læg mærke til at nogle af linierne starter med deb-src. src står for source og giver adgang til programmernes kildekode. Du skal kun bruge dem hvis du er programmør og udvikler.
Da ubuntu blev installeret blev /etc/apt/sources.list konfigureret med standard repositories. Det betyder bl.a. at "partner" repositoriet er deaktiveret. I dette reposiory ligger der proporitære og closed-source programmer som kan være praktiske at få adgang til. Det skal vi have ændret. Åbn /etc/apt/sources.list med nano.
nano /etc/apt/sources.list
## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu xenial partner <-- denne linie skal ændres
# deb-src http://archive.canonical.com/ubuntu xenial partner
## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
deb http://extras.ubuntu.com/ubuntu xenial main
deb-src http://extras.ubuntu.com/ubuntu xenial main
Som du kan se herover har flere af linierne et # foran sig. Det betyder at de er udkommenteret, og derfor ikke bliver læst af programmet. Her vil vi aktivere partner.
Find linien hvor der står
# deb http://archive.canonical.com/ubuntu xenial partnerFjern # og gem filen.
deb http://archive.canonical.com/ubuntu xenial partnerDer findes en række repositories som er generelle for Ubuntu og Debian distributioner, og som bliver vedligeholdt til at tjene specifikke distributioner. Det hænder dog at man gerne vil have andre versioner af programmerne end disse repositories tilbyder. Dette bliver løst ved hjælp af PPA'er.
Nedestående kommando tilføjer PPA linien og sikkerhedsnøgler til systemet.
add-apt-repository PPA:[PPA navn] -y
Hvis man f.eks. ønsker at have den nyeste version af GIMP'en installeret anvender man PPA'en ppa:otto-kesselgulasch/gimp. Den aktiveres med følgende kommando:
add-apt-repository ppa:otto-kesselgulasch/gimp -y
Herefter vil commandoen oprette to nye filer i mappen /etc/apt/sources.list.d, så apt fremover kigger i dette arkiv også. Dem kan vi se med følgende kommando:
ls -a /etc/apt/sources.list.d | grep otto
otto-kesselgulasch-gimp-trusty.list
otto-kesselgulasch-gimp-trusty.list.save
Lad os kigge på indholdet af .list-filen:
cat /etc/apt/sources.list.d/otto-kesselgulasch-gimp-trusty.list
### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb http://ppa.launchpad.net/otto-kesselgulasch/gimp/ubuntu xenial main
PPA'er er nemme at fjerne manuelt. fremgangsmåden er:
Herunder fjerner jeg program og PPA til skype for linux.
Fjern programmet
sudo apt purge skypeforlinux
Indlæser pakkelisterne... Færdig
Opbygger afhængighedstræ
Læser tilstandsoplysninger... Færdig
Følgende pakker vil blive AFINSTALLERET:
skypeforlinux*
0 opgraderes, 0 nyinstalleres, 1 afinstalleres og 0 opgraderes ikke.
Efter denne handling, vil 167 MB diskplads blive frigjort.
Vil du fortsætte? [J/n] j
(Læser database ... 200478 filer og kataloger installeret i øjeblikket.)
Afinstallerer skypeforlinux (5.3.0.1) ...
Behandler udløsere for desktop-file-utils (0.22-1ubuntu5.1) ...
Behandler udløsere for gnome-menus (3.13.3-6ubuntu3.1) ...
Behandler udløsere for mime-support (3.59ubuntu1) ...
Behandler udløsere for hicolor-icon-theme (0.15-0ubuntu1) ...
Dan et overblik over de installerede PPA'er.
ls /etc/apt/sources.list.d
geany-dev-ubuntu-ppa-xenial.list
geany-dev-ubuntu-ppa-xenial.list.save
google-chrome.list
google-chrome.list.save
graphics-drivers-ubuntu-ppa-xenial.list
graphics-drivers-ubuntu-ppa-xenial.list.save
otto-kesselgulasch-ubuntu-gimp-xenial.list
otto-kesselgulasch-ubuntu-gimp-xenial.list.save
pmjdebruijn-ubuntu-darktable-release-xenial.list
pmjdebruijn-ubuntu-darktable-release-xenial.list.save
skype-stable.list
skype-stable.list.save
virtualbox.list
virtualbox.list.save
Fjern herefter de konkrete PPA'er ved hjælp af rm. Læg mærke til at jeg sætter * efter kommandoen for både at få .list og .list.save.
sudo rm /etc/apt/sources.list.d/skype-stable.*
Opdater apt
sudo apt update
Så er Skype for linux væk fra din computer.