LinuxForum.Fans
Тема

[Решено] Как правильно корневой раздел перенести в mbr (загрузчик)

Автор: Linux777 40 сообщений 8077 просмотров
#320880

Подскажите пожалуйста, как правильно перенести загрузчик убунту?

Вообщем имею хард разбитый на 5 частей:

/dev/sda

/dev/sda1 - ntfs (windows)
/dev/sda5 - ext4 /
/dev/sda6 - swap
/dev/sda7 - ntfs (dannie windows)
/dev/sda8 - ext4 /home

я устанавливая убунту как второй ОС, загрузчик поместил в корень, т.е в sda5.
И теперь при ребуте компа загружается автоматом винда, а выбора загрузчика нет, надо же было ставить его в /dev/sda. верно? Mbr не видит линукса(

#320881

Как вариант, считаю если тупо повторно переустановить убунту, указав что надо ставить в /dev/sda. т.е. презеписать MBR. Это правильно и работает?

#320882

Да, нужно было ставить загрузчик в mbr, то есть, на /dev/sda. Загрузитесь с LiveCD, выполните chroot на предварительно примонтированный корневой раздел, затем дайте команды:

text
# grub-install /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg
# exit
# reboot
#320883

Во, во, знал я, да чет отвлекли, блин не туда поставил, а как вернуть не знаю. Благодарю, Yars

text
Как вариант, считаю если тупо повторно переустановить убунту, указав что надо ставить в /dev/sda. т.е. презеписать MBR. Это правильно и работает?

это тоже верно? можно же просто повторить установку убунты?

#320884
"yars⇓" написал:
Да, нужно было ставить загрузчик в mbr, то есть, на /dev/sda. Загрузитесь с LiveCD, выполните chroot на предварительно примонтированный корневой раздел, затем дайте команды:

# grub-install /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg
# exit
# reboot

То есть так, если поточней
1. запускаю терминал в LiveCD и монтирую корневой раздел, командой mount -t ext4 /dev/sda5 /mnt
2. далее сhroot
3. четыре команды эти?

#320885
Linux777 написал:

То есть так, если поточней
1. запускаю терминал в LiveCD и монтирую корневой раздел, командой mount -t ext4 /dev/sda5 /mnt
2. далее сhroot
3. четыре команды эти?

1.1 mount --bind /dev /mnt/dev
1.2 mount --bind /proc /mnt/proc
1.3 mount --bind /sys /mnt/sys

4. после exit из чрут-сессии нужно umount все что намонтировали и ребут...

#320887

Да, и перед chroot не забудьте примонтировать /sys, /proc и /dev:

text
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys

Без этого grub не сможет корректно установиться.

#320888
"Харитон⇓" написал:
1.1 mount --bind /dev /mnt/dev
1.2 mount --bind /proc /mnt/proc
1.3 mount --bind /sys /mnt/sys

а мне кажется это не надо? я смотрю гугл, ссылки, и там похожее решение yars
http://help.ubuntu.ru/wiki/%D0%B2%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_grub
или вот

text
1.Загружаемся с внешнего носителя в rescue mode (liveCD или installation CD).
2.Находим корневой раздел с помошью fdisk.
3.Выполняем:

# mount -o rw /dev/ad4s3a /mnt # монтируем корневой раздел в /mnt системы с LiveCD # chroot /mnt # chroot в /mnt # passwd # reboot

хотя нет, вот http://root-inform.blogspot.ru/2011/12/chroot.html про другие разделы указано.
просто уже немного запутался, как это верно сделать, ничего не испортив.

#320889

оно без dev вообще не сможет ничего сделать. без sys иногда прокатывает, но часто ругается: нет чего-то в сис. proc еще реже встречается, но бывает...)))
лучше все три смонтировать и ввести в практику всегда их выполнять в таком случае...

#320890
"yars⇓" написал:
mount --bind /proc /mnt/proc mount --bind /dev /mnt/dev mount --bind /sys /mnt/sys

то есть это лучше ввести в практику. хорошо. блин, всегда делал правильно, а тут сбили, не знаю как вернуть загрузчик в mbr. я просто коллегам второй системой убунту ставлю, потихоньку их на линукс перевожу.

#320891

да в убунтоссылке как раз и пишется:
...
sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

Если раздел /boot находится отдельно, то Вам необходимо примонтировать его в /mnt/boot!

