Я хочу восстановить полную резервную копию tar Ubuntu 12.04 со всеми моими настройками, документами, установленным программным обеспечением и т. Д. На другом компьютере.
Я сделал резервную копию с помощью следующих команд:
sudo su
cd /
tar cvpzf ububackup.tgz --exclude=/ububackup.tgz --exclude=/proc --exclude=/lost+found --exclude=/sys --exclude=/mnt --exclude=/tmp --exclude=/media /
На новом компьютере я сделал новую установку Ubuntu 12.04, переместил на нее файл резервной копии и затем восстановил с помощью файла резервной копии. со следующим:
tar xvpfz backup.tgz -C /
Как и ожидалось (см. Майк Уизер, ответивший на этот вопрос: Скопируйте дистрибутив Ubuntu со всеми настройками с одного компьютера на другой ), это сломало личинку. Когда я включаю компьютер, я получаю сообщение об ошибке:
error: no such device: ...
press any key to continue ...
Я полагаю, что причина того, что Grub не работает, состоит в том, что UUID, который он ищет, соответствует на старом жестком диске, а не на жестком диске для компьютер.
Как мне починить мой grub, чтобы он распознал новый жесткий диск? Я искал в интернете справку «Fix GRUB UUID», но шаги казались либо устаревшими, либо сложными. Ответ Майка, на который я ссылался выше, вселяет надежду, что существует довольно простой способ исправить это.
Чтобы решить вашу текущую проблему, вам нужно изменить UUID(ы) в "/etc/fstab" и "/boot/grub/grub.cfg" (очень хитро).
Вы можете использовать установочный диск Ubuntu, чтобы получить UUID(ы) с gparted (вам нужно просто щелкнуть правой кнопкой мыши по разделу, для которого вы хотите получить UUID, и нажать кнопку "Информация", затем выбрать UUID и скопировать его с помощью CTRL + C) или командной строки (sudo blkid
).
Затем нужно отредактировать "/etc/fstab" на правом томе с помощью gedit, nano или иначе.
В терминале введите:
gksudo gedit /etc/fstab
и замените старые UUID-ы на новые.
ВАЖНО: Конечно, если вы используете загрузочный CD для этого, вам нужно будет добавить "/media/xxxx" перед "/etc/fstab": "/media/xxxx/etc/fstab". Вы также можете использовать gksudo gedit
и открыть файл для самостоятельного редактирования.
ПРЕДУПРЕЖДЕНИЕ : Изменить "/boot/grub/grub.cfg" очень сложно. Обычно она должна быть сгенерирована командой sudo update-grub
.
Замените старые UUID на новые в "/boot/grub/grub. cfg", введя в терминале :
gksudo gedit /boot/grub/grub.cfg
IMPORTANT : Конечно, если вы используете для этого загрузочный CD, то перед "/boot/grub/grub.cfg" нужно добавить "/media/xxxx/boot/grub.cfg": "/media/xxxx/boot/grub/grub.cfg". Вы также можете использовать gksudo gedit
и открыть файл для самостоятельного редактирования.
Если вы используете хитрое решение, я рекомендую запустить sudo update-grub
после успешной загрузки системы.
Более чистым, но простым способом правильной настройки grub может быть использование загрузочного диска восстановления типа "Boot-Repair-Disk" : http://sourceforge.net/p/boot-repair-cd/home/Home/
Я надеюсь, что это поможет вам решить вашу проблему.
Однако вы можете использовать Clonezilla для репликации старого компьютера на новом, как указано в моем комментарии.
В моем случае UUID, установленный grub, отличался от моего текущего UUID ( sudo blkid
) для моего раздела Windows (подтверждено в grub.cfg). Пробовал разные методы безуспешно.
Наконец, я смонтировал раздел Windows с помощью файлового менеджера и снова запустил update-grub
, и UUID был успешно обновлен в grub.cfg.
Предположительно это означает, что grub запускается и отображает опцию загрузки в Ubuntu, но когда вы выбираете, что он не загружается?
Думаю, есть два варианта:
Первый случай должен быть проще, если у вас только Ubuntu и только один жесткий диск, в этом случае выберите опцию "Восстановление Ubuntu" и нажмите "e" для редактирования:
Запись должна выглядеть так:
insmod gzio
insmod part_msdos
insmod ext2
set root=('hd0,msdos0')
search --no-floppy --fs-uuid --set=root XXXXXX
linux /boot/vmlinuz-YYYYY root=UUID=XXXXXX ro recovery nomodeset
initrd /boot/initrd.img-YYYYY
Удалите строку "search" и замените "root=UUID=XXXXX" в строке "linux" на "root=/dev/sda1". Попробуйте загрузиться и, надеюсь, через некоторое время вы получите меню восстановления Ubuntu, в котором должна быть опция grub, которая должна правильно переустановить grub.
В противном случае, или, если вы предпочитаете не связываться с grub напрямую (на котором должно быть предупреждение о здоровье, используйте CD/USB карту, как описано в https://help. ubuntu.com/community/Grub2/Installing#Reinstalling_GRUB_2
Что я сделал вместо редактирования fstab и grub:
tar -cvf /somedir/boot.tar / etc / fstab /boot/grub/grub.cfg
) tar -xvpf /mnt/remotebk/full.tar
) cp / etc / fstab /somedir/fstab.restored
) tar -xvpf / somedir / boot .tar -C /
) Я использую виртуальные машины vmware, я проделал этот процесс для перемещения одного Linux-сервера с одного хоста на другой.