Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: [HOWTO] Настройка и редактирование GRUB 2  (Прочитано 997802 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн voler

  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #420 : 19 Февраля 2010, 07:57:55 »
Доброе всем утро!

Прошу особо не ругать, но столкнулся с проблемой после использования Acronic. суть в том, что начал сыпаться диск. Купил новый, взял Acronic сделал копию основных разделов. Поменял диски, и восстановил систему на новый диск.

Появилась ошибка GRUB error 22.
По читав в интернете разные ресурсы, попытался исправить, но добился только вот чего:

т.е. sh:grub>

Сейчас четыре раздела WinXp, Ubuntu, Swap, и не размеченная область.

При загрузке с live CD в директории /boot/grub пусто
А если примонтировать диск с Ubuntu 9.10, то в директории лежит много файлов с *.mod
« Последнее редактирование: 19 Февраля 2010, 09:02:02 от voler »

Оффлайн N.A.

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #421 : 19 Февраля 2010, 15:05:55 »
не совсем по теме, но всё же спрошу. КАК УСКОРИТЬ ЗАГРУЗКУ GRUB2 ?  уж очень долго загружаеться меню посравнению с grub/

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #422 : 19 Февраля 2010, 15:38:36 »
Цитировать
Прошу особо не ругать, но столкнулся с проблемой после использования Acronic. суть в том, что начал сыпаться диск. Купил новый, взял Acronic сделал копию основных разделов. Поменял диски, и восстановил систему на новый диск.
ага, а при этом (смотря как таскал, конечно) поменялись uuid разделов...
Цитировать
т.е. sh:grub>
так это прекрасно! есть полноценная консоль - можно грузануть систему. читай первый пост, в разделе III описана загрузка системы ручками.
там же почитай про восстановление груба и проделай описанное с лайвцд. он пересоздаст что нужно в /boot/grub
Цитировать
При загрузке с live CD в директории /boot/grub пусто
А если примонтировать диск с Ubuntu 9.10, то в директории лежит много файлов с *.mod
это логично, что в /boot/grub лайвцд-диска пусто (если я правильно понял) - нафиг там груб? а "куча файлов *.mod" - это хорошо))
короче, почитай, сделай там grub-install куда надо и будет тебе щасте.

Цитировать
не совсем по теме, но всё же спрошу. КАК УСКОРИТЬ ЗАГРУЗКУ GRUB2 ?  уж очень долго загружаеться меню посравнению с grub/
/boot и mbr, из которого оно запущается, должны находиться на одном харде.

добавлен совсем уж малеьнький способ восстановления mbr после винды одной командой. см. 10-й пост
лучше на "ты"

Оффлайн voler

  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #423 : 19 Февраля 2010, 17:21:13 »
В первом посту, востановление GRUB2 с LiveCD. первый способ прошло все без единой ошибки, но загрузка авто потом не происходит.  :-\

Я так понимаю вся проблема в том, что у меня нет файла описания grub

1. set root=(hd0,2)
2. linux /boot/vmlinuz........
3. boot

Загрузился, выполняю update-grub
(Нажмите, чтобы показать/скрыть)

UUID одинаковые blkid
(Нажмите, чтобы показать/скрыть)
cat /etc/fstab
(Нажмите, чтобы показать/скрыть)

Система загружается, может вручную прописать конфиг boot/grub/grub.cfg?
Так проблему решилась, после того как ручками загрузил и пересоздал конфиг.
Но теперь другой вопрос, я удалил grub и поставл grub-pc боюсь трогать что посоветуйте?
« Последнее редактирование: 19 Февраля 2010, 17:55:28 от voler »

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #424 : 19 Февраля 2010, 17:44:58 »
не понял, чего не нравится?
/boot/grub/grub.cfg создался? груб с ним загружается? появляется менюшка? из менюшки грузит?
на каком этом этапе все портится? а то я что-то не понял сути последнего вопроса...
лучше на "ты"

