update-grub игнорирует некоторые параметры в / etc / default / grub

Просто установил еще один жесткий диск и заметил, что grub автоматически добавил необходимые пункты меню для загрузки с него. Я хотел откорректировать эти новые записи, отредактировав / etc / default / grub, но, похоже, некоторые параметры игнорируются или переопределяются сценариями update-grub и grub-mkconfig. В частности, эти строки:

GRUB_TIMEOUT=2
GRUB_OS_PROBER_SKIP_LIST="469841589841479F"

Я удалил строку GRUB_HIDDEN_TIMEOUT = 0, так как в документации сказано, что она устарела, и заменил ее на:

GRUB_TIMEOUT_STYLE = "hidden"

После запуска любого сценария полученный файл grub.cfg содержит:

if [ "${recordfail}" = 1 ] ; then
  set timeout=-1
else
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=hidden
    set timeout=2
  # Fallback hidden-timeout code in case the timeout_style feature is
  # unavailable.
  elif sleep --interruptible 2 ; then
    set timeout=0
  fi
fi
### END /etc/grub.d/00_header ###

Таким образом, здесь используется опция тайм-аута. Проблема, кажется, позже с разделом /etc/grub.d/30_os-prober. До того, как у меня появился второй жесткий диск, явно не было записей об этом. Теперь, когда есть, это добавляется в grub.cfg:

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sdb1)' --class windows --class os $menuentry_id_option 'osprober-chain-CA0E41BE0E41A3F3' {

[snip]
}
menuentry 'Windows Recovery Environment (loader) (on /dev/sdb2)' --class windows --class os $menuentry_id_option 'osprober-chain-469841589841479F' {

[snip]
}
set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  set timeout=10
fi
### END /etc/grub.d/30_os-prober ###

Таким образом, он не только не игнорирует раздел, который я ему сказал, но и часть скрипта os-prober не позволит мне установить тайм-аут 0 и вызвать меню (я привык просто удерживать левую клавишу Shift при включении, если я когда-либо захочу изменить параметры загрузки).

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

Если не считать редактирования grub.cfg каждый раз или настройки /etc/grub.d/30_os-prober (который может быть перезаписан во время обновления?), Есть ли исправление для этого?

Спасибо!

3
задан 22 April 2014 в 21:40

4 ответа

Проверки личинки GRUB_OS_PROBER_SKIP_LIST против EXPUUID не UUID, таким образом, соответствующий формат для GRUB_OS_PROBER_SKIP_LIST UUID@/dev/????, например:

GRUB_OS_PROBER_SKIP_LIST="A3F5-6DF3@/dev/sda1"
0
ответ дан 22 April 2014 в 21:40

Как я очистил grub.cfg

0-, когда новое [Linux], распределение установлено личинка-mkconfig, будет использовать/etc/grub.d/10_linux для реализации ядра Linux и восстановления menuentries. Тестер ОС будет [/etc/grub.d/30_os-prober] использовать 30_os-тестер для нахождения другой ОС [Операционные системы]

часто, меню запуска может иметь нежелательные, лишние или даже мертвые записи. (мертвая запись в моем меню начальной загрузки запустила меня на этих поисках.) Я посмотрел на/boot/grub/grub.config для ознакомления меня с menuentries.

для удаления нежелательной записи я сделал следующее как корень:

1-мертвая запись была найдена 30_os-тестером. Я скопировал записи [сделанный 30_os-тестером в/boot/grub/grub.cfg], я хотел к 40_custom.

2-я поместил GRUB_DISABLE_OS_PROBER = "верный" в/etc/default/grub

3-, я протестировал новую конфигурацию в резервном каталоге начальной загрузки. sudo копают-mkconfig-o меню-test.cfg [имя файла произвольно]

4-, когда тестовый файл смотрел способ, которым я хотел его: sudo обновляют личинку

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

0
ответ дан 22 April 2014 в 21:40

Если os-prober возвраты проверка ошибок разделы (например, zfs) видят эта фиксация

0
ответ дан 17 November 2019 в 19:59

Лучший способ найти UUID:

sudo grub -probe --target=fs_uuid --device /dev/sda6

Поиск UUID с blkid не будет работать для разделов Mac OS X.

1
ответ дан 11 January 2021 в 10:14

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

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