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


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

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

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

Оффлайн drakonn

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #270 : 04 Января 2010, 09:31:36 »
1. Мне не удобно пользоваться менюшкой выбора ХР и вин 7,  т.к. ХР использую оочень редко поэтому я так и сделал
2. ХР нужен для досовских пр.иложений, по учёбе нужен с++ досовский  (в вин 7 х64 они тупо не запускаются)
3. ХР мод у меня не работает, т.к. проц не поддерживает технологию виртуализации
А вот насчёт скриптов 30 и 40-го можно поподробней где чё подправить, ато не очень понял чесно говоря
ДА и ещё а можно этот  grub переустановить чтоли ну я не знаю

Оффлайн Курсор

  • Участник
  • *
  • Сообщений: 117
  • Йо-хо-хо и бутылка рома!
    • Просмотр профиля
    • Блог умных водителей
Re: пишем мануал по GRUB2
« Ответ #271 : 04 Января 2010, 10:51:12 »
Может кто то помочь настроить загрузку ( Grub) например в личке?
Просто просмотрел тутошние сообщения, а ответа так и не нашел. ( Если просмотрел - звиняйте).

У меня в Грубе при загрузке куча ( 9 ) пунктов меню. А хотел бы оставить всего 2. Линь и Windows.
Пробовал это сделать, следуя инструкции в топике - но не совсем получилось. То есть не нашел способа спрятать лишние пункты меню.
Может кто то подскажет?

У меня Ubuntu 9.10, GRUB 1,97 beta (Это 2-й ??? Вроде по описанию файлов да - просмотрел файловую систему.)

И еще вопрос - а почему нельзя сделать какую нить приплюху, чтобы для редактирования меню загрузки не нужно было лазить и редактировать файлы? Взял, добавил галки где нужно или убрал где не нужно и все дела? а может уже есть такая утилитка?

Спасибо!
Lenovo IP 32-15ABR AMD A10, 6 Gb / 1 Tb.
Трудно ничего не делать, но мы не боимся трудностей!

Оффлайн drakonn

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #272 : 04 Января 2010, 11:14:35 »
ну эт не видна тут всё через ...пу))) зато 1 раз настроил и живи спокойно, никаких переустановок каждый год и прочих зависонов, как в винде, как гварица - "зачем всё так сложно?? чтобы было всё просто"  :)


Вот подправил 30-й скрипт, запустил update-grub но файл grub.cfg не изменился

зы ДА, 7-ку груб грузит отлично

Значит отредактировао 40-й скрипт, т.е. добавил туда пкнкт ХР, сделал update-grub, но grub.cfg снова не изменился, при перезагрузке я его не увидел
« Последнее редактирование: 04 Января 2010, 12:13:25 от drakonn »

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #273 : 04 Января 2010, 15:33:59 »
Цитировать
У меня в Грубе при загрузке куча ( 9 ) пунктов меню. А хотел бы оставить всего 2. Линь и Windows.
Пробовал это сделать, следуя инструкции в топике - но не совсем получилось. То есть не нашел способа спрятать лишние пункты меню.
Может кто то подскажет?
в связи с обилием подобных вопросов все ближе подхожу к включению сего в ман, только все лень))
итак, чистим менюху груба:
1. отключаем лишние скрипты.
можно сразу вырубить memtest, а также, если у вас нет других ос кроме убунты) - и 30_os-prober. делается это просто - лишением скрипта чмодов на запуск:
sudo chmod -x /etc/grub.d/30_os-prober2. удаляем старые ядра.
опять же, ничего сложного. пишем в поиске синаптика версию ядра (например, 2.6.31-15) и удаляем три установленных пакета (linux-headers-xxxx, linux-headers-xxxx-generic, linux-image-xxxx-generic), чем и облегчаем жизнь себе и системе (~170mb свободного места на ядрышко). после удаления ядер update-grub выполнится сам собой
3. отключаем recovery mode. за него отвечает параметр "GRUB_DISABLE_LINUX_RECOVERY" в /etc/default/grub. раскомментируем соответствующую строку. sudo update-grub
вроде все. на выходе мы должны получить один пункт с последним (и единственным) ядром и второй - с виндой.
+совет: все это хорошо до поры до времени, но если вдруг чего, и понадобиться recovery mode - придется думать головой)) во избежание сего пока что рекомендую перед выполнением вышеперечисленного сделать так:
sudo cp /boot/grub/grub{,-full}.cfgи потом, когда вдруг приспичит - идем в консоль груба (нажав "c") и делаем
configfile /boot/grub/grub-full.cfgкроме того, на сей счет есть кой-какие задумки, но об том позже...
Цитировать
Вот подправил 30-й скрипт, запустил update-grub но файл grub.cfg не изменился
т.е. drivemap так и фигурирует, ага?
Цитировать
Значит отредактировао 40-й скрипт, т.е. добавил туда пкнкт ХР, сделал update-grub, но grub.cfg снова не изменился, при перезагрузке я его не увидел
тэкс... что именно туды написал?
нужно было добавить примерно следующее:
menuentry "winxp" {
search -u uuid_раздела -s
chainloader +1
}
можно, конечно, через "set root", но по ююид надежнее, ибо нумерация в грубе плавающая порой.
Цитировать
И еще вопрос - а почему нельзя сделать какую нить приплюху, чтобы для редактирования меню загрузки не нужно было лазить и редактировать файлы? Взял, добавил галки где нужно или убрал где не нужно и все дела? а может уже есть такая утилитка?
есть некий Startup Manager, у некоторых даже нормально работает, но пока что grub2 он полностью толком не поддерживает и находится в состоянии допилинга. так что рекомендовать не стану, да и сам не рискну. впрочем, если есть желание - пробуем, предварительно забэкапив все, что можно и что нельзя.
лучше на "ты"

