Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   [решено] перенос linux на другой жесткий диск и проблемы связанные с этим (http://forum.oszone.net/showthread.php?t=172132)

hnsk 03-04-2010 20:03 1384400

перенос linux на другой жесткий диск и проблемы связанные с этим
 
доброго времени суток всем!
ubuntu 9.04
возникла необходимость переноса мой ОС на другой диск, с некоторыми изменениями в разделах.
итак что было сделано
размечен диск того же объема, и скопирована информация в соответствующие разделы.
таблицы fstab
было:
Цитата:

mafik@myubuntu:~$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda1
UUID=981a8129-f9d3-4c74-8122-c0ccec51d75d / ext3 relatime,errors=remount-ro 0 1
# /dev/sda5
UUID=882bfbd3-60a9-4394-8557-63bcd631e6e7 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
#/dev/sda2
UUID=69bcd25f-3bf9-49b3-8b52-471441f6e2a2 /home/mafik/disk ext3 rw,user,auto 0 0

#/dev/sdc2
UUID=0A307165307158A1 /home/mafik/windows ntfs-3g rw,auto 0 0

#/dev/sdb1
UUID=F61C5F481C5F0353 /home/mafik/oldnick ntfs-3g rw,auto 0 0

стало:
Цитата:

mafik@myubuntu:~$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda1
UUID=981a8129-f9d3-4c74-8122-c0ccec51d75d / ext3 relatime,errors=remount-ro 0 1
# /dev/sda5
UUID=882bfbd3-60a9-4394-8557-63bcd631e6e7 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
#/dev/sda2
UUID=69bcd25f-3bf9-49b3-8b52-471441f6e2a2 /home/mafik/disk ext3 rw,user,auto 0 0

#/dev/sdc2
UUID=0A307165307158A1 /home/mafik/windows ntfs-3g rw,auto 0 0

#/dev/sdb1
UUID=F61C5F481C5F0353 /home/mafik/oldnick ntfs-3g rw,auto 0 0
вывод blkid на всякий случай
Цитата:

mafik@myubuntu:~$ sudo blkid
[sudo] password for mafik:
/dev/sda1: UUID="b36b25d1-fd0b-4720-960e-89acc0a86611" SEC_TYPE="ext2" TYPE="ext3"
/dev/sda2: UUID="d5c02b6e-a987-4caa-b164-ce31f911c1da" TYPE="swap"
/dev/sda3: UUID="89176b50-20be-44d6-acec-e5952d496d1b" TYPE="reiserfs"
/dev/sda5: UUID="28100092-41b5-4792-9944-751e399331df" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdb1: UUID="981a8129-f9d3-4c74-8122-c0ccec51d75d" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdb2: UUID="69bcd25f-3bf9-49b3-8b52-471441f6e2a2" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdb5: UUID="882bfbd3-60a9-4394-8557-63bcd631e6e7" TYPE="swap"
решено было избрать путь с изменением корня и работа непостредственно grub.
chroot работать отказывается, хотя перенес все необходимые библиотеки и бинарники.

Цитата:

mafik@myubuntu:~$ sudo chroot /media/b36b25d1-fd0b-4720-960e-89acc0a86611/
chroot: cannot run command `/bin/bash': No such file or directory
mafik@myubuntu:~$
решил пойти другим путем:
с рабочей системы:
Цитата:

grub> find /boot/grub/stage2
(hd0,2)
(hd1,0)

grub>
казалось бы все должно работать, но после загрузки с нового винта нечего не происходит
только veriying DMI Pool data...


что я упустил?

hnsk 04-04-2010 18:59 1384942

так...проблему я решил.
наверно напишу как решил вдруг кому-нибудь еще понадобиться.

немного теории:
для того что бы операционная система запустилась ей необходим загрузчик.
так как железо компьютера не имеет ни единого понятия о файловой системе и о том какая вообще операционная система на нем стоит, то на помощь приходит MBR (master-boot-record) -запись
она помещает в первый сектор диска. так как он очень мал по объему он не может в себя поместить такие загрузчики как lilo,grub, ntloader. но он знает на каком диске и в какой партиции лежит более сложный загрузчик. и вот тот загрузчик уже запускает вашу ОС .
linux грузится в 2 иногда 3 этапа
stage 1 - mbr
stage 1.5 необходим в том случае если необходимо использование еще каких нибудь FS
stage 2 на этом этапе мы видим список ОС которые можно выбрать

теперь решение:
есть несколько решений для восстановления grub.
запуститься уже с рабочий ОС, с live CD либо во время загурзки нажать ESC далее Е.
в последнем случае вы попадете в сам grub
пишем find /boot/grub/stage1
видим что-нить типа (hd0,1)

команда root - указывает , что в качестве загрузочного каталога будем использовать (hd0,1)
пишу именно так, потому что все будет зависит от того как у вас все расположено
пишем find /boot/grub/stage2
видим что-нить типа (hd0,2)
значит mbr у нас лежит (hd0,2)
setup - восстанавливает mbr


и так узнает где что лежит с помощью find
root (hdX) # X - ваш раздел
setup (hdX) # X -ваш раздел
kernel /bla-bla bla #bla-bla-bla имя ядра
дальше quit
жмем B для того что бы загрзиться
если вы все сделали правильно, то у вас все должно заработать

так как я не особо специалист в linux да и в написании, так что если что не так поправьте меня.


Время: 11:27.

Время: 11:27.
© OSzone.net 2001-