Kategorie
Linux Ubuntu

Przenoszenie Ubuntu na inny dysk

Czasami zachodzi potrzeba przeniesienia systemu operacyjnego z jednego dysku na drugi. Poniżej kilka wskazówek jak można to wykonać na przykładzie Ubuntu. Na początku najlepiej jest podpiąć nowy dysk w miejsce starego, a stary podłączyć do innego kanału SATA. Jeśli coś się nie uda, zawsze będziemy mieli możliwość podłączenia starego dysku w jego pierwotny kanał i uruchomienia systemu. Po podłączeniu dysków uruchamiamy komputer z płyty Live CD lub pendriva i przygotowujemy nowy dysk do pracy tworząc na nim partycje (gparted, cfdisk, fdisk). Najlepiej jest zachować taki sam układ partycji jak na starym dysku, a ich wielkość dostosować do rozmiaru nowego dysku. Kolejnym krokiem jest utworzenie katalogów o nazwach przykładowo: stary_dysk i nowy_dysk:

root@ubuntu:/# mkdir /mnt/stary_dysk
root@ubuntu:/# mkdir /mnt/nowy_dysk

Następnie montujemy oba dyski do odpowiednich katalogów:

root@ubuntu:/# mount /dev/sdb1 /mnt/stary_dysk
root@ubuntu:/# mount /dev/sda1 /mnt/nowy_dysk

Jeśli posiadamy więcej partycji na dyskach z każdą z nich postępujemy analogicznie jak powyżej. Kolejnym krokiem jest przekopiowanie plików z jednego dysku na drugi. Można to zrobić menadżerem plików lub przy wykorzystaniu narzędzia rsync jak poniżej:

root@ubuntu:/# rsync -avx /mnt/stary_dysk /mnt/nowy_dysk

Po skopiowaniu wszystkich danych edytujemy plik fstab znajdujący się na nowym dysku:

root@ubuntu:/# vim /mnt/nowy_dysk/etc/fstab

i sprawdzamy czy przy poszczególnych wpisach są numery UUID partycji. Jeśli tak musimy je pozamieniać na nowe, które uzyskamy poleceniem blkid (wyświetli ono pliki urządzeń np. /dev/sda1, numer UUID partycji oraz jej etykietę jeśli występuje).

root@ubuntu:/# blkid

Jeśli w pliku fstab nie ma numerów UUID, a nowy dysk podłączyliśmy w miejsce starego nie musimy nic robić. Jeśli dodaliśmy dodatkowe partycje, nowy dysk jest podpięty do innego portu niż był starty musimy dodać odpowiednie wpisy lub edytować odpowiednio stare. Kolejnym krokiem jest instalacja grub’a w MBR na nowym dysku. W tym celu wykonujemy poniższe komendy:

root@ubuntu:/# mount -o bind /dev /mnt/nowy_dysk/dev
root@ubuntu:/# mount proc /mnt/nowy_dysk/proc -t proc
root@ubuntu:/# mount sysfs /mnt/nowy_dysk/sys -t sysfs
root@ubuntu:/# chroot /mnt/nowy_dysk
root@ubuntu:/# grub-install /dev/sda
root@ubuntu:/# update-grub2
root@ubuntu:/# exit

Następnie sprawdzamy czy w pliku /mnt/nowy_dysk/boot/grub/grub.cfg mamy wpisane odpowiednie nowe numery UUID przy odpowiednich pozycjach. Jeśli są stare wpisy musimy je zamienić nowymi uzyskanymi poleceniem blkid poprzez edycję powyższego pliku (najlepiej wykorzystując komendę znajdź i zamień). Teraz sprawdzamy poleceniem blkid numer UUID partycji swap:

root@ubuntu:/# blkid

Może się zdarzyć, że po utworzeniu partycji oznaczonej jako swap nie posiada ona numeru UUID. Wystarczy wtedy wykonać poniższe polecenie:

root@ubuntu:/# mkswap /dev/sda2

i po nim jeszcze raz:

root@ubuntu:/# blkid

Kopiujemy numer UUID partycji swap i wklejamy go do pliku /mnt/nowy_dysk/etc/initramfs-tools/conf.d/resume zastępując poprzedni wpis UUID. Jeśli wszystko zrobiliśmy jak w przykładzie możemy odłączyć stary dysk i uruchomić komputer z nowego. Po zalogowaniu się do systemu wykonujemy ostatnie polecenie:

root@ubuntu:/# update-initramfs -u

i uruchamiamy jeszcze raz system.

W odpowiedzi na “Przenoszenie Ubuntu na inny dysk”