Chcę przywrócić pełną kopię zapasową tar Ubuntu 12.04 ze wszystkimi moimi dostosowaniami, dokumentami, zainstalowanym oprogramowaniem itp. Na innym komputerze.
Wykonałem kopię zapasową za pomocą następujących poleceń:
sudo su
cd /
tar cvpzf ububackup.tgz --exclude=/ububackup.tgz --exclude=/proc --exclude=/lost+found --exclude=/sys --exclude=/mnt --exclude=/tmp --exclude=/media /
Na nowym komputerze wykonałem nową instalację systemu Ubuntu 12.04, przeniosłem do niego plik kopii zapasowej, a następnie przywróciłem go z plikiem kopii zapasowej w następujący sposób:
tar xvpfz backup.tgz -C /
Zgodnie z oczekiwaniami (patrz odpowiedź Mike'a Cokolwiek na to pytanie: Skopiuj dystrybucję Ubuntu ze wszystkimi ustawieniami z jednego komputera na inny ), to spowodowało błąd. Po włączeniu komputera pojawia się błąd:
error: no such device: ...
press any key to continue ...
Uważam, że przyczyną uszkodzenia Grub jest to, że identyfikator UUID szuka dopasowań na starym dysku twardym, a nie na dysku twardym komputera.
Jak mogę naprawić gruba, aby rozpoznał nowy dysk twardy? Szukałem pomocy online „Napraw GRUB UUID”, ale kroki wydawały się albo nieaktualne, albo skomplikowane. Odpowiedź Mike'a, którą zamieściłem powyżej, daje mi nadzieję, że istnieje dość prosty sposób na naprawę tego.
źródło
Odpowiedzi:
Aby rozwiązać bieżący problem, musisz zmienić identyfikatory UUID w „/ etc / fstab” i „/boot/grub/grub.cfg” (bardzo trudne).
Możesz użyć płyty instalacyjnej Ubuntu, aby uzyskać UUID (y) z gparted (wystarczy kliknąć prawym przyciskiem myszy partycję, dla której chcesz uzyskać UUID, i kliknąć „Informacje”, a następnie wybrać UUID i skopiować go za pomocą CTRL + C) lub wiersz poleceń (
sudo blkid
).Następnie musisz edytować plik „/ etc / fstab” na prawym tomie za pomocą gedit, nano lub jeszcze innego.
W terminalu wpisz:
i zastąp stare UUID nowymi.
WAŻNE: Oczywiście, jeśli użyjesz do tego rozruchowej płyty CD, musisz dodać „/ media / xxxxx” przed „/ etc / fstab”: „/ media / xxxxx / etc / fstab”. Możesz także użyć
gksudo gedit
i otworzyć plik, aby dokonać edycji.OSTRZEŻENIE: Modyfikacja „/boot/grub/grub.cfg” jest bardzo trudna. Zwykle powinien być generowany za pomocą polecenia
sudo update-grub
.Zastąp stare UUID nowymi w „/boot/grub/grub.cfg”, wprowadzając następujące dane w terminalu:
WAŻNE: Oczywiście, jeśli użyjesz do tego rozruchowej płyty CD, musisz dodać „/ media / xxxxx” przed „/boot/grub/grub.cfg”: „/ media / xxxxx / boot / grub / grub. cfg ”. Możesz także użyć
gksudo gedit
i otworzyć plik, aby dokonać edycji.Jeśli korzystasz z podstępnego rozwiązania, zalecamy uruchomienie
sudo update-grub
po pomyślnym uruchomieniu systemu.Czystszym, ale prostym sposobem na poprawną konfigurację GRUB-a może być użycie dysku naprawczego rozruchu, takiego jak „Boot-Repair-Disk”: http://sourceforge.net/p/boot-repair-cd/home/Home/
Mam nadzieję, że pomoże ci to rozwiązać problem.
Jednak możesz rozważyć użycie Clonezilli do replikacji starego komputera na nowym, jak wskazano w moim komentarzu.
źródło
Prawdopodobnie oznacza to, że GRUB uruchamia się i wyświetla opcję uruchamiania z Ubuntu, ale kiedy wybierzesz, że się nie uruchamia?
Myślę, że są dwie opcje:
Pierwszy przypadek powinien być łatwiejszy, jeśli masz tylko Ubuntu i masz tylko jeden dysk twardy, w takim przypadku wybierz opcję „Odzyskiwanie Ubuntu” i naciśnij „e”, aby edytować:
Wpis powinien wyglądać mniej więcej tak:
Usuń wiersz „szukaj” i zamień „root = UUID = XXXXX” w wierszu „linux” na „root = / dev / sda1”. Spróbuj uruchomić to i mam nadzieję, że po krótkim czasie wyświetli się menu odzyskiwania Ubuntu, które powinno mieć opcję grub, która powinna poprawnie zainstalować grub.
W przeciwnym razie lub jeśli wolisz nie zadzierać bezpośrednio z grubem (który powinien zawierać ostrzeżenie zdrowotne, użyj dysku CD / USB zgodnie z dokumentacją w https://help.ubuntu.com/community/Grub2/Installing#Reinstalling_GRUB_2
źródło
W moim przypadku identyfikator UUID, który zainstalował grub, był inny niż obecny UUID (
sudo blkid
) dla mojej partycji Windows (potwierdzony w grub.cfg). Bezskutecznie próbowałem różnych metod. W końcu zamontowałem partycję Windows za pomocą menedżera plików i uruchomiłemupdate-grub
ponownie, a identyfikator UUID został pomyślnie zaktualizowany w pliku grub.cfg.źródło
update-grub
i niegrub-update
. Nie jest to wcale oczywiste, ponieważ zaczyna się od większości poleceń grubgrub-...
.Co zrobiłem zamiast edytować fstab i 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 /
)Używam maszyn wirtualnych vmware, zrobiłem ten proces, aby przenieść jeden serwer linux z jednego hosta na inny.
źródło