NEWS
Upgrade von Debian 11/Bullseye auf 12/Bookworm
-
Vorab:
Debian 12 'Bookworm' ist am 10.06.2023 als stabil veröffentlicht worden.
Raspberry OS 'Bullseye' ist seit dem 10. Oktober 2023 auch verfügbar. Hier ist allerdings ein in-line-Upgrade von der Vorversion NICHT möglich. Es muss hier eine komplette Neuinstallation vorgenommen werden.Desweiteren würde ich empfehlen die Gelegenheit zu nutzen und 32bit-Systeme auf Raspberry Pi-Kisten auf 64bit umzustellen. Das funktioniert allerdings nicht wie hier vorgestellt, bei einem Wechsel der CPU-Architektur ist eine Neuinstallation erforderlich. Desweiteren gilt für Raspberry OS die dringende Empfehlung einer Neuinstallation:
Edit:
Diesmal rät Raspberry OS allerdings noch dringender als sonst dazu, die Systeme nicht von einem zum anderen Release rüberzuheben, sondern eine komplette Neuinstallation zu machen:Wichtig zu wissen: Früher empfahl man eine frische Installation, aber es war möglich, vom Vorgänger zu aktualisieren. Die jetzige Installation sollte aber auf jeden Fall neu sein.
Da die Änderungen an der zugrundeliegenden Architektur so signifikant sind, schlägt man dieses Mal keine Prozedur vor, um ein Bullseye-Image auf Bookworm zu aktualisieren; jeder Versuch, dies zu tun, wird mit ziemlicher Sicherheit mit einem nicht bootenden Desktop und Datenverlust enden.
Die einzige Möglichkeit, Bookworm zu bekommen, ist entweder eine SD-Karte mit dem Raspberry Pi Imager zu erstellen oder ein Bookworm-Image von hier herunterzuladen und mit dem Tool der Wahl zu flashen.Gilt aber auch für ein System ohne Desktop, bei meinen Versuchen hab ich schwer mit dem Bootvorgang zu kämpfen, den aktuellen Kernel habe ich nicht vollständig gestartet bekommen.
#Upgrade von Debian 11 'Bullseye' auf Debain 12 'Bookworm'
Gegeben ist ein alter Raspi3, der auf Bullseye läuft:
pi@mysterium2:~ $ lsb_release -a No LSB modules are available. Distributor ID: Raspbian Description: Raspbian GNU/Linux 11 (bullseye) Release: 11 Codename: bullseye
Der soll auf Debian 12 'Bookworm' gehoben werden. Ich mache das wie folgt:
Zunächst alles auf den letzten Stand bringen
pi@mysterium2:~ $ sudo apt update Hit:1 http://archive.raspberrypi.org/debian bullseye InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian bullseye InRelease Hit:3 https://deb.nodesource.com/node_18.x bullseye InRelease Get:4 https://pkgs.tailscale.com/stable/raspbian bullseye InRelease Fetched 6,522 B in 6s (1,042 B/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done 113 packages can be upgraded. Run 'apt list --upgradable' to see them.
Wenn in der Liste irgendwas mit
bullseye-backports
oderbullseye-propsed-updates
oder ähnliches auftauchen sollte, dann ist diese Quelle zuvor zu deaktivieren. Ebenso andere manuelle Eingriffe in die Paket-Datenbank. Z.B. ein apt-hold auf das Paket 'udev' ist ja von einigen getätigt worden, diese Sperren müssen aufgehoben werden. Kann man perapt-mark showhold
prüfen. Die aufgelisteten Pakete dann mit
sudo apt-mark unhold `apt-mark showhold`
wieder frei laufen lassen.
Also
sudo apt full-upgrade sudo reboot
Nach dem reboot dürfen keine Pakete mehr in der Pipeline hängen.
pi@mysterium2:~ $ sudo apt update Hit:1 http://raspbian.raspberrypi.org/raspbian bullseye InRelease Hit:2 http://archive.raspberrypi.org/debian bullseye InRelease Hit:3 https://deb.nodesource.com/node_18.x bullseye InRelease Get:4 https://pkgs.tailscale.com/stable/raspbian bullseye InRelease Fetched 6,522 B in 2s (3,644 B/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done All packages are up to date.
Prima, jetzt ist die Basis stabil und wir können auf bookworm/Debian12 umschwenken.
In die Datei
/etc/apt/sources.list
kopieren wir diese neuen Zeilen rein, die alten Einträge fliegen dafür raus:
Viasudo nano /etc/apt/sources.list
das einkopieren:
deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware # Uncomment deb-src lines below then 'apt-get update' to enable 'apt-get source' deb-src http://deb.debian.org/debian bookworm main contrib non-free deb-src http://security.debian.org/debian-security bookworm-security main contrib non-free deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free
Zusätzlich stellen wir auch noch weitere Dateien auf bookworm um:
sudo sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list sudo sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/*
Wenn ein erneutes
sudo apt update
Meldungen wie die folgende ergibt:
Err:2 http://deb.debian.org/debian bookworm InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386FA1D9
muss der Schlüssel jeweils herangezogen werden.
Macht man so:sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 648ACFD622F3D138
Die ID des keys übernimmt man natürlich aus der vorherigen Meldung.
Das macht man mit allen fehlenden Schlüsseln, bis es so oder so ähnlich aussieht, die Meldungen bzgl. der Schlüssel also nicht mehr vorhanden sind:
pi@mysterium2:~ $ sudo apt update Hit:1 http://archive.raspberrypi.org/debian bookworm InRelease Hit:2 http://deb.debian.org/debian bookworm InRelease Hit:3 http://deb.debian.org/debian bookworm-updates InRelease Hit:4 http://security.debian.org/debian-security bookworm-security InRelease Hit:5 http://raspbian.raspberrypi.org/raspbian bookworm InRelease Hit:6 https://deb.nodesource.com/node_18.x bookworm InRelease Get:7 https://pkgs.tailscale.com/stable/debian bookworm InRelease Fetched 6,522 B in 3s (2,404 B/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done 445 packages can be upgraded. Run 'apt list --upgradable' to see them.
Auch dürfen da keine Einträge mit bullseye mehr vorkommen.
Vor dem eigentlichen Upgrade schaut man per
sudo apt -o APT::Get::Trivial-Only=true full-upgrade
nach ob auch genug Platz auf dem Datenträger ist. Wenn
E: You don't have enough free space in /var/cache/apt/archives/.
gemeldet wird sollte man vorher aufräumen, z. B. persudo apt clean
Jetzt aber los...
sudo apt update sudo apt full-upgrade
Wenn während des Upgrades Rückfragen kommen, ob eine neue Version einer Konfig-Datei eingespielt werden soll bitte immer mit yes bestätigen. Es wird von der ursprünglichen Datei eine Kopie mit der Endung .dpkg-old gespeichert, welche bei Bedarf dann zurückgespielt werden kann.
Gleiches gilt für die Frage, ob Services automatisch neugestartet werden sollen.
Aus der Anzeige des ChangeLogs kommt man durch Eingabe vonq
heraus.Jetzt holt man sich einen Kaffee (alternativ Club Mate) und schaut wie ein Superhacker mit schwarzem Kaputzenpulli und koffeinhaltigem Getränk in der Hand angestrengt auf die vorbeilaufenden Meldungen im Terminal und haut gelegentlich bei den obengenannten Rückfragen auf die Y-Taste.
Wenn alles durchgelaufen ist und nach einem beherzten
sudo reboot
befinden wir uns in Debian 12 'Bookworm'
_,met$$$$$gg. pi@mysterium2 ,g$$$$$$$$$$$$$$$P. ------------- ,g$$P" """Y$$.". OS: Debian GNU/Linux 12 (bookworm) armv7l ,$$P' `$$$. Host: Raspberry Pi 3 Model B Plus Rev 1.3 ',$$P ,ggs. `$$b: Kernel: 6.1.21-v7+ `d$$' ,$P"' . $$$ Uptime: 1 hour, 31 mins $$P d$' , $$P Packages: 711 (dpkg) $$: $$. - ,d$$' Shell: bash 5.2.15 $$; Y$b._ _,d$P' Terminal: /dev/pts/0 Y$$. `.`"Y$$$$P"' CPU: BCM2835 (4) @ 1.400GHz `$$b "-.__ Memory: 70MiB / 965MiB `Y$$ `Y$$. `$$b. `Y$$b. `"Y$b._ `"""
Falls Meldungen bei einem
sudo apt update
bezüglich apt-key auftauchen:
W: http://security.debian.org/debian-security/dists/bookworm-security/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. W: http://raspbian.raspberrypi.org/raspbian/dists/bookworm/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. W: http://deb.debian.org/debian/dists/bookworm/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. W: http://archive.raspberrypi.org/debian/dists/bookworm/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. W: http://deb.debian.org/debian/dists/bookworm-updates/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. W: http://archive.raspberrypi.org/debian/dists/bullseye/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. W: https://pkgs.tailscale.com/stable/debian/dists/bookworm/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
kann man die noch an eine andere Stelle schieben:
sudo mv /etc/apt/trusted.gpg /etc/apt/trusted.gpg.d/
Das ist zwar nicht der Königsweg, sorgt aber dafür das die Meldungen für das erste verschwinden.
Fertig, viel Spaß mit dem Bücherwurm / Debian 12.
-
danke für die Anleitung!
Sollte so auch mit Raspi 4 und Bullseye funktionieren oder? -
@diamand2k22
Ja, die Herangehensweise ist allgemein gültig. -
Danke für die sehr frühe Info und Anleitung
@thomas-braun sagte in Upgrade von Debian 11/Bullseye auf 12/Bookworm:
Insbesondere die Pakete für Raspberry OS sind noch auf dem Stand von Debian 12 'Bullseye'
Das sollte wohl eine 11 werden.
-
@thomas-braun
Danke für die gute Anleitung.
Zwei Sachen sind bei mir aufgefallen:
Ich brauche fürapt -o APT::Get::Trivial-Only=true full-upgrade
ein sudo
und nach
sudo apt full-upgrade
kommt zunächst das Cangelog. Das kann man mit "q" verlassen. Währe vielleicht erwähnenswert.
-
Wo verwende ich denn das?
Mit q für quit kommt man ja aus vielen Programmen heraus, hatte ich vorausgesetzt ...
-
@thomas-braun
Hier:Vor dem eigentlichen Upgrade schaut man per apt -o APT::Get::Trivial-Only=true full-upgrade nach ob auch genug Platz auf dem Datenträger ist. Wenn E: You don't have enough free space in /var/cache/apt/archives/. gemeldet wird sollte man vorher aufräumen, z. B. per
-
@thomas-braun vielen Dank für die Anleitung, hab mich auch getraut und mein Intel Nuc hat jetzt auch Bookworm.
Grüße
Fabio -
Vielen Dank für die Anleitung.
Es gibt einen Bücherwurm mehr ...
-
Habe deine Anleitung mal zum Anlass genommen meinen iOBroker, den dazugehörenden DB-Server, Frigate und meine unter Debian laufende PIHole-Instanz anzuheben.
War alles vom feinsten, allein VIS hat ein "upload all" im Anschluss benötigt.Danke für die Anleitung.
Gruß
Matze -
@fa-bio sagte in Upgrade von Debian 11/Bullseye auf 12/Bookworm:
@thomas-braun vielen Dank für die Anleitung, hab mich auch getraut und mein Intel Nuc hat jetzt auch Bookworm.
Grüße
FabioDas heisst die Anleitung oben von thomas kann man auch für eine debian Installationa auf einem NUC (also ohne raspi) nutzen? Klingt zumindest mal so aber ich wollte einfach sicherheitshalber nochmal nachfragen.
Danke schon mal für eine kurze Rückinfo.
Würde dann auch gerne meinen NUC hochziehen ;-).
-
Natürlich. Zur Zeit ist es sogar so, dass ein Upgrade auf einem Raspberry nicht vollständig funktioniert, da es die RaspberryOS-spezifischen Pakete noch nicht für Bookworm gibt.
-
@hotspot_2 ja hat wunderbar funktioniert bei mir.
Grüße Fabio -
@fa-bio sagte in Upgrade von Debian 11/Bullseye auf 12/Bookworm:
hat wunderbar funktioniert bei mir
hast Du die
/etc/apt/sources.list
genau so abgeändert wie @Thomas-Braun oben angegeben hat?
Irgendwie "trau" ich mich da nicht so ran weil bei mir so ganz andere Quellen drinstehen (natürlich bullseye aber halt mal ganz andere)
deb http://ftp.de.debian.org/debian bullseye main contrib deb http://ftp.de.debian.org/debian bullseye-updates main contrib # security updates deb http://security.debian.org bullseye-security main contrib deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription
-
Zu proxmox musst du mal schauen.
Wobei die proxmox-Quelle imho in der sources.list nichts zu suchen hat. Die sollte eigentlich nur für reine Debian-Repos da sein.
Proxmox würde ich in eine /etc/apt/sources list.d/proxmox.list oder so auslagern. -
@thomas-braun sagte in Upgrade von Debian 11/Bullseye auf 12/Bookworm:
Wobei die proxmox-Quelle imho in der sources.list nichts zu suchen hat
Hab mich auch gewundert ist aber "im hauseigenen Image" von Proxmox so drin.
Glaub ich schau wirklich erstmal bei Proxmox direkt nach, nicht dass ich da was verbiege -
-
@thomas-braun jo, schon gesehen aber ist "noch" beta - ich warte da erstmal ... muss ja nicht an noch mehr Baustellen den Betatester spielen
-
Klar. Die von Debian abgeleiteten Varianten hängen ein paar Wochen/Monate hinterher. Raspberry OS gibt es ja auch noch nicht auf Basis von Bookworm.
-
@thomas-braun sagte in Upgrade von Debian 11/Bullseye auf 12/Bookworm:
Die von Debian abgeleiteten Varianten hängen ein paar Wochen/Monate hinterher.
Ist ja noch Zeit bis EOL vom Bullseye erreicht ist
edit: wobei ich aber meine VMs und LXCs dank Deiner Anleitung schon erfolgreich hochgehoben hab