LINUX.ORG.RU
ФорумAdmin

Перенос системы на новый HDD


0

1

Прикрутил новый HDD.

Задача - перенести со старого HDD систему на новый HDD

Новый HDD - /dev/sdb

Старый HDD - /dev/sda

qa-web:/home/maxim# fdisk -l /dev/sda

Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xef36ef36

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       29652   238179658+  83  Linux
/dev/sda2           29653       30401     6016342+   5  Extended
/dev/sda5           29653       30401     6016311   82  Linux swap / Solaris 

Отформатили и примаунтил /dev/sdb в /mnt/temp

qa-web:/home/maxim# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             224G   19G  194G   9% /
tmpfs                1002M     0 1002M   0% /lib/init/rw
udev                  998M  172K  998M   1% /dev
tmpfs                1002M  4.0K 1002M   1% /dev/shm
/dev/sdb              459G  199M  435G   1% /mnt/temp

Теперь cp -ax / /mnt/temp - правильно?

И вот , ребята, посдкажите , как правильно сказать загрузчику(GRUB) с какого диска грузится?

P.S. DEBIAN 5.0.6/amd64

Ответ на: комментарий от I00matolog

>qa-web:/# grub-install /dev/sdb /usr/sbin/grub-probe: error: cannot find a device for /boot/grub (is /dev mounted?).

смонтируй в новую систему /dev /proc /sys и будет счастье)))

novitchok ★★★★★ ()
Ответ на: комментарий от I00matolog
mount /dev/_раздел_с_новой_системой_ /_точка_монтирования_ # опции естественно твои
mount /dev /_точка_монтирования_/dev #см. пункт про опции, далее также
mount /proc /_точка_монтирования_/proc
mount /sys /_точка_монтирования_/sys
croot /_точка_монтирования_

теперь ставь груб)))))

novitchok ★★★★★ ()

sudo mount /dev/sda1 /mnt sudo mount --bind /dev/ /mnt/dev sudo mount --bind /proc/ /mnt/proc sudo chroot /mnt update-grub grub-install /dev/sdX exit sudo umount /mnt/dev sudo umount /mnt/boot sudo umount /mnt reboot

xkool ()
Ответ на: комментарий от Tok

не забыл

# опции естественно твои пункт про опции, далее также

пусть ТС хоть man mount почитает, хоть чему-то научится:D

novitchok ★★★★★ ()
Ответ на: комментарий от novitchok
qa-web:/mnt/temp# mount --bind /dev /mnt/temp/dev
qa-web:/mnt/temp# mount --bind /proc /mnt/temp/proc 
qa-web:/mnt/temp# chroot /mnt/temp/
qa-web:/# ls -l
total 80
drwxr-xr-x   2 root root  4096 2010-11-08 12:35 bin
drwxr-xr-x   3 root root  4096 2010-11-04 23:27 boot
drwxr-xr-x  15 root root  2940 2010-11-18 09:58 dev
drwxr-xr-x  77 root root  4096 2010-11-18 09:58 etc
drwxr-xr-x   5 root root  4096 2010-11-05 09:28 home
lrwxrwxrwx   1 root root    30 2010-11-18 10:12 initrd.img -> boot/initrd.img-2.6.32-5-amd64
drwxr-xr-x  11 root root  4096 2010-11-08 13:13 lib
drwx------   2 root root 16384 2010-11-04 23:08 lost+found
drwxr-xr-x   2 root root  4096 2010-11-04 23:14 media
drwxrwxrwx   4 root root  4096 2010-11-08 11:57 mnt
drwxr-xr-x   2 root root  4096 2010-11-04 23:14 opt
dr-xr-xr-x 206 root root     0 2010-11-18 09:45 proc
drwxr-xr-x   9 root root  4096 2010-11-08 13:16 root
drwxr-xr-x   2 root root  4096 2010-11-04 23:26 sbin
drwxr-xr-x   2 root root  4096 2008-09-16 10:38 selinux
drwxr-xr-x   2 root root  4096 2010-11-04 23:14 srv
drwxr-xr-x   2 root root  4096 2010-11-18 09:45 sys
drwxrwxrwt   4 root root  4096 2010-11-18 09:45 tmp
drwxr-xr-x  11 root root  4096 2010-11-08 12:35 usr
drwxr-xr-x  15 root root  4096 2010-11-10 11:26 var
lrwxrwxrwx   1 root root    27 2010-11-18 10:53 vmlinuz -> boot/vmlinuz-2.6.32-5-amd64
qa-web:/# update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-5-amd64
Found initrd image: /boot/initrd.img-2.6.32-5-amd64
Cannot find list of partitions!
done
qa-web:/# grub-install /dev/sdb1
/usr/sbin/grub-setup: error: unable to identify a filesystem in hd1,msdos1; safety check can't be performed.

что этому гаду нада?

I00matolog ()
Ответ на: комментарий от I00matolog

в чруте дай вывод:

