Как я могу узнать, установлен ли grub на диск и имеет ли он какие-либо настройки (примечательно, что он имеет для корневого параметра)
Мне нужно проверить множество дисков в программных массивах RAID1, чтобы убедиться, что на обоих дисках установлен grub, причем на каждом диске grub указано соответствующее корневое значение.
software-raid
grub
DrStalker
источник
источник
grub
0.9x или ниже были в общем использовании и задолго до того, как стали переименовыватьgrub-legacy
. Если это вас беспокоит, я предлагаю задать новый вопрос конкретно оgrub2
. в качестве альтернативы, проведите кампанию, исправляя все вопросы и ответы, которые устарели с течением времени.Ответы:
ОБНОВИТЬ:
Этот ответ с 2009 года относится к grub-legacy, а не к grub2.
Вы можете использовать
file
для идентификации GRUB в MBR. напримерПараметр
root=
не хранится в MBR, он хранится вmenu.lst
файле GRUB, который хранится в файловой системе (обычно в каталоге / boot / grub корневого fs или в каталоге grub файловой системы / boot - но не всегда это может быть где угодно).Вы должны будете проанализировать вывод файла выше, определить, на каком диске / разделе находится
menu.lst
файл, смонтировать его, прочитать и проанализировать. Вы также захотите прочитать в файле grub / default, чтобы выяснить, какой пункт меню grub является значением по умолчанию, потому что он, вероятно, имеет параметр root =, который вас больше всего интересует.источник
Альтернативный метод
file -s
не работал для меня в Ubuntu Lucid, потому что магические файлы моей файловой команды устарели . Другой способ сделать это, если ваши магические файлы не догнали изменения GRUB, это проверить первые 512 байт устройства, используя следующуюdd
команду:Это передает выходные данные
dd
команды черезstrings
команду, таким образом удаляя непечатаемые символы (статистика передачи отбрасывается в/dev/null
).Если вы видите какие-либо сообщения, которые GRUB будет отображать при сбое, значит, у вас установлен grub.
Чтобы ответить на этот пост, защищенный паролем, отправьте подсказку louib на ubuntuforums.org: http://ubuntuforums.org/showthread.php?t=363372
Для любопытных вот что я получил
file -s
:Там нет ничего про GRUB, в частности.
источник
file -s
команду, использует grub-pc, который, по-видимому, GRUB2, так что, похоже, вы частично правы. Тем не менее, я работалfile -s
на некоторых других системах с GRUB 0.97, и на некоторых это работало, а на других - нет. Разница между этими системами заключалась в количестве магических файлов, которые поставляются с командой file. Обмен файлами магических чисел подтвердил, что определения из нерабочей системы вызвали сбой работающей системы.Вы можете использовать,
grub-emu
чтобы увидеть меню, которое Grub покажет при следующей перезагрузке машины.На моем настольном компьютере меню отображалось, как и ожидалось, хотя, если я действительно делал вид, что загружаю ядро, я получаю сообщение об ошибке «нет такого устройства». Я думаю, что это ожидаемое поведение.
На моем DigitalOcean VPS никакие записи не отображались в меню grub, хотя сервер действительно перезагрузился нормально. (Это VPS 2013 года, поэтому ваш пробег может отличаться.)
Некоторые заметки при запуске
grub-emu
:c
затем набравexit
.reset
. (Не волнуйтесь, он не перезагрузит вашу машину. Он просто очистит ваш терминал.)источник
c
последующимexit
не работает для меня.