В Ubuntu (и, наверное, в Debian) есть системный скрипт с именем, update-grub
который автоматически выполняется grub-mkconfig -o
с правильным путем для файла конфигурации grub.
Есть ли подобная команда для дистрибутивов Red Hat?
Если нет, как система узнает, где находится файл конфигурации grub для обновления при установке новой версии ядра?
/bin/kernel-install
вместо этого. Пожалуйста, измените свой ответ, чтобы включить эту информацию для дальнейшего использованияПосле анализа сценариев в Fedora я понимаю, что путь к файлу конфигурации читается из символической ссылки
/etc/grub2.conf
. Правильнаяgrub2-mkconfig
строка такова:Как отмечено в комментариях, это может быть
/etc/grub2.cfg
или/etc/grub2-efi.cfg
в системе UEFI. На самом деле обе ссылки могут присутствовать одновременно и указывать на разные местоположения . Если-e
флагreadlink
не установлен, целевой файл не будет установлен, но в моей системе оба существовали ... Думаю, проверьте ваши команды.источник
/etc/grub2.cfg
sudo grub2-mkconfig -o "$(readlink /etc/grub2-efi.cfg)"
На Fedora я использую:
потому что выполнение без параметра
readlink
возвращает относительный путь иgrub2-mkconfig
выдает ошибку:Я использую эту
-e
опцию, чтобы, если символическая ссылка не преобразуется в существующий файл, вывод выводится на стандартный вывод, поэтому я знаю, что что-то пошло не так.Со страницы руководства для readlink:
источник
В Fedora символическая ссылка /etc/grub2.cfg указывает на версию BIOS. В системе UEFI используйте:
В CentOS:
Как правило, вы можете использовать вместо:
См. Https://docs.fedoraproject.org/f27/system-administrators-guide/kernel-module-driver-configuration/Working_with_the_GRUB_2_Boot_Loader.html#sec-Editing_a_Menu_Entry
источник
отредактируйте файл grub с помощью
vi
илиvim
, сохраните изменения и закройте редактор с помощью: wq!Это то, что вам нужно запустить для обновления grub в RedHat или CentOS:
источник
update-grub
Скрипт в Ubuntu на самом деле просто заглушкаgrub-mkconfig
, и она может быть адаптирован к другим дистрибутивам , не слишком много боли. Вот оно во всей полноте:Это фактически делает то , что рекомендуется в вики CentOS , а в других ответах здесь - единственное различие заключается в том , что вам нужно изменить ,
grub
чтобыgrub2
в команде и пути выхода.источник