Niezgodność rozmiaru GPT PMBR po klonowaniu dd

13

Przeprowadzam migrację mojego systemu rozruchowego EFI Ubuntu na większy dysk twardy. Użyłem polecenia

dd if=/dev/sdb of=/dev/sda

Nie zdemontowałem pliku wejściowego przed skopiowaniem, a plik wyjściowy był świeżą niepartycjonowaną przestrzenią. Udało mi się uruchomić z nowego większego dysku twardego.

  • fdisk -l raporty:

    Niezgodność rozmiaru GPT PMBR

  • gdisk zgłasza stary rozmiar dysku (200 GB) i

  • PMBR zgłasza nowy rozmiar dysku twardego (2 TB).

Komenda błędu gdisk w(zapis) będzie działać, jednak gdisk help zaleca polecenie xe(przenieś kopię zapasową na koniec dysku).

Moim celem jest usunięcie starego dysku i użycie nowego dysku jako podstawowego dysku rozruchowego przy niezmienionej instalacji starego gruba.

Czy powinienem po prostu rozszerzyć partycje, czy powinienem użyć jednego z tych poleceń?

Zakri Kneebone
źródło

Odpowiedzi:

10

Postępuj zgodnie ze gdiskwskazówkami: Użyj eopcji w menu ekspertów ( x), aby przenieść struktury danych na koniec dysku. Możesz zrobić to samo w partedGParted, jeśli wolisz. IIRC, robią to półautomatycznie, chociaż proszą o potwierdzenie.

Po przeniesieniu struktur danych kopii zapasowych GPT możesz zmienić rozmiar partycji za pomocą GParted.

Rod Smith
źródło
4
Powinieneś uwierzyć temu facetowi - napisałgdisk .
mikeserv
Skończyło się na użyciu gparted z usb na żywo. Usunąłem partycje i przepisałem tabelę partycji na nowym dysku. Stamtąd napisałem kroki robota: gparted skopiował strukturę partycji starego dysku, a tymczasem zmienił rozmiar partycji i skopiował dane dla nowego dysku. Robił wszystko, kiedy spałam.
Zakri Kneebone,
1
@ZakriKneebone: Ponieważ nie widzę wyjaśnienia „dlaczego powinieneś to zrobić” wyjaśnionego tutaj: ponieważ GPT jest zapisywany w pierwszym i ostatnim sektorze dysku na wypadek awarii tego w pierwszym sektorze, nadal ma on tył -up ... (i opinia!)
Fabby
1
@RodSmith Mile widziane byłoby również alternatywne nieinteraktywne rozwiązanie. Po sklonowaniu przy użyciu ddna większy dysk ten problem zawsze powraca. Przydatne, jeśli skrypt klonowania może naprawić niepoprawny „zapasowy GPT”. Nie mogę znaleźć opcji przeniesienia w GPT fdisk (sgdisk) w wersji 1.0.3. Nie wspominając, że superuser.com/questions/905756/… mówi, że -e|--move-second-headerjest to opcja sgdisk.
Pro Backup
1

Chcę opublikować rozszerzone wyjaśnienie moich prób i błędów dla tych, którzy próbują tego samego, ponieważ dokumentacja jest raczej rozdrobniona i wskazuje na kilka różnych technik. Skończyło się na użyciu gparted z usb na żywo. Usunąłem partycje i przepisałem tabelę partycji na nowym dysku. Gparted ma sekwencer krokowy: skopiował strukturę partycji starego dysku, a tymczasem zmienił rozmiar partycji i skopiował dane dla nowego dysku. Robił wszystko, kiedy spałam. Korzystanie z dd wymagało również ręcznej aktualizacji pliku fstab, który pominąłem. Następnie spróbowałem ddrescue (z pakietu Universe przez Synaptic, a nie Software Center) z usb na żywo, który zgłosił, że nie działa z gpt. Odesłał mnie do gparted.

Zakri Kneebone
źródło
Dobry też! Wiele osób będzie uczyć się od tego pytania i odpowiedzi ...
Fabby
0

Po prostu kolejny punkt odniesienia, natknąłem się dziś na zmianę rozmiaru woluminu EBS w mojej instancji EC2. Rozwiązałem go przez uruchomienie growpart /dev/nvme0n1 1, które poprawnie zmieniło rozmiar mojej partycji.

Aaron R.
źródło