Тут http://doca.plesser.ru/translate/linux_xp/ на каком-то шаге нужно написать в терминале под LiveCD 'sudo grub', чтобы получить доступ к нему, но терминал говорит 'sudo: grub: command not found'. Почему? GRUB на LiveCD установлен, проверял в центре приложений Ubuntu.
...Переустановил grub, теперь при этой команде появляется то, что должно ( [ Minimal BASH-like line ... ] ), но при команде find /boot/grub/stage1 или root (sd0,0) (у меня не hd а sd) он говорит 'Error 15 : File not found'. В чем же дело?
терминал не видит GRUB
(у меня не hd а sd) он говорит 'Error 15 : File not found'. В чем же дело?
Для Grub'а это как раз hd0.
У Вас /boot смонтирован? покажите cat /etc/fstab и mount -l. И, скорее всего, у Вас все таки hd, а не sd smile
Некоторые пояснения к нумерации дисков в Grub
Нюанс с нумерацией дисков и разделов
В grub2 имеется еще одно важное отличие от старого grub. Связано оно с нумерацией жестких дисков и их разделов. В grub нумерация физических дисков и нумерация разделов начинались одинаково - с нуля. Первый физический диск (sda в системе) обозначался "hd0", второй (sdb) - "hd1", и так далее. Это же осталось и в grub2. нумерация же разделов диска изменилась. Если в grub первый раздел первого диска (sda1) именовался "hd0,0", четвертый (sda4) - "hd0,3", то теперь, в grub2, цифра раздела соответствует цифре раздела в системе. То есть, sda1 теперь будет "hd0,1" (а не "hd0,0"), sdb4 - "hd1,4". Проще говоря, нумерация дисков идет с нуля, а нумерация разделов - с единицы!
дополню:
Тут http://doca.plesser.ru/translate/linux_xp/ на каком-то шаге нужно написать в терминале под LiveCD 'sudo grub', чтобы получить доступ к нему, но терминал говорит 'sudo: grub: command not found'. Почему? GRUB на LiveCD установлен, проверял в центре приложений Ubuntu.
если бубунта относительно новая, то там grub2 - это уже абсолютно другой загрузчик... поэтому так и не получалось
Но почему он не может выполнить команду 'find /boot/grub/stage1' ? boot не смонтирован.
grub> find /boot/grub/stage1
Error 15: File not found
grub> root (hd0,0)
grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... no
Error 15: File not found
Я так понял, что у меня другая версия GRUB'a. Какой процесс будет аналогичен тому, что описан на сайте?
PS И еще. Я порылся в директории Linux'a, зашел в /boot/grub, но там нет файла menu.lst. A терминал при попытке использовать текстовый редактор (gedit) пишет 'error segmenting, core dumped'. Одни проблемы вокруг. ))
Endym, http://ru.wikibooks.org/wiki/Grub_2
Собственно изложи что надо? Восстановить grub?
ы. Сразу выложи вывод fdisk -l
У меня 2 логических раздела на жестком диске, на одном Linux, на другой установил Win XP. Мне нужно, чтобы при включении был выбор ОС, поэтому пытаюсь поставить GRUB. На том сайте доступно все описано, но там, видимо, другая версия.
У меня 2 логических раздела на жестком диске, на одном Linux, на другой установил Win XP. Мне нужно, чтобы при включении был выбор ОС, поэтому пытаюсь поставить GRUB. На том сайте доступно все описано, но там, видимо, другая версия.
Linux сейчас загружается?
Сейчас я зашел с Linux LiveCD (Ubuntu), чтобы была возможность редактировать Boot menu, но пока не получается.
ps 'fdisk -l /dev/' сказал 'last_lba(): I don't know how to handle files with mode 40755'. Я не уверен, что я правильно написал эту команду )
Endym, не надо никакое меню редактировать, в grub2 давно уже этого нет, есть команда update-grub, после выполнения оной найдутся все операционные системы в т.ч. ядра и пропишутся меню (должен стоять пакет os-prober).
Для установки grub вам нужно пользоваться grub-install и chroot, либо grub-install --root-directory
Дальше я попросил сделать fdisk -l, естественно от суперпользователя вы что сделали я не знаю, ещё раз:
В терминале вот это:
sudo fdisk -lесли с live доступа к сети нет, скопируйте полностью вывод команды в файл и выложите, а то околесица.
ubuntu@ubuntu:~$ sudo 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: 0x00044002
Устр-во Загр Начало Конец Блоки Id Система
/dev/sda1 1 14427 115881984 83 Linux
/dev/sda2 14427 37767 187473920 7 HPFS/NTFS
/dev/sda3 37767 38914 9212929 5 Расширенный
/dev/sda5 37767 38914 9212928 82 Linux своп / Solaris
Диск /dev/sdb: 4063 МБ, 4063232000 байт
255 heads, 63 sectors/track, 493 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: 0xcad4ebea
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb4 * 1 494 3967968+ 7 HPFS/NTFS
Раздел 4 имеет различные физические/логические окончания:
физ=(492, 254, 63) логич=(493, 253, 16)
Диск /dev/sdc: 1967 МБ, 1967128576 байт
57 heads, 56 sectors/track, 1203 cylinders
Units = цилиндры of 3192 * 512 = 1634304 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdc1 1 1204 1920955+ 6 FAT16
ubuntu@ubuntu:~$
На этот раз сработало. Попробовал команду update-grub, отказал в доступе, затем предложил сгенерировать файл menu.lst и снова отказал в доступе, причем пароль не спрашивал. Попробую загрузиться с установленного и ввести эту команду...
После загрузки с диска необходимо получить доступ к командной строке, в любом терминале.
Дальше подключаем раздел в котором находится корневая файловая система. Предположим, что она находится в разделе /dev/sda1.
$ sudo mount /dev/sda1 /mntChroot подменяет корневую директорию у запускаемой программы.
Устанавливаем grub в mbr первого диска (/dev/sda):
$ sudo chroot /mnt grub-install /dev/sdaНа всякий случай:
$ sudo chroot /mnt update-grubЛибо просто чрутимся в свой примонтированный корень
$ sudo chroot /mntи делаем всё что надо.
Я посмотрел, у меня таки стоит GRand Unified Bootloader, version 2 (PC/BIOS version). Но при вводе команды
$ sudo chroot /mnt grub-install /dev/sdaон говорит
ubuntu@ubuntu:~$ sudo mount /dev/sda1 /mnt
ubuntu@ubuntu:~$ sudo chroot /mnt grub-install /dev/sda
/usr/sbin/grub-probe: ошибка: cannot find a device for /boot/grub (is /dev mounted?).Хотя там видно, что я ввел команду смонтировать.
Короче, покопался в Викиучебнике, нашел там место "Восстановление GRUB2 c LiveCD", кажется, это то, что мне нужно. Тем не менее, опять столкнулся с проблемой:
ubuntu@ubuntu:~$ sudo mount --bind /dev /mnt/dev
ubuntu@ubuntu:~$ sudo mount --bind /proc /mnt/proc
ubuntu@ubuntu:~$ sudo chroot /mnt
root@ubuntu:/# sudo fdisk -l
sudo: unable to resolve host ubuntu
Диск /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: 0x00044002
Устр-во Загр Начало Конец Блоки Id Система
/dev/sda1 1 14427 115881984 83 Linux
/dev/sda2 14427 37767 187473920 7 HPFS/NTFS
/dev/sda3 37767 38914 9212929 5 Расширенный
/dev/sda5 37767 38914 9212928 82 Linux своп / Solaris
root@ubuntu:/# grub-install /dev/sda1
/usr/sbin/grub-setup: предупреждение: Попытка установить GRUB на неразмеченный диск или на раздел. Это плохая идея..
/usr/sbin/grub-setup: предупреждение: Встраивание невозможно. GRUB в данном случае только может быть установленным с помощью блокировок. Тем не менее, блокировки НЕНАДЁЖНЫ и их использование не рекоммендуется..
/usr/sbin/grub-setup: ошибка: will not proceed with blocklists.
root@ubuntu:/#
Ну вот какого черта ему не нравится?)) Что еще за blocklists. Почему он говорит "Попытка установки на неразмеченный диск или раздел", хотя там ясно написано, что стоит Линукс? А /dev/sda2 вообще определился просто как NTFS, хотя там стоит WinXP (или так и должно быть?).
В GParted с обоих разделов снял флажки Boot, все равно не хочет выполняться.
Так, понял ошибку, я пытался установить на раздел, а не в корень sda.
root@ubuntu:/# grub-install /dev/sda
/usr/sbin/grub-setup: предупреждение: Sector 32 is already in use by FlexNet; avoiding it. This software may cause boot or other problems in future. Please ask its authors not to store data in the boot track.
Installation finished. No error reported.Дальше просто по-написанному:
root@ubuntu:/# exit
exit
ubuntu@ubuntu:~$ sudo umount /mnt/dev
ubuntu@ubuntu:~$ sudo umount /mnt/proc
ubuntu@ubuntu:~$ sudo umount /mnt
ubuntu@ubuntu:~$ exitСейчас сделаю перезагрузку с жд на 1 месте и посмотрю, что будет.
durc:
Да, именно тем первым способом "легче не бывает" я все и сделал. После перезагрузки обновил grub -
endymion@endymion-CQ61:~$ sudo update-grub
[sudo] password for endymion:
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.38-8-generic
Found initrd image: /boot/initrd.img-2.6.38-8-generic
Found linux image: /boot/vmlinuz-2.6.35-22-generic
Found initrd image: /boot/initrd.img-2.6.35-22-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sda2
done
endymion@endymion-CQ61:~$Еще вопрос, при включении компьютера он будет логинить меня прямо в Линукс или даст время выбрать ос? В /etc/default/grub параметр timeout установлен, конечно, на 10 секунд, но я не уверен, сделал ли я все правильно :D
В /etc/default/grub параметр timeout установлен, конечно, на 10 секунд, но я не уверен, сделал ли я все правильно :D
Если есть сомнения смотрите файл /boot/grub/grub.cfg строку
set timeout=