Aktualisierungsskript für Ubuntu-Rechner

Für Ubuntu-Rechner habe ich es mir seit vielen Jahren angewöhnt ein Skript upgrade.sh zu erzeugen, welches installierte Pakete auf den aktuellen Stand bringt:

#!/bin/sh
apt autoremove -y && apt autoclean -y && apt update && apt full-upgrade -y && apt autoremove -y && apt autoclean -y
snap refresh

Bei apt wird autoremove und autoclean vor und nach dem Upgrade aufgerufen, um bei Systemen mit wenig Speicherplatz für möglichst viel freien Platz zu sorgen. Technisch unspektakulär, aber eine zuverlässige kleine Routine, die die Systempflege deutlich erleichtert.

Firmware-Update unter Arch Linux durchführen

Um ein Firmware-Upgrade unter Arch Linux durchzuführen, kann das Werkzeug fwupdmgr genutzt werden. Dazu sollten im ersten Schritt die aktuellen Metadaten bezogen werden:

fwupdmgr refresh

Nachdem dies geschehen ist, können die aktuellen Updates bezogen werden:

fwupdmgr get-updates

Als letzter Schritt steht die Installation der Aktualisierungen über den Befehl:

fwupdmgr update

an. Je nach installierter Aktualisierung kann anschließend ein Neustart notwendig sein.

Shelly Plug S mit HomeKit-Unterstützung nachrüsten

Der Shelly Plug S unterstützt, wie andere Shelly-Geräte, von sich aus kein HomeKit. Allerdings existiert eine alternative Firmware, über welche diese Unterstützung nachgerüstet werden kann.

Der Shelly Plug S

Zur Installation muss ermittelt werden, unter welcher IP-Adresse der Shelly Plug S erreichbar ist. Diese wird im Browser aufgerufen und anschließend sollte ein Update durchgeführt werden.

Die Firmware sollte auf die aktuelle Version geflasht werden

Ist dies geschehen, kann die Installation der alternativen Firmware durchgeführt werden. Dazu wird die IP-Adresse des Shelly Plug S mit einem neuen Parameter aufgerufen:

http://192.168.1.42/ota?url=http://rojer.me/files/shelly/shelly-homekit-ShellyPlugS.zip

Es wird anschließend ein JSON ausgegeben:

{„status“:“updating“,“has_update“:false,“new_version“:“20230913-113421/v1.14.0-gcb84623″,“old_version“:“20230913-113421/v1.14.0-gcb84623″,“beta_version“:“20231107-164219/v1.14.1-rc1-g0617c15″}

Nach etwa einer bis zwei Minuten ist das Firmware-Update komplett und eine neue Oberfläche erscheint, beim Aufruf der IP-Adresse im Browser.

Die neue Oberfläche

Mit der neuen Firmware kann der Shelly Plug S als HomeKit-Gerät eingebunden werden. Dazu muss der Setup-Button in der Weboberfläche aktiviert werden. Anschließend kann das Gerät über die Home-App unter iOS hinzugefügt werden. Es ist auch möglich, die Factory-Firmware wieder aufzuspielen, sodass der Shelly Plug S wieder wie gewöhnlich genutzt werden kann.

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.