Оффлайн S0K0L

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #425 : 20 Февраля 2010, 14:48:39 »
Здравствуйте!
Необходимо, чтобы в Grub 2 можно было выбрать одну из 3 операционок: Kubuntu 9.10, Windows 7, Windows XP.
Удается добиться  в меню загрузки Grub 2 выбора kubuntu 9.10 и либо 7, либо ХР, обе винды не получается, а надо.
Вот, что имею:
sda1- Windows 7
sda5 - файлопомойка
sdb1 -kubuntu 9.10
sdb2 -Windows XP
XP ставил последней она убила все нафиг, после этого восстановил Grub 2, появилась возможность грузить kubuntu и win xp, восстановил загрузчик win7, теперь могу грузить kubuntu и win 7, как к ним присоседить ХР? update-grub делал несклько раз - не помогает, не видит он хр. Пытался дописывать 40_custom, получилась еще одна строчка для загрузки win 7, видать знаний не хватает.
Заранее благодарю за помощь.

sokol@siniy:~$ sudo fdisk -l

Диск /dev/sda: 500.1 ГБ, 500107862016 байт
255 heads, 63 sectors/track, 60801 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x331eecf1

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sda1   *           1        9808    78782728+   7  HPFS/NTFS
/dev/sda2            9809       60801   409601272+   f  W95 расшир. (LBA)
/dev/sda5            9809       60801   409601241    7  HPFS/NTFS

Диск /dev/sdb: 80.0 ГБ, 80026361856 байт
255 heads, 63 sectors/track, 9729 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0xe86fe86f

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sdb1               1        9327    74919096   83  Linux
/dev/sdb2            9328        9726     3204967+   7  HPFS/NTFS

sokol@siniy:~$ sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-19-generic
Found initrd image: /boot/initrd.img-2.6.31-19-generic
Found linux image: /boot/vmlinuz-2.6.31-16-generic
Found initrd image: /boot/initrd.img-2.6.31-16-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done


Оффлайн moscwich

  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
    • Мой блог
Re: пишем мануал по GRUB2
« Ответ #426 : 20 Февраля 2010, 18:28:10 »
Имеется распакованный на раздел (по средства dd) исошник, есть и не распакованный, в isolinux.cfg  все пути грамотно сделаны т.е. относительные, как мне тупо загрузится с него (т.е. не ядро загружать а, чтоб как с диска). Возможно?

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #427 : 20 Февраля 2010, 20:01:58 »
Цитировать
XP ставил последней она убила все нафиг, после этого восстановил Grub 2, появилась возможность грузить kubuntu и win xp, восстановил загрузчик win7, теперь могу грузить kubuntu и win 7, как к ним присоседить ХР? update-grub делал несклько раз - не помогает, не видит он хр. Пытался дописывать 40_custom, получилась еще одна строчка для загрузки win 7, видать знаний не хватает.
Заранее благодарю за помощь.
по-хорошему это делается так: грузится загрузчик старшей версии винды, а уж через него осуществялется выбор. груб именно так и пытается сделать. т.е. вариант первый: прописать хэрэ в загрузчик от топора. вариант второй: впихнуть в 40_custom примерно следующее:
menuentry "winxp" {
search -n -u uuid_раздела_хр -s
drivemap -s (hd0) ${root}
chainloader +1
}
как-то так. если нет - вместо hd0 - hd1.

Цитировать
Имеется распакованный на раздел (по средства dd) исошник, есть и не распакованный, в isolinux.cfg  все пути грамотно сделаны т.е. относительные, как мне тупо загрузится с него (т.е. не ядро загружать а, чтоб как с диска). Возможно?
хм.. в теории возможно - если первый сектор записан как надо, т.е. как на настоящем диске. другой вопрос в том, что загрузочный сектор раздела на харде и оный на цэдэ - вещи, наверно, разные. так что если лобовой метод через chainloader +1 не катит, тогда нужно учиться запущать из-под груба тот загрузчик, что на диске использован (в данном случае isolinux). как это сделать (и реально ли) - ничего сказать не могу, не пробовал. во всяком случае, один груб2 другой просто так без мбр не очень-то запущает...
лучше на "ты"