Оффлайн Курсор

  • Участник
  • *
  • Сообщений: 117
  • Йо-хо-хо и бутылка рома!
    • Просмотр профиля
    • Блог умных водителей
Re: пишем мануал по GRUB2
« Ответ #274 : 04 Января 2010, 15:57:02 »

1. отключаем лишние скрипты.
можно сразу вырубить memtest, а также, если у вас нет других ос кроме убунты) - и 30_os-prober. делается это просто - лишением скрипта чмодов на запуск:

Спасибо большое за потраченное время. Да, это тоже бы включить в мануал.

Только начал было делать, но у меня кроме Убунты еще Windows 7 стоит (последний пункт списка)...
Как поступить в этом случае (я про ваш п. 1) ?

(В принципе то, мне нужно оставить пункт 0 (то есть 1-й в списке - Ubuntu, и последний в списке - Винду 7.)
Lenovo IP 32-15ABR AMD A10, 6 Gb / 1 Tb.
Трудно ничего не делать, но мы не боимся трудностей!

Оффлайн drakonn

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #275 : 04 Января 2010, 16:40:36 »
я вот ещё не понял - у меня grub или grub 2 (Ubuntu 9.10)??? вроде написано было что в 9.10 уже 2-й груб, но здесь написано, что во 2-м грубе нет файла menu.lst, а у меня есть!!
И ещё - когда делаю update-grub обновляется только файл menu.lst

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #276 : 04 Января 2010, 17:29:44 »
Цитировать
Только начал было делать, но у меня кроме Убунты еще Windows 7 стоит (последний пункт списка)...
Как поступить в этом случае (я про ваш п. 1) ?
имелось в виду следующее: если нет других осей, ты отключаем и 30-ку, в противном случае оставляем. т.е. в твоем примере убираем только мемтест:
sudo chmod -x /etc/grub.d/20_memtest86+
Цитировать
я вот ещё не понял - у меня grub или grub 2 (Ubuntu 9.10) вроде написано было что в 9.10 уже 2-й груб, но здесь написано, что во 2-м грубе нет файла menu.lst, а у меня есть!!
И ещё - когда делаю update-grub обновляется только файл menu.lst
как ставил Ubuntu? с desktop или с alternate? если с desktop, то знакомый косяк....
переставь его к чертям, а там глядишь и еще чего починится:
sudo aptitude purge grub-pc grub-common grubпосле можно по желанию прочистить /etc/grub.d и /etc/default/grub. и обратно
sudo apt-get install grub-pc grub-common
лучше на "ты"

Оффлайн drakonn

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #277 : 04 Января 2010, 18:18:30 »
ну с desktop ставил с cd, даж не знал что так получитсяЮ попробую всё, да и спасибо тебе за помощ))
А вот линукс удалю, то ХР тоже не загружу??? его тож сносить(((( или не
« Последнее редактирование: 04 Января 2010, 18:24:03 от drakonn »

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #278 : 04 Января 2010, 19:24:05 »
ну ежели будешь сносить, нужно будет потом сделать так: отрубить хард с семкой, грузануться с диска хэрэ, пойти в "восстановление" и выполнить там пару манипуляций - на сей счет поищи на форуме по слову "fixmbr".
лучше на "ты"

Оффлайн Путнев Максим

  • Активист
  • *
  • Сообщений: 406
  • Иногда происходит революция.
    • Просмотр профиля
    • Мы создаем доверие к технологиям
Re: пишем мануал по GRUB2
« Ответ #279 : 04 Января 2010, 21:39:43 »
Цитировать
III. восстановление GRUB2.
после, например, установки Windows, вы можете столкнуться с тем, что при загрузке будет отображаться только меню загрузки Windows, а меню grub2 вы не увидите вовсе, что приведет к невозможности загрзуить что-либо кроме Windows. такое происходит из-за того, что Windows при установке затирает загрузочную область жесткого диска (так назывемый MBR-раздел), удаляя оттуда файлы загрузчика grub2.
для восстановления grub2 вам понадобится liveCD Ubuntu 9.10 или любой другой современной системы, включающей grub2 в свой дистрибутив.

востановление GRUB2 с LiveCD.
загрузитесь с вашего LiveCD (предварительно выберите меню устройств загрузки при наличии такового или же установите cd-привод первым boot device в BIOS). запустите консоль.
для начала нам нужно будет узнать, на каком диске и на каком разделе установлена Ubuntu. если вы не помните этого - воспользуйтесь командой
Код:

sudo fdisk -l

для работы нам понадобится /-раздел (root). примонтируйте его командой
Код:

sudo mount /dev/sda5 /mnt

в моем случае корневой раздел системы - /dev/sda5, вы же используйте свое значение. если у вас /boot сделан отдельным разделом, его также надо будет примонтировать. я не использую отдельный boot-раздел, но предположим, что sda3 выделен под /boot. монтируем его:
Код:

sudo mount /dev/sda3 /mnt/boot

также монтируем папку /dev нашей live-системы как /dev нашего root-раздела:
Код:

sudo mount --bind /dev /mnt/dev

и /proc live-системы как /proc root-раздела:
Код:

sudo mount --bind /proc /mnt/proc

теперь выполняем следующую команду:
Код:

sudo chroot /mnt

теперь вы - root-пользователь в системе, корневым разделом которой считается /mnt, то есть корневой раздел вашей настоящей системы. и вот мы готовы обновить MBR-раздел жесткого диска, переустановив grub2. но для начала нам нужно определиться, с какого физического диска загружается наш компьютер. если у вас один жесткий диск, разбитый на разделы - он будет именоваться sda. если несколько - первый из них - sda, второй - sdb, и так далее. определить загрузочный диск снова поможет команда
Код:

sudo fdisk -l

в полученной таблице есть столбец "загрузочный". в моем случае напротив раздела sda1 стоит звездочка, означающая, что у меня загрузочным является первый жесткий диск, то есть sda. определившись с загрузочным диском, ставим на него grub2:
Код:

grub-install /dev/sda

если вы столкнетесь с какими-либо ошибками - попробуйте перезапустить команду с ключом --recheck:
Код:

grub-install --recheck /dev/sda

также в некоторых случаяъ может помочь вариант
Код:

grub-install --recheck --no-floppy /dev/sda

обратите внимание: мы устанавливаем grub2 на физический диск (sda, sdb...), а не на раздел (sda3, sdb1...)!
если все прошло успешно, выходим из chroot командой
Код:

exit

отмонтируем наши диски и паки:
/dev нашей live-системы:
Код:

sudo umount /mnt/dev

/proc:
Код:

sudo umount /mnt/proc

boot-раздел, если таковой монтировался отдельно:
Код:

sudo umount /mnt/boot

и собственно, корневой раздел:
Код:

sudo umount /mnt

все! перезагружаемся, восстанавливаем порядок загрузки в BIOS (ставим жесткий диск на первое место) и смотрим результат.
Мне помогло!!!! Спасибо большое!!!!

Оффлайн Курсор

  • Участник
  • *
  • Сообщений: 117
  • Йо-хо-хо и бутылка рома!
    • Просмотр профиля
    • Блог умных водителей
Re: пишем мануал по GRUB2
« Ответ #280 : 05 Января 2010, 00:05:09 »
2 dimas000
Спасибо большое! Вроде все ОК, получилось.
----------------------------------

Остались две строчки в GRUB:
----------------------------------------------------------------
Ubuntu, Linux 2.6.31.16-generic
Windows 7 (loader) (on /dev/sda1)
----------------------------------------------------------------
Вопросик: Можно ли отредактировать текст второй строки чтобы выводился текст, какой я хочу?

(Я так понимаю, что в файле 30_os-prober нужно поменять формат вывода строки. Допустим нынешний вариант, в котором строчка собирается,  закомментировать (на всякий случай), а вместо него выводить какой то заранее написанный текст-константу. Я правильно мыслю?
Вот только какую строчку? Я даже не могу понять, на каком языке файл написан :(  )

Спасибо!
« Последнее редактирование: 05 Января 2010, 01:45:47 от Курсор »
Lenovo IP 32-15ABR AMD A10, 6 Gb / 1 Tb.
Трудно ничего не делать, но мы не боимся трудностей!

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #281 : 05 Января 2010, 11:36:01 »
Цитировать
Вопросик: Можно ли отредактировать текст второй строки чтобы выводился текст, какой я хочу?
(Я так понимаю, что в файле 30_os-prober нужно поменять формат вывода строки. Допустим нынешний вариант, в котором строчка собирается,  закомментировать (на всякий случай), а вместо него выводить какой то заранее написанный текст-константу. Я правильно мыслю?
Вот только какую строчку? Я даже не могу понять, на каком языке файл написан   )
монжо все, вопрос только: на кой? меню груба юзер созерцает от одной до нескольких секунд в день, так что...
но ежели приспичило, то можно! файл написан на наречии bash'а (собственно, скрипт и есть) с примеьсю диалекта команд grub2.
итак, правим следующим образом: ищем такую строку
menuentry "${LONGNAME} (on ${DEVICE})" {
у меня это 100-я ровно. и заменяем на то, что глазу и душе угодней
menuentry "windowoz" {
после чего sudo update-grub и смотрим результат. радуемся.
кстати, если уж на то пошло, могу поделиться советом, как изнасиловать и строку с убунтой. у меня, например, так: Ubuntu 9.10 karmic @ 2.6.xxxx-generic
ЗЫ. самое страшное в грубовских скриптах - это многочисленные пропуски всего и вся через sed, вот там черт голову сломит с непривычки, а во всем остальном легко проследить логику и понять, какая переменная откуда берется и что куда пихать
лучше на "ты"

Оффлайн Курсор

  • Участник
  • *
  • Сообщений: 117
  • Йо-хо-хо и бутылка рома!
    • Просмотр профиля
    • Блог умных водителей
Re: пишем мануал по GRUB2
« Ответ #282 : 05 Января 2010, 13:34:35 »
монжо все, вопрос только: на кой?
Очень просто - у нас тут начинают "шерстить" рабочие компы на предмет лицензионного софта. Так вот, чтобы видели только загрузки Ubuntu Linux... Строчка в которой написано Windows может заинтересовать проверялок. Хоть у меня и лицензия, но показывать бамажки немного геморройно.

Спасибо огромное! Все получилось как я и хотел!
« Последнее редактирование: 06 Января 2010, 17:02:50 от Курсор »
Lenovo IP 32-15ABR AMD A10, 6 Gb / 1 Tb.
Трудно ничего не делать, но мы не боимся трудностей!

Оффлайн sha9ow

  • Новичок
  • *
  • Сообщений: 37
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #283 : 07 Января 2010, 00:38:14 »
доброго времени суток ув.dimas000. я согласно ваших рекомендаций пробовал убрать лишние пункты из груба. все получилось кроме одного sudo chmod -x /etc/grub.d/30_os-prober .пишет что пропущен операнд.  :idiot2:  что я не так делаю? с линуксом недавно,так-что прошу простить за глупые вопросы...т.с. идет процесс познания :) в остальном все о.к. спасибо за рекомендации :) и еще один вопрос: у вас сказано,чтобы отключить мемтест. это так же как и 30_os...?

Оффлайн dimas000

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1437
  • Ubuntu 9.10 @ 2.6.34
    • Просмотр профиля
Re: пишем мануал по GRUB2
« Ответ #284 : 07 Января 2010, 00:55:07 »
хм... только что благополучно проделал
sudo chmod -x /etc/grub.d/20_memtest86+и обратно +x. все в порядке
но ежели так не хочет можно сделать иначе:
sudo chmod 644 /etc/grub.d/20_memtest86+
лучше на "ты"

 

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