ls -1 /boot
выйди из чрута, ничего не отмонтируй и дай вывод
ls -1 /mnt/temp/boot
только про лор-код не забывай))) И кстати, дай вывод:
cat /boot/grub/menu.lst
cat /mnt/temp/boot/grub/menu.lst
Вот не помню, что в ленни, груб или груб2, если второй груб, то соответственно оба конфига грубовских (/boot/grub/grub.conf) давай сюда. Выводы оба естественно, выйдя из чрута

novitchok ★★★★★ ()
Ответ на: комментарий от I00matolog

ты просто похоже, тупо перенёс конфиг грубовский со старой системы на новую, а устройства-то поменялись у тебя)))

novitchok ★★★★★ ()
Ответ на: комментарий от novitchok
qa-web:/mnt/temp# cat /mnt/temp/boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod ext2
set root='(hd1)'
search --no-floppy --fs-uuid --set 34edf190-24ce-4787-88e9-2f1f8e8d04a6
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
insmod ext2
set root='(hd1)'
search --no-floppy --fs-uuid --set 34edf190-24ce-4787-88e9-2f1f8e8d04a6
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
	insmod ext2
	set root='(hd1)'
	search --no-floppy --fs-uuid --set 34edf190-24ce-4787-88e9-2f1f8e8d04a6
	echo	'Loading Linux 2.6.32-5-amd64 ...'
	linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=34edf190-24ce-4787-88e9-2f1f8e8d04a6 ro  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initrd.img-2.6.32-5-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
	insmod ext2
	set root='(hd1)'
	search --no-floppy --fs-uuid --set 34edf190-24ce-4787-88e9-2f1f8e8d04a6
	echo	'Loading Linux 2.6.32-5-amd64 ...'
	linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=34edf190-24ce-4787-88e9-2f1f8e8d04a6 ro single 
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initrd.img-2.6.32-5-amd64
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
I00matolog ()
Ответ на: комментарий от I00matolog

поправил /mnt/temp/etc/fstab, вписал вместо sda -> sdb

еще раз сделал update-grub, все равно

qa-web:/# mount --bind /dev /mnt/temp/dev
qa-web:/# mount --bind /proc /mnt/temp/proc
qa-web:/# chroot /mnt/temp/
qa-web:/# update-grub 
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-5-amd64
Found initrd image: /boot/initrd.img-2.6.32-5-amd64
Cannot find list of partitions!
done
qa-web:/# grub-install /dev/sdb1
/usr/sbin/grub-setup: error: unable to identify a filesystem in hd1,msdos1; safety check can't be performed.
I00matolog ()
Ответ на: комментарий от I00matolog

Ну и что ты хочешь? Куда у тебя в _новой_ системе корень монтируется?

/dev/sda1


Поставь UUID раздела и ставь свой груб, потом не забудь в грубовом конфиге

set root='(hd1)'


на set root='(hd0)' поменять, но при этом старый винт отключи.

novitchok ★★★★★ ()
Ответ на: комментарий от I00matolog

>старый винт не могу отключить - железка находится в другой стране.

тогда просто

Поставь UUID раздела и ставь свой груб


тонкости:
UUID в /etc/fstab
груб ставь на _первый_физический_диск_
grub-install /dev/sda
это в случае, если в системе останутся _оба_ винта

novitchok ★★★★★ ()
Ответ на: комментарий от novitchok

Ну и что ты хочешь? Куда у тебя в _новой_ системе корень монтируется?

/dev/sda1

Поставь UUID раздела и ставь свой груб, потом не забудь в грубовом конфиге

set root='(hd1)'

на set root='(hd0)' поменять, но при этом старый винт отключи.

Так я ж выше уже написал

I00matolog ()
Ответ на: комментарий от I00matolog

а вообще, если так и планируешь дальше оставить оба винта, то имеет смысл просто поправить конфиг существующегго груба, дописав секцию с новой системой, и сделав её загружаемой по умолчанию, смотри в строну
os-prober

novitchok ★★★★★ ()
Ответ на: комментарий от I00matolog

У тебя нет физического доступа к машине, планируется, что оба винта так и будут присутствовать, но ты хочешь перенести просто систему на второй винт? Так что-ли?

novitchok ★★★★★ ()
Ответ на: комментарий от I00matolog

хосспыдя, править надо /boot/grub/grub.cfg на старой системе, но так как этого не рекомендуется делать напрямую во втором грубе, читай доки по настройке grub2, благо их море, в т.ч. и на русской мове))))

novitchok ★★★★★ ()
Ответ на: комментарий от I00matolog

Нет, блин, десятый. У первого совсем другой конфиг, в совсем другом файле. Не веришь мне, спроси apt-cache show - оно тебе скажет тебе версию;) Ну или grub --version :D

novitchok ★★★★★ ()

SELINUX выключить не забудь перед переносом, и тама какую-то команду потома надо ввести будет ....

Windos7 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.