на моем UEFI загружающийся компьютер я установил новую Ubuntu 18.04.1 LTS, использующий схему выделения разделов LVM несколько месяцев назад.
$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 vfat 79DE-0D6B /boot/efi
└─sda2 LVM2_member ZBlrfj-ZwAJ-2T3b-gUHr-eKVw-nhIi-9bQQTs
├─ubuntu--vg-root ext4 e85edc94-cc00-42c5-8994-cbb835e8e315 /
└─ubuntu--vg-swap_1 swap e699c892-4046-4d0b-957a-f936cc4c9973 [SWAP]
Первые месяцы каждая начальная загрузка пошла как ожидалось, что означает меню начальной загрузки GRUB, только показали, если система не была закрыта правильно. Таким образом, известная recordfail функция, казалось, хорошо работала.
Но затем, несколько недель назад, после обновления системы к Ubuntu 18.04.2 LTS, меню начальной загрузки GRUB начало показывать себя при каждой начальной загрузке с тайм-аутом 30 секунд. Конечно, в конечном счете это является раздражающим :-(
После осмотра конфигурационного файла личинки /boot/grub/grub.cfg
Я узнал, что recordfail функция была объявлена, как повреждено относительно использования LVM?! recordfail опция была отключена и therfore, GRUB продолжает показывать меню начальной загрузки при каждой начальной загрузке.
set recordfail=1
# GRUB lacks write support for lvm, so recordfail support is disabled.
Источник для этого постоянного отключил recordfail опцию, я нашел затем в дальнейшем GRUB configration генерацию сценария /etc/grub.d/00_header
в check_writable()
функция.
abstractions="$(grub-probe --target=abstraction "${grubdir}")"
for abstraction in $abstractions; do
case "$abstraction" in
diskfilter | lvm)
cat <<EOF
# GRUB lacks write support for $abstraction, so recordfail support is disabled.
EOF
return 1
;;
esac
done
Поскольку можно читать, автор объявил эти два модуля diskfilter
и lvm
тормозить recordfail функцию, таким образом приводящую к тайм-ауту раздражающих 30 секунд при каждой начальной загрузке.
До сих пор это - статус-кво, и все вещи, кажется, работают как ожидалось... Но, почему recordfail функция работала хорошо во-первых? Существует ли неразрешенная ошибка, которая является причиной для отключения его? Действительно ли я - единственный человек на земле, выполняющей эту совокупность загрузчика и схемы выделения разделов? Я ожидаю, что кто-то может решить эту тайну.
Заранее спасибо
/ РЕДАКТИРУЮТ, я не хочу просто избавляться от раздражающего тайм-аута меню начальной загрузки GRUB. Вместо этого я хочу понять, где базовая проблема, для этого поведения.
Я просто заметил эту проблему, также. Это, кажется, связано с этим изменением с 9 января
https://bugs.launchpad.net/ubuntu / + source/grub2 / + ошибка/1800722
Похоже, что ошибка была отправлена для устранения проблемы, вызванной исходным исправлением ошибки
https://bugs.launchpad.net/ubuntu / + source/grub2 / + ошибка/1815002
Обходной путь: изменить /boot/grub/grub.cfg вручную и заменить timeout=30 на timeout=2 (2 здесь означает 2 секунды)
sudo sed -i.bak -- 's/set timeout=30/set timeout=2/g' /boot/grub/grub.cfg && diff /boot/grub/grub.cfg.bak '/boot/grub/grub.cfg'
Создается файл резервной копии в /boot/grub/grub. cfg.bak
.
Это нужно делать каждый раз после update-grub
, обновления ядра и т.д.