Przeniesienie linuksa na nowy dysk

zalozenia:


stary dysk gdzie jest linux --> /dev/hda1 (primaty master)


nowy dysk gdzie chcemy go przeniesc --> /dev/hdc1 (secondary master)



Jesli w dystrybucji ktorej uzywasz nie ma lub nie jest uzywane polecenie sudo - wystepujace w wielu miejscach na samym poczatku - wykonaj dana komende jako root pomijajac slowo sudo na samym poczatku. Efekt bedzie identyczny. :)




1. Odmontuj wszystkie udzialy dyskowe jakie tylko mozesz. Najlepiej jesli pozostanie tylko zamontowany tylko /


robimy to np tak:


sudo umount /jakis/zamontowany/udzial/dyskowy

2. Zaloz partycje na nowym dysku. Nie ma znaczenia jakiego bedzie rozmiaru. Jednak nie powinna byc mniejsza (to chyba logiczne?)



robimy to np uzywajac programu cfdisk


sudo cfdisk /dev/hdc

Jako typ partycji pozostaw Linux


Nie zapomnij ustawic partycji jako aktywnej! (opcja Bootable)



3. Sformatuj partycje, zakladajac n niej system plikow. Ja uzywam reiserFS wiec zrobilem to tak:


sudo mkfs.reiserfs /dev/hdc1


4. Zamontuj nowy dysk.



sudo mount /dev/hdc1 /media/test/

5. Jesli ciagle jestes w X'ach lub chociaz masz je wlaczone wyjdz z nich!


Najlepiej przejdz do trybu pojedynczego uzytkownika poleceniem:


sudo telinit 1

albo do normalnej konsoli poprzez


sudo telinit 3

6. Rozpocznij kopiowanie:


cp -ax / /media/test

Teraz mozesz isc na spacer z psem bo to zajmie calkiem sporo czasu...



Jesli mozesz sie przelaczyc na inna konsole mozesz sprawdzac co sie dzieje (i czy w ogole sie cos dzieje) poleceniami:


watch df
watch ls -l /media/test

Po zakonczeniu mozesz sprawdzic czy pliki zostaly przekopiowane poprawnie:


find / -path /proc -prune -o -path /media/test -prune -o -xtype f -exec cmp {} /media/test{} ;

Ale nie wydaje mi sie to potrzebne a zajmuje znowu mase czasu...



7. Zmodyfikuj plik /etc/fstab tak aby odpowiadalo zawartosci nowego dysku. Pamietaj ze mimo ze dysk jest wciaz /dev/hdc to musisz go traktowac jako /dev/hda !!Tutaj nie napisze jak i co robic bo nie wiadomo co bedziesz mial na dysku. Ja mialem prawie dokladnie to samo tylko partycje byly 2x wieksze.


Jedynie partycja swap u mnie zmienila nazwe z /dev/hda5 na /dev/hda2 co zaowocowala modyfikacja:


/dev/hda5 none swap sw 0 0 na/dev/hda2 none swap sw 0 0

8. Zainstaluj boot loader. Nie potrzebujemy praktycznie niczego po za tym aby w MBR sie znalazlo cos co przeczyta wszystkie nasze pliki i ruszy system.


Tutaj opis bedzie dwutorowy. Jeden dotyczy LILO a drugi gruba. Ja posiadam GRUB'a wiec nt LILO wiem nie duzo i bedzie to tylko kopia informacji znalezionych gdzie indziej.



* GRUB

Wlasciwie wszystko powinno rozwiazac polecenie:


grub-install --root-directory=/media/test/ hd2

ale z dziwnych powodow sypalo bledami i dopiero polecenie:


grub-install --root-directory=/media/test/boot hd2

zainstalowalo wszystko bez komunikatow o klopotach. Stworzylo to dodatkowa strukture w /boot ktora mozna usunac bo nie jest potrzebna



*LILO

Przeedytuj plik Edit /media/test/etc/lilo.conf :



disk=/dev/hdc bios=0x80 # Mowi lilo aby traktowalo 3ci dysk
# tak jakby byl pierwszym
# (BIOS ID 0x80).
boot=/dev/hdc # Instaluj LILO na 3cim dysku
map=/media/test/boot/map # Lokalizacja pliku "map".
install=/media/test/boot/boot.b # plik do przekopiowania na boot sektor twardziela
prompt # Czy pokazywac znak zachety LILO
timeout=50 # Po jakim czasie uruchomic standardowy system
# wartosci sa w 1/10 sek
image=/media/test/boot/vmlinuz # Lokalizacja kernela
# Mozlie ze bedzie trzeba tu wstawic wlasciwa nazwe np:
# "vmlinuz-2.0.35".
label=linux # Nazwa
root=/dev/hda1 # Lokalizacja partycji / na
# nowym dysku.
read-only # Montuje partycje najpierw tylko do odczytu aby ja sprawdzic


a zainstaluj lilo poleceniem:


sudo lilo -C /media/test/etc/lilo.conf

9. Wylacz komputer. I podlacz nowy dysk w miejsce starego. Po wlaczeniu kompa jesli nie bylo zadnych bledow system powinien dzialac dokladnie tak samo tylko ze z nowego dysku.




Milej zabawy. :)

Comments