Я для себя составил инструкцию как делать бекап и восстановление Linux на различном железе. Основная проблема это разные
UUID разделов. Через пробы и ошибки вышла рабочая инструкция.
1. Скопировать все данные со старого диска на новый. Можно просто обычным копированием без лишних утилит и командной строки.
2. Загрузиться с любого
LiveCD, например
Parted Magic
3. Запустить терминал и узнать
UUID новых разделов командой
lsblk -o +uuid,name
4. Среди файлов системы которую скопировали, открыть блокнотом
/etc/fstab и
/etc/default/grub и заменить старые
UUID на новые, которые мы узнали командой
lsblk -o +uuid,name
5. Монтируем следующие каталоги:
mount /dev/sdaN /mnt (sdaN - буква N номер раздела на которую мы скопировали нашу систему)
mount --rbind /dev /mnt/dev
mount --rbind /proc /mnt/proc
mount --rbind /sys /mnt/sys
6. Вводим
chroot /mnt bash
чтобы выполнять команды от той системы которую мы скопировали
7. Установливаем и обновляем конфигурацию
GRUB
sudo grub-install /dev/sda
sudo grub-mkconfig -o /boot/grub/grub.cfg
8. Затем обновляем параметры
mkinitcpio командой
sudo mkinitcpio -P
иначе будут проблемы с файловой системой. Например, без этой команды у меня система не запускалась, так как раньше стояла на файловой системе
Btrfs, а я скопировал ее на
ext4.
9. Затем снова обновляем
GRUB
sudo grub-mkconfig -o /boot/grub/grub.cfg
На этом всё. Рекомендую всем линуксоидам сохранить данную инструкцию. В нужный момент выручит. Я даже через эту инструкцию развернул свою рабочую систему в виртуалке.