Теперь перейдем в окружающую среду chroot:

sudo chroot /mnt
...

ПиСя: Если кажется, то перекреститесь и делайте так как вам не кажется - сами увидите что оно вам скажет и попробуете выполнить, то что вам казалось.

Рут-информ ссылка вообще про арч...))) оно может от дистра к дистру отличаться. например диск востановления от редхат сам монтирует дев, сис и прочее... а тут все ручками...

#320892

так вам же и сказали моунтите как вам сказали.
потом чрутом туда идете и даете команду инсталл-груб...

#320893

install-grub /dev/sda

#320894

У меня была проблема, что диск мой в chroot-окружении без всех трех видеться не хотел, да еще симлинк /dev/hda на /dev/sda пришлось лепить, а потом еще /etc/fstab править. Так что знаем, плавали, лишнего вам не посоветовали.

#322157
"yars⇓" написал:
У меня была проблема, что диск мой в chroot-окружении без всех трех видеться не хотел, да еще симлинк /dev/hda на /dev/sda пришлось лепить, а потом еще /etc/fstab править. Так что знаем, плавали, лишнего вам не посоветовали.

спасибо. вообщем начал делать (подробно опишу решение проблемы, после чего тему можно считать решеной)

1. загрузился с liveCD, сначала просмотрел разделы fdisk -l, а дальше стал маунтить все разделы что советовали:

Показать
ubuntu@ubuntu:~$ sudo fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xafc2afc2

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 147814399 73906176 7 HPFS/NTFS/exFAT
/dev/sda2 147816446 625141759 238662657 f W95 Ext'd (LBA)
/dev/sda5 147816448 297134079 74658816 83 Linux
/dev/sda6 297136128 319565823 11214848 82 Linux swap / Solaris
/dev/sda7 319567872 456472168 68452148+ 7 HPFS/NTFS/exFAT
/dev/sda8 456472576 625141759 84334592 83 Linux
ubuntu@ubuntu:~$ sudo mount /dev/sda5 /mnt
ubuntu@ubuntu:~$ sudo mount --bind /dev /mnt/dev
ubuntu@ubuntu:~$ sudo mount --bind /proc /mnt/proc
ubuntu@ubuntu:~$ sudo mount --bind /sys /mnt/sys
ubuntu@ubuntu:~$

хочу заметить, у меня /boot раздел не отдельно, но если бы он был отдельно, то его тоже следовало примонтировать в /mnt/boot
собственно далее идем в окружение chroot, и делаем

"Linux777⇓" написал:
yars⇓ пишет:

Да, нужно было ставить загрузчик в mbr, то есть, на /dev/sda. Загрузитесь с LiveCD, выполните chroot на предварительно примонтированный корневой раздел, затем дайте команды:

# grub-install /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg
# exit
# reboot

ubuntu@ubuntu:~$ sudo chroot /mnt
root@ubuntu:/#

а дальше вот говорит нет команды такой. надо установить?

text
root@ubuntu:/# grab-install /dev/sda
Команда 'grab-install' не найдено,
 Команда 'grub-install' из пакета 'lupin-support' (main)
 Команда 'grub-install' из пакета 'grub-coreboot' (universe)
 Команда 'grub-install' из пакета 'grub' (main)
 Команда 'grub-install' из пакета 'grub-efi-ia32' (main)
 Команда 'grub-install' из пакета 'grub-ieee1275' (universe)
 Команда 'grub-install' из пакета 'grub-efi-amd64' (main)
 Команда 'grub-install' из пакета 'grub-pc' (main)
grab-install: команда не найдена

#322159

"Linux777⇓" написал:
root@ubuntu:/# grab-install /dev/sda
Написано с ошибкой!
#322160

Не

"Linux777⇓" написал:
grab-install /dev/sda

а grub-install /dev/sda через u

#322161
"redix⇓" написал:
root@ubuntu:/# grab-install /dev/sda

Написано с ошибкой!

ага, точно не заметил. исправил

root@ubuntu:/# grub-install /dev/sda
Installation finished. No error reported.
Что означает инсталляция завершена, об ошибках не сообщается
#322162

А какая у вас винда???

#322164
"kisil⇓" написал:
А какая у вас винда???

где я это делаю, там стоит семерка

Войдите или зарегистрируйтесь, чтобы ответить.