Openmediavault 4.x nach 5.x upgrade

Openmediavault (kurz OMV) ist ein NAS Betriebssystem, welches auf dem Betriebssystem debian basiert. In der Version 4 von OMV wurde auf Debian 9.x gesetzt, ab Version 5 wird debian 10.x (Buster) als Basis verwendet. Somit muss beim Upgrade von OMV 4 auf OMV 5 gleichzeitig das Betriebssystem aktualisiert werden. Einen offiziellen Weg dazu findet man auf der Webseite und im Forum von Openmediavault nur recht schwer. Deswegen werde ich diesen Weg im Folgenden kurz niederschreiben.

Vorbemerkung (ergänzt am 29.03.2022): Die Anleitung ist schon etwas älter, deswegen nicht mehr vollständig gültig. KlausR aus dem Forum Openmediavault hat eine aktuellere Version (28.03.2022) für den Updatevorgang beschrieben:
https://forum.openmediavault.org/index.php?thread/42541-openmediavault-firewall-service-fails-after-4to5-upgrade/&postID=307411#post307411

Als erstes bringt man das aktuelle System auf den aktuellen Stand:

apt update && apt upgrade -y && apt dist-upgrade -y

Mit dieser Grundvoraussetzung sollte geprüft werden, welche Plugins (omv-extras.org) in der OMV Version 5.x noch unterstützt werden. Die Plugins, die nicht unterstützt werden, werden im Verlauf des Updates ggf. zerstört. Ein Beispiel hierfür ist bei mir das Duplicati-Plugin. Hier muss überlegt werden, wie man die Funktion nach dem Wegfall des Plugins weiter verwenden kann. Konfigurationsdateien sollten deswegen ebenfalls je Plugin gesichert werden.

Zur eigenen Sicherheit sollte vor dem Upgrade eine Datensicherung erfolgen, dass im Worst Case Szenario zumindest noch alle Daten wiederherstellbar sind.

Sind die Datensicherungen aktualisiert, kann der Prozess gestartet werden. Hierfür gehen wir auf die Console und loggen uns als root user ein. Dann führen wir folgende Befehle aus.

apt-get purge openmediavault-cups openmediavault-dnsmasq openmediavault-docker-gui openmediavault-domoticz openmediavault-duplicati openmediavault-eyefi openmediavault-ldap openmediavault-letsencrypt openmediavault-mysql openmediavault-nginx openmediavault-openvpn openmediavault-pxe openmediavault-remotedesktop openmediavault-route openmediavault-shellinabox openmediavault-syncthing openmediavault-transmissionbt openmediavault-urbackup-server openmediavault-vdo openmediavault-virtualbox openmediavault-webdav

Hier müssen eventuell einzelne Plugins entfernt werden, das zeigt einem das Debian System jedoch an, indem es meldet, welches Paket nicht gefunden wurde. Weiter geht es mit dem Ändern der apt list Dateien.

sed -i "s/stretch/buster/g" /etc/apt/sources.list
sed -i "s/stretch/buster/g" /etc/apt/sources.list.d/*
sed -i "s/arrakis/usul/g" /etc/apt/sources.list.d/*
sed -i "/[Dd]ocker/d" /etc/apt/sources.list.d/omvextras.list
sed -i "s/<mtu><\/mtu>/<mtu>0<\/mtu>/g" /etc/openmediavault/config.xml
rm -f /var/cache/openmediavault/archives/Packages
armbian="/etc/apt/sources.list.d/armbian.list"
[ -f "${armbian}" ] && echo "deb http://apt.armbian.com buster main buster-utils" | sudo tee ${armbian}

Nach der Änderung der Paketlisten von stretch nach buster und arrakis nach usul wird der Updateprozess angestoßen. Das kann einige zeit dauern, bis alle Pakete installiert sind. Fragen in dem Kontext im Regelfall mit der Default-Antwort bestätigen.

apt-get update && apt-get dist-upgrade -y

Nach der Installation sollte das System lieber einmal neu gestartet werden.

reboot

Danach geht es weiter mit dem Löschen des alten und der Installation des neuen omvextras pakets.

apt-get purge openmediavault-omvextrasorg resolvconf
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash
apt-get update && apt-get dist-upgrade -y

Jetzt wird noch omv „repariert“ mit folgenden Befehlen.

omv-salt deploy run nginx
omv-salt deploy run phpfpm

Zur Sicherheit nochmals neustarten und den Browser Cache löschen. Nach dem Neustart noch schnell die Überreste alter Pakete aufräumen.

reboot
apt autoremove -y
apt autoclean -y

Da nun bei mir das Plugin für duplicati gefehlt hat, habe ich dieses über das offizielle Paket von der duplicati Seite heruntergeladen und per dpkg -i installiert. Glücklicherweise hat duplicati die Einstellungen nach einem Neustart wieder erkannt und konnte so direkt seinen Dienst weiter tun.

Normalerweise schaut man final noch die Logdateien durch, ob hier irgendwelche Auffälligkeiten existieren, prüft die Einstellungen des OMV Webinterfaces und der Plugins, dann ist alles erledig.

Quellen

  • https://forum.openmediavault.org/index.php?thread/27909-omv-5-0-finally-out/&postID=219830#post219830
  • https://www.duplicati.com/download