Zurückbehaltene Pakete unter Ubuntu aktualisieren

Unter Umständen kann es vorkommen, das bei einer Paketaktualisierung mittels apt folgende Meldung erscheint:

The following packages have been kept back:
grub-efi-amd64 grub-efi-amd64-bin grub-efi-amd64-signed gzip php8.1-bcmath php8.1-cli php8.1-common php8.1-curl php8.1-fpm php8.1-gd php8.1-gmp php8.1-imap php8.1-intl php8.1-mbstring php8.1-mysql php8.1-opcache php8.1-phpdbg php8.1-readline php8.1-sqlite3 php8.1-xml php8.1-zip
0 upgraded, 0 newly installed, 0 to remove and 21 not upgraded.

Grund für diese Meldung kann unter anderem sein, das in der Abhängigkeitskette für eines der Pakete ein neues Paket dazugekommen ist. Daneben werden Pakete in der gleichen Version im Normalfall nicht noch einmal aktualisiert. Soll ein solches zurückgehaltenes Paket trotzdem installiert bzw. aktualisiert werden, so kann hierfür folgender Befehl genutzt werden:

apt install --only-upgrade php8.1-zip

Anschließend wird das Paket aktualisiert. Allerdings sollte diese Option mit Bedacht gewählt werden, da es unter Umständen zu Änderungen kommen kann, welche das System bzw. Teile davon in einem nicht funktionsfähigen Zustand zurücklassen, sodass anschließend nachkonfiguriert werden muss.

Probleme beim Nextcloud-Update nach einer Unterbrechung

Beim Update einer Nextcloud-Instanz wurde der Prozess des Updates beim Download der neuen Version unterbrochen. Anschließend tauchte die Meldung:

Step 4 is currently in process. Please reload this page later.

beim erneuten Aufruf des Updaters auf. Um diese Meldung zu beheben, sollte in das Datenverzeichnis der Nextcloud-Instanz gewechselt werden (meist trägt dieses den Namen data) und dort der Ordner beginnend mit der Zeichenkette updater- aufgerufen werden. In diesem Ordner befinden sich eine Datei mit dem Namen .step. Nachdem diese Datei gelöscht wurde, kann der Updater wieder geöffnet und der Vorgang erneut gestartet werden.

Livepatching unter Ubuntu aktivieren

Nach einer Aktualisierung des Linux-Kernels muss der entsprechende Rechner in vielen Fällen neugestartet werden, damit die Änderung wirksam wird. Mithilfe von Livepatching können solche Änderungen des Kernels zur Laufzeit vorgenommen werden.

ubuntu.com/livepatch

Für Ubuntu-Installationen wird hierzu ein Ubuntu-One-Konto benötigt. Für den persönlichen Gebrauch können bis zu drei Systeme mit der Livepatching-Funktionalität versehen werden. Dazu muss ein entsprechendes Token unter ubuntu.com/livepatch bezogen werden. Anschließend kann die Livepatching-Funktionalität über Snap installiert und aktiviert werden:

snap install canonical-livepatch
canonical-livepatch enable abcdefghijklmnopqrstuvwxyz123456

Successfully enabled device. Using machine-token: abcdefghijklmnopqrstuvwxyz123456

Damit ist das Livepatching auf dem System aktiviert. Über den Befehl:

canonical-livepatch status

kann der aktuelle Status des Livepatching eingesehen werden:

last check: 43 minutes ago
kernel: 4.15.0-101.102-generic
server check-in: succeeded
patch state: ✓ all applicable livepatch modules inserted
patch version: 70.1

Standardmäßig wird alle sechzig Minuten überprüft, ob neue Patches vorliegen. Über den Befehl:

canonical-livepatch help

werden die weiteren Möglichkeiten des canonical-livepatch-Kommandos erklärt und auf die entsprechende Konfiguration der Livepatching-Funktionalität eingegangen.

MikroTik-Router über das Terminal aktualisieren

Anfang des letzten Jahres schrieb ich einen Artikel darüber, wie ein MikroTik-Router über das Webinterface aktualisiert werden kann. Neben der Aktualisierung über das Webinterface, kann dieser Prozess auch direkt über das Terminal durchgeführt werden. Dazu muss sich per SSH mit dem Gerät verbunden werden:

ssh admin@192.168.1.1

Nachdem der Prompt erschienen ist, werden im ersten Schritt die Pakete aktualisiert und anschließend das System neu gestartet:

/system package update check-for-updates
/system package update download
/system reboot

Der Neustart des Routers muss hierbei bestätigt werden. Anschließend startet das System neu und installiert die aktuellen Pakete. Nach spätestens einigen Minuten sollte der Router wieder verfügbar sein, sodass sich wieder per SSH mit diesem verbunden werden kann. Im letzten Schritt wird der Bootloader des Routers aktualisiert. Die aktuelle Version kann hierbei über den Befehl:

/system routerboard print

eingesehen werden. Dabei werden eine Reihe von Informationen ausgegeben:

routerboard: yes
board-name: hAP lite
model: RouterBOARD 941-2nD
serial-number: XXXXXXXXXXXX
firmware-type: qca9531L
factory-firmware: 3.33
current-firmware: 3.33
upgrade-firmware: 6.46.1

Interessant ist hier vor allem der Eintrag current-firmware. Das eigentliche Update wird mit dem Befehl:

/system routerboard upgrade

nach einer Sicherheitsabfrage durchgeführt. Anschließend muss das System abermals neu gestartet werden:

/system reboot

Nachdem Neustart ist der Router damit auf die aktuellste Version aktualisiert.

MikroTik-Router über die Weboberfläche aktualisieren

Seit einigen Jahren nutze ich Router von MikroTik. Diese Router verfügen über ein sehr gutes Preis-/Leistungsverhältnis und bieten eine große Bandbreite an Funktionalität. Die Konfiguration kann über die Windows-Applikation Winbox, das Webinterface oder über das Terminal vorgenommen werden. Soll der Router über das Webinterface auf die neuste Version gebracht werden, so muss sich im ersten Schritt eingeloggt werden.

Über das Webinterface werden die Pakete aktualisiert

Anschließend wird über die WebFig-View der Punkt System und dort der Punkt Packages ausgewählt. Dort kann nun der Download&Install-Button genutzt werden, um das Update durchzuführen. Nach der anschließenden Bestätigung wird das Update durchgeführt und der Router neugestartet.

Im zweiten Schritt wird die Firmware aktualisiert

Nachdem die Pakete aktualisiert wurden, kann nun die Firmware aktualisiert werden. Dazu wird im Menü der Punkt System und dort der Unterpunkt Routerboard ausgewählt. Über den Button Upgrade kann die Aktualisierung der Firmware, nach einer Sicherheitsabfrage, gestartet werden. Anschließend sollte der Router über den Punkt System und den Unterpunkt Reboot neugestartet werden. Hintergrund ist, dass die alte Firmware bis zum Neustart bestehen bleibt.