Оффлайн Atick

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #428 : 20 Февраля 2010, 20:17:26 »
столкнулся с такими ошибками:
1. скрипт /etc/grub.d/30_os-prober  генерирует строку в файле /boot/grub/grub.cfg
linux /boot/vmlinuz root=UUID ro vga="0x317" resume=/dev/disk/by-uuid/b2ec05c7-a519-4275-93e7-13f7653edb07 panic=30
чтобы загрузить Алт, приходится либо вставлять вместо UUID UUID=ххххххххххх, либо /dev/sda2.
2. Последняя строка для запуска Убунты: initrd   /boot/initrd.img-2.6.31-20-generic генерируется в файле /boot/grub/grub.cfg верно, но Ubuntu при выборе загрузится не может, Grub2 сообщает об ошибке и просит нажать клавишу...
Выбрав "e" обнаруживаю, что в последней строке не хватает буквы "c" : gentric.
Добавляю "с" в слово "generic" и после нажатия Ctrl+x система грузится как ни в чём не бывало!
Вторая ошибка появилась после попытки вылечить первую путём установки версии 1.98~experimental.20100201-0ubuntu1~ppa1   GRand Unified Bootloader, version 2 (dummy package)
Вместо исправления первой получил две. Интересно, как их исправить, не используя file 40_custom?

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #429 : 20 Февраля 2010, 20:33:25 »
Цитировать
Вместо исправления первой получил две. Интересно, как их исправить, не используя file 40_custom?
поставить номальную версию обратно?)))
Цитировать
1. скрипт /etc/grub.d/30_os-prober  генерирует строку в файле /boot/grub/grub.cfg
linux /boot/vmlinuz root=UUID ro vga="0x317" resume=/dev/disk/by-uuid/b2ec05c7-a519-4275-93e7-13f7653edb07 panic=30
чтобы загрузить Алт, приходится либо вставлять вместо UUID UUID=ххххххххххх, либо /dev/sda2.
надо ковырять 30-ку. смотреть, каким образом он там ищет его ююид. в качестве костыля - попробовать включить параметр "disable_uuid_чего-то_там" в /etc/default/grub. правда, не могу сказать, влияет ли это на 30-ку.
Цитировать
2. Последняя строка для запуска Убунты: initrd   /boot/initrd.img-2.6.31-20-generic генерируется в файле /boot/grub/grub.cfg верно, но Ubuntu при выборе загрузится не может, Grub2 сообщает об ошибке и просит нажать клавишу...
Выбрав "e" обнаруживаю, что в последней строке не хватает буквы "c" : gentric.
кгм! опять-таки, надо смотреть скрипт. если по-хорошему, то должна использоваться одна переменная в качестве версии для vmlinuz и для initrd. как там намудрено - надо смотреть..
короче, проще поставить нормальную версию взад.
насчет первой проблемы - есть одна идейка насчет добавления нужного функионала к своему самописному скрипту настройки.. как прикручу - можно будет попробовать. ну или все же ковырять 30-ку на предмет косяка...
лучше на "ты"

Оффлайн moscwich

  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
    • Мой блог
