Arch Linux Bootplatte umziehen
Hier ziehe ich meine /dev/sda auf /dev/sde um, beides unabhängige Platten mit ext4 Dateisystem, die in keinem RAID-Verbund oder ZFS-Dateisystem liegen.
Und ja, ZFS Pools sind auch vorhanden, aber unabhängig der Bootplatte.
Die Verbatim V550 SSD macht Probleme, offenbar Firmware oder Controller Inkompatibilitäten. Ständige Hänger, innerhalb 30 Minuten komplette Partitionsgröße an Trim usw.
Nunja hier nun folgend, grob aus dem Kopf und mit Gemini KI erstellte Ablaufreihenfolge.
Partitionen erstellen und formatieren¶
ACHTUNG! Die alte Platte SSD ist /dev/sda, die neue Platte HDD ist /dev/sde
# GPT Tabelle erstellen
sudo parted /dev/sde mklabel gpt
# 1. EFI-Boot (1GB)
sudo parted /dev/sde mkpart primary fat32 2048s 2099199s
sudo parted /dev/sde set 1 esp on
# 2. Swap (16GB - etwas Puffer schadet nicht)
sudo parted /dev/sde mkpart primary linux-swap 2099200s 35651583s
# 3. Root (250GB für System & Jellyfin Metadaten)
sudo parted /dev/sde mkpart primary ext4 35651584s 522190847s
# 4. Restliche 2,7 TB als neue Datenpartition
sudo parted /dev/sde mkpart primary ext4 522190848s 100%
# Formatieren
sudo mkfs.vfat -F 32 /dev/sde1
sudo mkswap /dev/sde2
sudo mkfs.ext4 /dev/sde3
sudo mkfs.ext4 -L ZUSAETZLICHER_PLATZ /dev/sde4
Neue Partitionen mounten und Daten kopieren¶
Meine Poolnamen brauche ich, um sie von rsync auszuschließen. Diese finde ich heraus mit $ zpool status, meine sind seagate und aca, sowie die Datenplatte aca300 vorerst und die Backupplatte USB wdbook.
# Ordner erstellen und mounten
sudo mkdir -p /mnt/newHDD
sudo mount /dev/sde3 /mnt/newHDD
# EFI Partition einbinden
sudo mkdir -p /mnt/newHDD/boot/efi
sudo mount /dev/sde1 /mnt/newHDD/boot
# Kopiere alles, schließe ZFS-Daten und den neuen Mountpunkt selbst aus
# Ersetze /pfad/zu/18tb durch deinen tatsächlichen ZFS-Pfad
sudo rsync -aAXv --ignore-errors --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found","/seagate/*","/aca/*","/aca300/*","/wdbook/*" / /mnt/newHDD/
# Bootdateien kopieren - WICHTIG!
sudo rsync -aAXv /boot/ /mnt/newHDD/boot/
fstab entsprechend der neuen UUIDs anpassen¶
ACHTUNG! sudo nano /mnt/newHDD/etc/fstab unbedingt! in der neuen fstab arbeiten! NIEMALS verwechseln!
Wie man nano bedient und die fstab ausfüllt spare ich mir hier. Mit lsblk -f /dev/sde erhält man jedenfalls die UUID der Partitionen, beispielsweise:
$ lsblk -f /dev/sde
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
sde
├─sde1 vfat FAT32 249E-3743 825,7M 19% /boot
├─sde2 swap 1 5b2823d8-b0c2-403d-a431-13b5fa4b1f7a [SWAP]
├─sde3 ext4 1.0 239b525e-0ca2-41e8-8314-954b91c0db13 195,8G 9% /
└─sde4 ext4 1.0 DATA_ACA300 7f22c7b1-6da3-4f3b-9ef4-1c44735541a2 2,3T 0% /aca300
Die neue fstab sieht so aus:
$ cat /etc/fstab
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
###########################################################
# OLD STUFF fucking damn SSD died! 2026-01-31 ~~marquisor #
###########################################################
# /dev/sda4 - OLD!!
#UUID=ddecac51-0764-4c4f-9db7-990453d1b3d8 / ext4 rw,discard,defaults 0 1
# /dev/sda1 - OLD!!
# UUID=5F81-8264 /boot vfat rw,sync,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
#######################
# NEW SYSTEM below... #
#######################
# /dev/sde3 - Root Partition
UUID=239b525e-0ca2-41e8-8314-954b91c0db13 / ext4 rw,relatime,defaults 0 1
# /dev/sde1 - Boot Partition
UUID=249E-3743 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
# /dev/sde2 - Swap
UUID=5b2823d8-b0c2-403d-a431-13b5fa4b1f7a none swap defaults,pri=10 0 0
# Other mounts
# ACA300 Daten
UUID="7f22c7b1-6da3-4f3b-9ef4-1c44735541a2" /aca300 ext4 defaults 0 2
Bind-Mounts und Chroot¶
# Bind-Mounts für die Systemumgebung
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt/newHDD$i; done
# Wechsel in die neue Umgebung
sudo chroot /mnt/newHDD
# GRUB auf die 3TB Platte schreiben
grub-install /dev/sde
update-grub
exit
GRUB in den Standard-Pfad installieren (erzwingt die .efi Datei nach /boot/efi/EFI/BOOT/BOOTX64.EFI)¶
ACHTUNG! Im Chroot ausführen!
grub-install /dev/sde --removable --recheck
update-grub
GRUB Konfiguration generieren¶
ACHTUNG! Auch hier wichtig die Ausgabe zu beachten, es müssen die Linux-Kernel und ggf. Initramfs aufgelistet werden, dass diese gezogen wurden!
grub-mkconfig -o /boot/grub/grub.cfg
Chroot verlassen und neue Festplatte unmounten¶
# EFI/Boot aushängen, falls noch gemountet
umount /boot
# Chroot verlassen
exit
# Dann OHNE Chroot ausführen
sudo umount -l /mnt/newHDD/dev{/pts,} /mnt/newHDD/{sys,proc,run}
sudo umount -R /mnt/newHDD
EFI- Reihenfolge setzen, Reboot und ggf. BIOS anpassen¶
Im BIOS sollte man 1. und einzige Boot-Option auf UEFI OS legen
$ sudo efibootmgr
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0002,0001
Boot0000* GRUB HD(1,GPT,be96b392-e15e-4af4-b1bc-5a9de2a30894,0x800,0x200000)/\EFI\GRUB\grubx64.efi
Boot0001 Hard Drive BBS(HD,,0x0)0000474f000 ... haufen Firlefanz ...
Boot0002* UEFI OS HD(1,GPT,5e57dfe7-01d0-4401-b40f-a506f8775ee3,0x800,0x200000)/\EFI\BOOT\BOOTX64.EFI
# Reihenfolge auf UEFI OS zuerst stellen
$ sudo efibootmgr -o 0002,0000,0001
# Reboot
$ sudo reboot
Prüfung ob alles glatt lief¶
Der neue root / muss nun auf /dev/sde3 liegen, Swap und Boot entsprechend:
$ df -h /
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
/dev/sde3 228G 20G 196G 10% /
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 238,5G 0 disk
├─sda1 8:1 0 1G 0 part
├─sda2 8:2 0 8G 0 part
├─sda3 8:3 0 32G 0 part
└─sda4 8:4 0 195,1G 0 part
sdb 8:16 0 7,3T 0 disk
├─sdb1 8:17 0 7,3T 0 part
└─sdb9 8:25 0 8M 0 part
sdc 8:32 0 7,3T 0 disk
├─sdc1 8:33 0 7,3T 0 part
└─sdc9 8:41 0 8M 0 part
sdd 8:48 0 1,8T 0 disk
├─sdd1 8:49 0 1,8T 0 part
└─sdd9 8:57 0 8M 0 part
sde 8:64 0 2,7T 0 disk
├─sde1 8:65 0 1G 0 part /boot
├─sde2 8:66 0 16G 0 part [SWAP]
├─sde3 8:67 0 232G 0 part /
└─sde4 8:68 0 2,5T 0 part /aca300
sdf 8:80 0 7,3T 0 disk
├─sdf1 8:81 0 7,3T 0 part
└─sdf9 8:89 0 8M 0 part
sdg 8:96 0 1,8T 0 disk
├─sdg1 8:97 0 1,8T 0 part
└─sdg9 8:105 0 8M 0 part
ZFS-Pools wiederbeleben¶
# Suchen nach verfügbaren Pools
sudo zpool import
# Den Pool importieren (f steht für force, falls er noch als "in Benutzung" markiert ist)
sudo zpool import -f DEIN_POOLNAME
Damit sollte der Vorgang abgeschlossen sein. Viel Erfolg!
Kritisch ist hier im Grunde genommen gar nichts, solange noch von der Quellplatte gelesen werden kann.
Vielleicht muss man leider kurzfristig headless aufgeben und Tastatur und Monitor anschließen, aber auch das ist machbar.
:-)
31.01.2026 ~~marquisor