LINUX.ORG.RU

Ubuntu + Windows 7 = пестец... помогите...


0

0

Имеется хард, разбивка (по порядку следования, а не присваивания линуха): sda1 = Primary Active, NTFS, Win7 sda3 = Primary, Ext3, Ubuntu (ставлю убунту на него, точка монтирования «/») sda4 = Primary, swap (Установщик не дает выбрать точку монтирования, полагаю, монтирует в /swap). sda2 = Primary, NTFS, короче диск D: в винде.

Ставлю ubuntu на sda3... При установке пробую всевозможные варианты: прописывание загрузчика в mbr, запись загрузчика в sda3 и последующее создание ссылки на sda3 с помощью EasyBCD из-под винды, и даже запись загрузчика в sda1... Результат неизменен: при загрузке убунты появляется командная строка с приглашением «grub-rescue» и ничего не работает. Если не писать загрузчик в mdr - винда грузиццо нормально. Я так понял убунта юзает grub2. Как посмотреть, что он делает и какой раздел он считает hd(0,3) - не понял. Как редактировать не понял даже после изучения каталогов «/boot», «etc/default/grub», «etc/grub2.0» Сам не знаю как мне пришло это в голову, но скопировал папку «boot» из установленной openSUSE на раздел с убунтой и о чудо!!! Убунта соизволила загрузиться, но не определила половины устройств... Как мне её победить!?!?



Последнее исправление: radish666 (всего исправлений: 1)

> не определила половины устройств...
Список поимённо?

Загрузитесь с livecd. Откройте терминал. Вводите:
sudo -i
fdisk -l # найдите в списке раздел с ubuntu
mount /dev/sdXY /mnt # XY подставить свои
for fs in proc sys dev; do mount -o bind /$fs /mnt/$fs; done
chroot /mnt
dpkg-reconfigure grub-pc # вам зададут несколько вопросов о настройке загрузчика и переставят его
exit
for fs in dev proc sys; do umount /mnt/$fs; done
umount /mnt
exit
exit # окно закроется

Перезагрузитесь. Заработало?

AITap ★★★★★
()

> полагаю, монтирует в /swap
swap - то же самое, что файл подкачки в windows, в монтировании к файловой системе не нуждается

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

>> не определила половины устройств...

Список поимённо?


Во всяком случае, сеть, звук, неверно примонтировало виндовые разделы - не может их открыть, равно как и не может из отмонтировать.
Лан я поверх нее уже раз 7-8 заново убунту поставил, так что дело прошлое... Жаль, что результат нулевой. Жаль, что, чтобы установить ось на отдельный раздел, передавая её загрузчику управление не из mbr, а из другого загрузчика столько излишних телодвижений... openSUSE поставилась и настроилась всего за сутки с её grub-legacy, а убунта с её супер-пупер grub2 не попеждается уже третьи сутки.
Спасибо за совет, буду пробовать...

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

Воспользовался твоим советом, и снова поимел ошибку:

ubuntu@ubuntu:~$ sudo -i
root@ubuntu:~# fdisk -l

Диск /dev/sda: 320.1 ГБ, 320072933376 байт
255 heads, 63 sectors/track, 38913 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf28ecc4b

Устр-во Загр Начало Конец Блоки Id Система
/dev/sda1 * 1 5222 41943856+ 7 HPFS/NTFS
Раздел 1 не заканчивается на границе цилиндра.
/dev/sda2 7654 38914 251094879 7 HPFS/NTFS
Раздел 2 не заканчивается на границе цилиндра.
/dev/sda3 5222 7471 18066432 83 Linux
/dev/sda4 7471 7654 1464320 82 Linux своп / Solaris

Пункты таблицы разделов расположены не в дисковом порядке
root@ubuntu:~# mount /dev/sda3 /mnt
root@ubuntu:~# for fs in proc sys dev; do mount -o bind /$fs/mnt/$fs; done
mount: невозможно найти /proc/mnt/proc в /etc/fstab или /etc/mtab
mount: невозможно найти /sys/mnt/sys в /etc/fstab или /etc/mtab
mount: невозможно найти /dev/mnt/dev в /etc/fstab или /etc/mtab

ЗЫ. С таким процессом установки, станет сегодня еще одним потенциальным линуксоидом меньше... Жаль... Но это просто выше моих сил, вроде ж я не дебил, но столько усилий, чтобы банально поставить ОС - это пестец...

radish666
() автор топика
Ответ на: комментарий от dhampire

Спасибо, ща попробую.
А что собсна эта команда с условиями делает?

radish666
() автор топика
Ответ на: комментарий от AITap

Респект за совет, а то вчера по пьяни на одном из компов поставил винду седьмую на второй жёсткий (захотелось по локалке в дёрт2 погонять) и сегодня с утра не понял, почему груб грузится в режиме приглашения, т.е. grub>. Диск с линуксом отключал же вроде. Короче дело в том, что сколько груб не переустанавливал (grub-install) результатов 0. А вот как у тебя (dpkg-reconfigure grub-pc), то всё нормально теперь. Чего-то не подумал так сделать :)

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

