Linux updaten
Im letzten Kapitel Linux Server sicher machen haben wir die Firewall aktiviert und den Benutzer tom
mit sudo
Rechten angelegt. Außerdem haben wir eine schlüsselbasierte Authentifizierungsmethode konfiguriert, einen Schutz gegen DoS Attacken installiert und den SSH Port umgestellt.
In diesem Kapitel kommen wir endlich dazu das Betriebssystem und die installierte Software auf den neuesten Stand zu bringen. Die Updates hätten wir genauso gut schon gleich zu Anfang installieren können. Ich halte es jedoch für sinnvoller erst den Server abzusichern, bevor die IP quer durch das Internet gesendet wird.
Als Paketmanager benutzen wir das Advanced Packaging Tool (APT). Das Werkzeug apt
ist eine Weiterentwicklung von apt-get
. Du wirst wahrscheinlich im Internet häufiger von apt-get
lesen, weil es nach wie vor benutzt wird. Beide basieren übrigens auf dem Paketmanagement von Debians dpkg
(Debian Package Manager), was Dir hier und dort auch über den Weg laufen wird.
Paketverwaltungssystem APT
Der Befehl apt
kann Programmpakete suchen, installieren, löschen, aktualisieren und alles andere, was ein Paketmanager können muss.
Uns interessieren vor allem:
apt list
apt update
apt upgrade
apt autoremove
apt clean
update
und upgrade
sind zu Anfang etwas verwirrend, weil update
nicht die Pakete aktualisert, sondern lediglich die Paketliste. Über eine Datenbank werden alle Pakete verwaltet. Eine dort gespeicherte Paketliste spiegelt wider, welche Pakete auf dem System installiert sind und auch von welchen anderen Paketen sie abhängig sind. Die Paket Versionen müssen jedoch nicht mit den tatsächlich installierten übereinstimmen. Erst mit upgrade
werden die Paketversionen, entsprechend der Paketliste heruntergeladen und installiert.
Paketliste aktualisieren: update
Pakete aktualisieren: upgrade
Paketlisten
Der Parameter list --installed
zeigt Pakete, die installiert sind:
__$ sudo apt list --installed
Die Ausgabe kann mit einem Paketnamen oder wie so oft bei Linux, mit einem Platzhalter (*
) gefiltert werden:
__$ sudo apt list --installed opens*
Die Ausgabe sieht in etwa so aussehen:
Listing... Done
openssh-client/focal-updates,now 1:8.2p1-4ubuntu0.3 amd64 [installed,automatic]
openssh-server/focal-updates,now 1:8.2p1-4ubuntu0.3 amd64 [installed]
openssh-sftp-server/focal-updates,now 1:8.2p1-4ubuntu0.3 amd64 [installed,automatic]
openssl/focal-security,now 1.1.1f-1ubuntu2.8 amd64 [installed,upgradable to: 1.1.1f-1ubuntu2.9]
--upgradeable
zeigt für welche Pakete neue Versionen verfügbar sind:
__$ sudo apt list --upgradeable
Update und Upgrade
Dann legen wir mal los und aktualisieren die Paketliste:
__$ sudo apt update
Die aktualisierte Paketliste entscheidet darüber, welche Pakete mit upgrade
heruntergeladen und installiert werden sollen:
__$ sudo apt upgrade -y
Während der Installationsvorbereitung wird für gewöhnlich gefragt, ob die Installation wirklich vollzogen werden soll. Das würde mit der Taste y
bestätigt werden müssen. Der Parameter -y
greift da vor und bestätigt die Anfrage automatisch.
Wenn dieser Prozess durchgelaufen ist, sind alle "Updates" installiert.
Aufräumen mit autoremove und clean
Pakete können von anderen Paketen abhängig sein. Diese Abhängigkeiten werden automatisch mitinstalliert. Allerdings bleiben sie zurück, wenn das "Hauptpaket" entfernt wird. autoremove
sucht verwahrloste Pakete und löscht diese.
__$ sudo apt autoremove
Installationsdateien landen in dem Archiv Ordner /var/cache/apt/archives/
. Mit clean
lässt sich dieser bereinigen. Das spart Speicherplatz und macht ein späteres Backup schlanker.
__$ sudo apt clean