Определите, который пункт меню личинки использовал при начальной загрузке

Действительно ли возможно протестировать, какой пункт меню использовался для запуска системы. Если выбор ядра отличался, я могу, например, сделать это в своем сценарии входа в систему

if uname -r | grep -q lowlatency; then
    jack-start
fi

Но доверие ядру выпускает ужасные швы. Мне нравится использовать меню начальной загрузки для таких вещей, то, что я использую меню начальной загрузки для выбора ядра/операционной системы, так или иначе настолько делающего больше после того, как запуск занимает больше времени.

Возможные решения я думал кроме использования uname

  • Установите переменную среды при вызове записи меню начальной загрузки. Если это возможно, довольно хорошо

  • Я настроил личинку для запоминания в последний раз используемой записи. Я могу получить, от какой записи это было где-нибудь? Да, я нашел файл /boot/grub/grubenv

1
задан 22 October 2014 в 01:28

2 ответа

Вот решение, которое я нашел:

  • файл /boot/grub/grubenv содержит название выбранной записи

, Таким образом, я могу теперь использовать

if grep -q 'Whatever' /boot/grub/grubenv; then
#   do stuff    
fi
1
ответ дан 10 November 2019 в 23:31

Иначе, с помощью proc/cmdline, пример:

BOOT_IMAGE=/boot/vmlinuz-3.13.0-37-generic root=UUID=4c0c4c6d-708b-45b0-b9e9-a5e6a7de491e ro persistent quiet splash

возможно использовать ~/.bashrc, установить пользовательскую переменную среды, что это - значение, зависит от proc/cmdline. Поскольку можно добавить пользовательский параметр начальной загрузки Linux, если Вы думаете /boot/vmlinuz-3.13.0-37-generic, недостаточно для идентификации его.

Ссылка:

1
ответ дан 10 November 2019 в 23:31

Другие вопросы по тегам:

Похожие вопросы: