Hallo Zoniac
Ich mache so was ähnliches seit etwa zwei Jahren (alle paar Wochen) und hatte noch nie ein Problem.
Und das deshalb, weil ich immer eine gewisse Angst habe, dass meine Laptopplatte oder sonst was kaputt geht und ich alles dann neu installieren muss.
Kann man auch als "übertriebene Vorsicht" beschreiben.
Neue oder Backupfestplatte vorbereiten.
Ich mache das immer mit GParted. Der Einfachheit wegen.
Die neue Platte muss die selbe Struktur haben wie die Alte (Partitionstabelle, Dateisystem, Markierungen).
Partitionsgrößen können abweichen. Wichtig ist nur, dass alle Daten darauf Platz haben.
Externe Platte anstecken (ich nutze USB3 mit einem SATA-USB3-Adapter)
System von einem Arch-Installationsstick booten
loadkeys de
Mit
blkid
die Partitionsdaten anzeigen.
Bei mir sieht das so aus:
/dev/sda1: LABEL_FATBOOT="BOOT" LABEL="BOOT" UUID=.................
/dev/sda2: LABEL="ROOT" UUID=.....................
/dev/sda3: LABEL="HOME" UUID=.....................
/dev/sda4: LABEL="SWAP" UUID=.....................
/dev/sdb1: LABEL_FATBOOT="BOOT" LABEL="BOOT" ......................
/dev/sdb2: LABEL="ROOT" UUID=.....................
/dev/sdb3: LABEL="HOME" UUID=.....................
/dev/sdb4: LABEL="SWAP" UUID=...................
Wobei sda die alte Platte und sdb die neue Platte ist.
mkdir /mnt/alt
mkdir /mnt/alt/boot
mkdir /mnt/alt/root
mkdir /mnt/alt/home
mkdir /mnt/neu
mkdir /mnt/neu/boot
mkdir /mnt/neu/root
mkdir /mnt/neu/home
mount -o ro /dev/sda1 /mnt/alt/boot
mount -o ro /dev/sda2 /mnt/alt/root
mount -o ro /dev/sda3 /mnt/alt/home
mount /dev/sdb1 /mnt/neu/boot
mount /dev/sdb2 /mnt/neu/root
mount /dev/sdb3 /mnt/neu/home
Hierbei unbedingt darauf achten, dass Quell-und Ziellaufwerk nicht verwechselt werden.
rsync --numeric-ids --delete -axAhHSP /mnt/alt/boot/ /mnt/neu/boot
rsync --numeric-ids --delete -axAhHSP /mnt/alt/root/ /mnt/neu/root
rsync --numeric-ids --delete -axAhHSP /mnt/alt/home/ /mnt/neu/home
Das Ganze dauert eine Zeit. Je nach dem, welche Hardware vorhanden ist (bei mir alles SSD und USB 3, ca. eine halbe Stunde).
Wenn Du eine komplett neue und leere Platte verwendest, kannst Du die Option --delete auch weglassen.
umount /mnt/alt/boot
umount /mnt/alt/root
umount /mnt/alt/home
umount /mnt/neu/boot
umount /mnt/neu/home
mount /dev/sdb1 /mnt/neu/root/boot
In das kopierte System chrooten und Bootloader installieren (ich verwende bootctl):
arch-chroot /mnt/neu/root/
bootctl --path=/boot install
exit
umount /mnt/neu/root/boot
umount /mnt/neu/root
reboot
Da ich nicht mit UUID arbeite sondern nur mit /dev/sdx ist nichts weiter notwendig.
Ansonsten müssen in der Datei /boot/loader/entries/Arch.conf der neuen Platte die PART-UUID der neuen root-Partition (sda2) eingetragen werden.
Bei anderen Bootloadern (z.B. Grub) kann das anders sein.
Und es müssen in der Datei /etc/fstab der neuen Platte die UUID´s angepasst werden (die UUID´s der alten Platte durch die UUID´s der neuen Platte ersetzen).
Diese Anleitung funktioniert bei mir auf meinem System.