Re: пишем мануал по GRUB2
« Ответ #430 : 20 Февраля 2010, 21:46:08 »
Цитировать
Имеется распакованный на раздел (по средства dd) исошник, есть и не распакованный, в isolinux.cfg  все пути грамотно сделаны т.е. относительные, как мне тупо загрузится с него (т.е. не ядро загружать а, чтоб как с диска). Возможно?
хм.. в теории возможно - если первый сектор записан как надо, т.е. как на настоящем диске. другой вопрос в том, что загрузочный сектор раздела на харде и оный на цэдэ - вещи, наверно, разные. так что если лобовой метод через chainloader +1 не катит, тогда нужно учиться запущать из-под груба тот загрузчик, что на диске использован (в данном случае isolinux). как это сделать (и реально ли) - ничего сказать не могу, не пробовал. во всяком случае, один груб2 другой просто так без мбр не очень-то запущает...
я пометил, что делал по средствам dd, а рас так, то мбр записалась, также как: я могу записать на диск исо, а могу записать на диск файлы из исо - чувствуешь разницу?
В первом случаи у меня (поставив в биос соответствующие настройки) я нормально с него загружусь, во втором - нет.
Тож самое и сейчас dd if=my.iso of=/dev/sda7, т.е. я произвел запись исо на раздел, а не распаковывал его.
« Последнее редактирование: 20 Февраля 2010, 21:49:02 от hdd »

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #431 : 21 Февраля 2010, 18:45:31 »
да это я понял, что загрузочный сектор на месте... только вопрос в том, сумеет ли груб его загрузить.
да, вот еще что: при таком варианте раздел, по идее, должен видеться как iso9660. посему может быть полезно предварительно грубу модуль подгрузить: insmod iso9660
а вообще тема интересная: чем сажать привод и портить пластмассу (пускай даже рв-шки), закинуть на флэшку и ставить с нее. так что если удастся - будет круто. мб тоже поробую какой-нибудь дебиан-нетинсталл раскатать....
лучше на "ты"

Оффлайн moscwich

  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
    • Мой блог
Re: пишем мануал по GRUB2
« Ответ #432 : 21 Февраля 2010, 20:12:39 »
Да, действительно раздел с файловой системой iso9660, она-же isofs, в прошлый раз было точно также, но ничего я не подгружал.
p.s. Сейчас с системой что-то (топик), как-бы не хотелось ничего подгрузить не смогу, в винде.
p.p.s. А вообще - это должно быть проще, чем выписывать параметры из isolinux.cfg
p.p.p.s. Сейчас распакован исошник на флешку (но не usb-шную), а не на раздел hdd, через я даже не знаю что выбирать в биос, usb-zip пробовал, без реакции (оно и понятно).
« Последнее редактирование: 21 Февраля 2010, 20:19:18 от hdd »

Оффлайн S0K0L

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #433 : 21 Февраля 2010, 20:56:06 »
Цитировать
XP ставил последней она убила все нафиг, после этого восстановил Grub 2, появилась возможность грузить kubuntu и win xp, восстановил загрузчик win7, теперь могу грузить kubuntu и win 7, как к ним присоседить ХР? update-grub делал несклько раз - не помогает, не видит он хр. Пытался дописывать 40_custom, получилась еще одна строчка для загрузки win 7, видать знаний не хватает.
Заранее благодарю за помощь.
по-хорошему это делается так: грузится загрузчик старшей версии винды, а уж через него осуществялется выбор. груб именно так и пытается сделать. т.е. вариант первый: прописать хэрэ в загрузчик от топора. вариант второй: впихнуть в 40_custom примерно следующее:
menuentry "winxp" {
search -n -u uuid_раздела_хр -s
drivemap -s (hd0) ${root}
chainloader +1
}
как-то так. если нет - вместо hd0 - hd1.
Благодарю за подсказку, подправил загрузчик 7, там оказалось тоже консольные команды есть, и теперь при выборе загрузки win 7 появляется выбор между 7 и ХР.

Оффлайн AlexMak

  • Новичок
  • *
  • Сообщений: 9
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #434 : 22 Февраля 2010, 20:37:02 »
30 страниц перечитывать не хочется, по этому вопрос следующий:
Поставил burg и тему saro
http://ubuntuguide.net/add-os-logos-into-grub2-boot-menu-using-burg
лишние ядра убрал, но осталось 1 неудобство, в виде длинных название ядер. Пока регулирую временной мерой правкой burg.cfg но это до следующего обновления ядра. На скринах у них уже короткие названия и у вас параметр
menuentry "winxp"правлен, можно ли куда это забить на всегда, и убрать пункт безопасного восстановления
(p.s. удаление пункта безопасного восстановления понимаю чем опасен).
« Последнее редактирование: 22 Февраля 2010, 20:47:34 от AlexMak »

 

Страница сгенерирована за 0.024 секунд. Запросов: 20.