Автоматическая перезагрузка после Ubuntu Livepatch
Когда Ubuntu Livepatch пропатчил ядро, но рекомендует перезагрузиться для загрузки новой версии, в motd появляется следующее сообщение:
*** Livepatch has fixed kernel vulnerabilities. System restart recommended on the closest maintenance window
Не трогает, даже когдаapt upgradeустановил новое ядро.
Мне повезло, у меня есть еженедельное окно обслуживания, и я хотел бы, чтобы система автоматически перезагружалась, когда Livepatch рекомендует это. Другими словами, мне нужна немедленная функциональность исправлений Livepatch, но мне не нужно марафонское время безотказной работы.
Каков наилучший способ добиться этого? Насколько я могу судить, есть четыре возможности:
- Есть ли способ настроить Livepatch на касание?
- Есть ли способ установить apt to touch после обновления ядра, даже если Livepatch активен?
- Есть ли способ настроить автоматические обновления на перезагрузку, когда это рекомендуется Livepatch, даже когда
/run/reboot-requiredнет? - Есть ли способ проверить, рекомендует ли Livepatch перезагрузку программно?
canonical-livepatch kernel-upgrade-requiredпо-видимому, выдает определенные коды возврата, но они, похоже, официально не задокументированы.
1 ответ
Проблема, описанная в вопросе, является (возможно, непредвиденным) побочным эффектом изменения, внесенного Ubuntu в пакет автоматических обновлений.
Пока эта проблема не решена в Ubuntu, лучшим обходным решением, которое я нашел, является использование этого сценария из текущих версий Debian, который восстановит обычное поведение, требующее перезагрузки, после обновлений ядра без учета Livepatch:
#!/bin/sh
case "$DPKG_MAINTSCRIPT_PACKAGE::$DPKG_MAINTSCRIPT_NAME" in
linux-image-extra*::postrm)
exit 0;;
esac
if [ -d /var/run ]; then
touch /var/run/reboot-required
if ! grep -q "^$DPKG_MAINTSCRIPT_PACKAGE$" /var/run/reboot-required.pkgs 2> /dev/null ; then
echo "$DPKG_MAINTSCRIPT_PACKAGE" >> /var/run/reboot-required.pkgs
fi
fi
Подробности:
- Добавьте его как новый файл в
каталог (например ). - В некоторых случаях он может дублировать функциональность других скриптов перехвата после установки ядра, но это будет безвредно.
- Чтобы сценарий работал, в системе должен быть установлен пакет автоматических обновлений.
- На момент написания я подтвердил, что это применимо ко всем последним версиям Ubuntu. Если вы придете к этому ответу в какой-то момент в отдаленном будущем, еще раз проверьте, что он все еще применим и актуален.
В Launchpad была зарегистрирована ошибка, связанная с этой проблемой.