Ничего не получается...
root@ubuntu:/# dpkg-reconfigure grub-pc
После этого показывает окошко, предлагает выбрать параметры командной строки в режиме восстановления - оставляю пустую.
Потом окошко с параметрами командной строки для загрузки по умолчанию, оставляю «quite splash», как есть.
Последнее окошко предлагает выбрать, куда ставить grub. Варианта 2: -sda либо -sda1, причем звездочка стоит на -sda - странно в mbr sda у меня виндовый загрузчик, ладно, соглашаюсь, пишет «down», ребучусь - так и есть убил виндовый загрузчик - подмимаю mbr из бекапа акронисом.
Проделываю все сначала, снова последнее третье окошко. На этот раз убираю звездочку напротив -sda и ставлю её напротив -sda3, жму ок. Вот что получаю:
root@ubuntu:/# dpkg-reconfigure grub-pc
Replacing config file /etc/default/grub with new version
/usr/sbin/grub-setup: warn: Попытка установить GRUB на раздел вместо MBR. Лучше этого НЕ ДЕЛАТЬ..
/usr/sbin/grub-setup: warn: встраивание невозможно. При имеющихся параметрах GRUB можно установить только с помощью списка блоков (blocklists). Однако, список блоков является НЕНАДЁЖНЫМ механизмом и его лучше не использовать..
Installation finished. No error reported.
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-21-generic
Found initrd image: /boot/initrd.img-2.6.32-21-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done
root@ubuntu:/#

Система по прежнему не грузиццо. К слову система только что заинсталенная, при инсталяции тоже указывал путь в загрузчику -sda3.
То ли я дурак, то ли лыжи не едут...

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

Содержимое grub.cfg после проделанных манипуляций:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/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 recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,3)'
search --no-floppy --fs-uuid --set 1652e566-cc66-4663-a3a4-6e7d502dd197
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd0,3)'
search --no-floppy --fs-uuid --set 1652e566-cc66-4663-a3a4-6e7d502dd197
set locale_dir=($root)/boot/grub/locale
set lang=ru
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, с Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
   recordfail
   insmod ext2
   set root='(hd0,3)'
   search --no-floppy --fs-uuid --set 1652e566-cc66-4663-a3a4-6e7d502dd197
   linux   /boot/vmlinuz-2.6.32-21-generic root=UUID=1652e566-cc66-4663-a3a4-6e7d502dd197 ro
   initrd   /boot/initrd.img-2.6.32-21-generic
}
menuentry 'Ubuntu, с Linux 2.6.32-21-generic (режим восстановления)' --class ubuntu --class gnu-linux --class gnu --class os {
   recordfail
   insmod ext2
   set root='(hd0,3)'
   search --no-floppy --fs-uuid --set 1652e566-cc66-4663-a3a4-6e7d502dd197
   echo   'Загружается Linux 2.6.32-21-generic ...'
   linux   /boot/vmlinuz-2.6.32-21-generic root=UUID=1652e566-cc66-4663-a3a4-6e7d502dd197 ro single
   echo   'Загружается начальный ramdisk ...'
   initrd   /boot/initrd.img-2.6.32-21-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry «Memory test (memtest86+)» {
   insmod ext2
   set root='(hd0,3)'
   search --no-floppy --fs-uuid --set 1652e566-cc66-4663-a3a4-6e7d502dd197
   linux16   /boot/memtest86+.bin
}
menuentry «Memory test (memtest86+, serial console 115200)» {
   insmod ext2
   set root='(hd0,3)'
   search --no-floppy --fs-uuid --set 1652e566-cc66-4663-a3a4-6e7d502dd197
   linux16   /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry «Windows 7 (loader) (on /dev/sda1)» {
   insmod ntfs
   set root='(hd0,1)'
   search --no-floppy --fs-uuid --set f0c87ce0c87ca68e
   chainloader +1
}
### 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 ###

Вроде все правильно, если только (hd0,3) = sda3...
Можно ли как-то поставить убунту сразу с вменяемым grub-legacy загрузчиком?

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

Да, этот второй груб гонимый. Грузанись с лайвсиди, чрутнись и поставь первый (выше уже объясняли как чрутаться).

Можно ли как-то поставить убунту сразу с вменяемым grub-legacy загрузчиком?


alternate или UCK

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

Поставил grub-legacy, все работает проблема решена, но... осадок остался. Видимо солью сегодня бэкап работающей системы, поставлю grub2 и буду опять его насиловать. Надо же разобраться, что это такое!
Никто мне не подскажет, где в GRUB2 редактировать раздел с загрузчиком? Ну partition поменять с (hd0,1) на (hd0,2)? Сам grub2.cfg вроде нельзя редактировать.

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