Strona 1 z 3

Skopiowanie systemu na drugi dysk - nie dziala GRUB

: 17 lipca 2008, 14:15
autor: siekier
Postanowiłem w komputerze, który działa u mnie jako router wymienić dysk na większy (w tej chwili ma 2,5GB).
Stworzyłem na nowym dysku partycje tak samo jak na starym. Skopiowałem cała zawartość (oprócz /proc i /sys) / ze starego dysku na nowy. Zainstalowałem gruba wg metody z tego forum.
Niestety system na nowym dysku po zresetowaniu nie wstaje.
Pojawia się tylko napis GRUB i staje w tym miejscu.
Co mogę zrobić?

: 17 lipca 2008, 14:30
autor: fnmirk
Może zerknij jeszcze do takiego opisu.

: 17 lipca 2008, 14:59
autor: Akkon
siekier pisze:Niestety system na nowym dysku po zresetowaniu nie wstaje.
Pojawia się tylko napis GRUB i staje w tym miejscu.
Musisz dostosować menu.lst do nowego dysku. Zapewne układ partycji nie jest taki sam. Pokaż wynik dla tego dysku:

Kod: Zaznacz cały

fdisk -l
i

Kod: Zaznacz cały

cat /boot/grub/menu.lst
fnmirk pisze:Może zerknij jeszcze do takiego opisu.
Jak widzę zawsze masz go pod ręką ;-)
Cieszy mnie to bardzo :-)

: 17 lipca 2008, 15:07
autor: siekier

Kod: Zaznacz cały

serwer:~# fdisk -l

Disk /dev/hda: 2522 MB, 2522677248 bytes
255 heads, 63 sectors/track, 306 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1               1         182     1461883+  83  Linux
/dev/hda2             286         306      168682+  82  Linux swap / Solaris
/dev/hda3             183         285      827347+  83  Linux

Partition table entries are not in disk order

Disk /dev/hdb: 15.0 GB, 15020457984 bytes
255 heads, 63 sectors/track, 1826 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1   *           1         382     3068383+  83  Linux
/dev/hdb2             383         431      393592+  82  Linux swap / Solaris
/dev/hdb3             432        1826    11205337+  83  Linux
i fragment menu.lst

Kod: Zaznacz cały

title           Debian GNU/Linux, kernel 2.6.22-4-486
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.22-4-486 root=/dev/hda1 ro
initrd          /boot/initrd.img-2.6.22-4-486
savedefault
Układ partycji jest taki sam, więc nie wiem w czym może być problem.

: 17 lipca 2008, 18:14
autor: Akkon
siekier, masz dwa dyski. Napisz który jest dyskiem źródłowym (z którego kopiowałeś), a który docelowym (na który kopiowałeś).

: 17 lipca 2008, 18:44
autor: akaryuu
Witam..
Wyglada na to, ze stage1 gruba znajdujacy w MBR nie moze zaladowac stage2 znajdujacego sie juz w systemie plikow. Czy instalacja gruba wg podlinkowanego tematu przebiegla pomyslnie i nie zwrocila zadnych bledow?

: 17 lipca 2008, 20:34
autor: siekier
Dysk źródłowy jest to ten mniejszy czyli hda, a skopiowałem na hdb.
Takie są efekty instalacji gruba:

Kod: Zaznacz cały

serwer:/# grub
Probing devices to guess BIOS drives. This may take a long time.

       [ Minimal BASH-like line editing is supported.   For
         the   first   word,  TAB  lists  possible  command
         completions.  Anywhere else TAB lists the possible
         completions of a device/filename. ]

grub> find /boot/grub/stage1
 (hd0,0)
 (hd1,0)

grub> root (hd0,0)
 Filesystem type is ext2fs, partition type 0x83

grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  15 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p (hd0,0)/boot/grub/stage2
/boot/grub/menu.lst"... succeeded
Done.

grub>
Instalacje gruba robię przez ssh z drugiego kompa, bo tam nie mam monitora ani klawiatury.
W tej chwili stary dysk mam podłączony jako master, nowy jako slave. System plików ze skopiowanej partycji zamontowałem przez chroot.
W trakcie instalacji choć w tej chwili jest to partycja hd1,0 podaję hd0,0 gdyż ten dysk ma chodzić docelowo jako master. Ten dotychczasowy zamierzam w ogóle odłączyć.
Nie wiem czy nie popełniam jakiegoś błędu, ale wcześniej zrobiłem to samo tylko, że przy użyciu linuksa z cd i podłączonym tylko nowym dyskiem.

: 17 lipca 2008, 21:12
autor: Akkon
Dysk źródłowy jest to ten mniejszy czyli hda, a skopiowałem na hdb.
W takim razie zmień:

Kod: Zaznacz cały

root            (hd0,0)
kernel          /boot/vmlinuz-2.6.22-4-486 root=/dev/hda1 ro 
na

Kod: Zaznacz cały

root            (hd1,0)
kernel          /boot/vmlinuz-2.6.22-4-486 root=/dev/hdb1 ro 

: 17 lipca 2008, 21:26
autor: fnmirk
siekier należy jeszcze edytować fstab na nowym dysku. Jeżeli masz obydwa dyski podpięte to teraz ten nowy jako jeszcze slave, musi mieć wszędzie ustawienia jako hdb.
Czyli ustawiasz ścieżkę do kernela w menu.lst dla drugiego dysku.
I zmieniasz wpis do /etc/fstab na drugim dysku.

Kiedy go zostawisz jako master będziesz musiał zmienić ponownie wpis w /etc/fstab na hda i zainstalować gruba. Oczywiście sprawdzając (zmieniając) menu.lst.
Ustaw flagi boot na obydwu dyskach, będzie trochę łatwiej.

: 17 lipca 2008, 22:47
autor: siekier
Zmieniłem fstab i menu.lst jak radziliście. Grub odpala się ze starego dysku, ale Debian z nowego bootuje się bez problemów i działa tak samo dobrze, więc skopiowanie się powiodło.
Teraz tylko jak zrobić abym mógł odłączyć stary dysk, nowy ustawić na mastera i żeby z niego grub bootował?