Hier entsteht eine Sammlung an Anleitungen rund um's Raspberry Pi.
Es empfiehlt sich, der jeweils aktuellen Installationsanleitung des Herstellers zu folgen. Hier trotzdem ein paar Tipps, die ich selbst immer mal wieder suche:
ssh auf der ersten Partition anlegenuserconf.txt anlegen. In dieser Datei den Benutzernamen, direkt gefolgt von einem Doppelpunkt und dann dem verschlüsselten Passwort eintragen. Das Verschlüsselte Passwort generieren mit openssl passwd -6nmcli device wifi listsudo nmcli device wifi connect –ask <SSID>Ein Vollständiges Image einer SD Karte belegt erst mal so viel Platz wie die SD Karte gross ist. Das ist unter Umständen viel mehr als der tatsächlich auf der Karte belegte Platz. Kompression mit z.B. GZip hilft da. Damit kann man dann aber nicht mehr direkt auf die Daten zugreifen, ohne das Komprimierte Image wieder zu entpacken.
Die Lösung: Ein mittels SquashFs komprimiertes Image, das gemountet werden kann ohne zu entpacken.
# find the SD card device lsblk -f # create empty directory mkdir /tmp/empty # create SquashFs using the empty directory and reading the SD card directly mksquashfs /tmp/empty rasPi_2026-02-03.squashfs -p 'rasPi_2026-02-03.img f 444 root root sudo dd if=/dev/sdb bs=4k status=progress' -no-progress # create mountpoints mkdir -p /tmp/mnt/container mkdir -p /tmp/mnt/image # mount compressed container and the contained image sudo mount -o ro rasPi_2026-02-03.squashfs /tmp/mnt/container/ sudo losetup -Pf /tmp/mnt/container/rasPi_2026-02-03.img losetup --list | grep container sudo mount -o ro /dev/loop38p2 /tmp/mnt/image/ # unmount everything sudo umount /tmp/mnt/image sudo losetup -d /dev/loop38 sudo umount /tmp/mnt/container
Das Standarddateisystem auf dem RasPi ist ext4. Das etwas modernere BTRFS eignet sich aber auch sehr gut und hat ein paar Vorteile. Dafür kann eine bestehende Installation konvertiert werden.
Voraussetzung: 2 SD Karten (oder USB Sticks) mit Raspberry Pi OS. Eine wird offline konvertiert, die zweite als System benutzt um die Konvertierung durchzuführen. Wenn das System einer SD Karte konvertiert werden soll, braucht es dafür einen USB Kartenleser. Die zu konvertierende Karte muss in einem Schritt extern (über USB) angeschlossen werden während das System von einer anderen Karte oder über USB gebootet wurde.
Ablauf:
sudo apt install btrfs-progssudo systemctl powerofflsblk -flsblk -f Der neu dazu gekommene Datenträger ist der, den wir konvertieren wollen. Die Partition ist aktuell mit ext4 formatiert. In den folgenden Beispielen gehen wir von /dev/sda2 aus. Das kann aber auf deinem System anders sein. Bitte entsprechend anpassen. 😉sudo fsck.ext4 /dev/sda2 Nur fortfahren, wenn es keine Fehler gab.sudo btrfs-convert /dev/sda2sudo mount /dev/sda2 /mnt/sudo rm -r /mnt/ext2_saved und räume das ebenfalls nicht mehr benötigte lost+found von ext4 auf: sudo rm -r /mnt/lost+found@“ verschieben. Da das Rootverzeichnis selbst auch ein Subvolume ist, kann man davon einen Snapshot in sich selbst erstellen. Danach einfach alles ausserhalb des Snapshots löschen:cd /mnt sudo btrfs subvolume snapshot . @ # links löschen: sudo rm bin lib sbin # Verzeichnisse löschen: sudo rm -r boot dev etc home media mnt opt proc root run srv sys tmp usr var
/mnt leer sein, mit Ausnahme des Subvolumes @ natürlich. Darin wiederum sollte sich das ganze System befinden.sudo umount /mntsudo mount -o subvol=@ /dev/sda2 /mntlsblk -f und dann die Datei editieren, z.B. mit vim /mnt/etc/fstab/ von PARTUUID auf UUID ändern und die vorhin angezeigte UUID eintragen. Das Dateisystem von ext4 auf btrfs ändern. Die Optionen gemäss Beispiel ergänzen: proc /proc proc defaults 0 0 PARTUUID=920be9a3-01 /boot/firmware vfat defaults 0 2 UUID=0ba076f5-a8cb-4a1d-b01c-eba081cd3e09 / btrfs defaults,noatime,discard=async,subvol=@ 0 0
chroot ins System „einloggen“ und die InitRd neu generieren:sudo mount /dev/sda1 /mnt/boot/firmware/ sudo mount --bind /dev/ /mnt/dev/ sudo mount --bind /proc/ /mnt/proc/ sudo mount --bind /sys /mnt/sys/ sudo chroot /mnt/ update-initramfs -c -k all exit
/mnt/boot/firmware/cmdline.txt editieren. Hier muss auch die PARTUUID auf UUID angepasst, und entsprechend eingetragen werden. Dazu kommen noch der Dateisystemtyp und die flags dazu. Siehe Beispiel: console=serial0,115200 console=tty1 root=UUID=0ba076f5-a8cb-4a1d-b01c-eba081cd3e09 rootfstype=btrfs rootflags=subvol=@ rootwait cfg80211.ieee80211_regdom=CH
sudo systemctl poweroff