Для Ubuntu введён в строй механизм обновления ядра без перезагрузки
Компания Canonical представила новый сервис Canonical Livepatch Service, в рамках которого для пользователей Ubuntu началось распространение обновлений с устранением опасных уязвимостей в ядре Linux, которые применяются к работающей системе на лету, позволяя избежать простоя в работе из-за перезагрузки. В настоящее время формирование live-патчей началось для 64-разрядных сборок Ubuntu 16.04.
Для внесения исправлений в ядро без перезагрузки и остановки работы задействована технология livepatch, предоставляющая аналогичные возможности, что и kpatch от компании Red Hat и kGraft от компании SUSE. В livepatch также используется метод замены функций в ядре и перенаправление на новую функцию при помощи штатной подсистемы ftrace. Патч оформляется в виде модуля ядра, осуществляющего необходимую подстановку кода функций. Модули-патчи для Ubuntu распространяются через специально подготовленный репозиторий.
Новая возможность позиционируется как коммерческий сервис для предприятий, требующий аутентификации (патчи доставляются по индивидуальному токену, привязанному к зарегистрированному пользователю). При этом сообществу предоставлена возможность бесплатного получения live-обновлений, но с ограничением подписки в 3 системы на пользователя. Бесплатные подписчики также выполняют роль полигона для опробования патчей - определённый процент случайно выбранных пользователей получают патчи немного раньше их поступления остальным подписчикам, что позволяет в случае непредвиденных проблем блокировать доставку патча основной массе пользователей. Для получения патчей для более, чем трёх систем требуется оформление платной подписки, стоимость которой составляет $12 в месяц.
Live-патчи формируются для Linux ядра 4.4 и доступны для серверов, виртуальных машин и настольных систем. Патчи охватывают только исправления уязвимостей, которым присвоен высокий или критический уровень опасности. Отмена установленных Live-патчей не поддерживается. Изменения, устраняющие ошибки, неопасные уязвимости, проблемы со стабильностью, совместимостью и производительностью продолжают формироваться приблизительно раз в три недели в виде обычных обновлений, требующих перезагрузки.
Для активации Live-сервиса требуется установить snap-пакет canonical-livepatch, получить токен на сайте и активировать его командой "sudo canonical-livepatch enable токен". Состояние применения live-патчей можно оценить командой "canonical-livepatch status". Исходные тексты модулей для применения live-патчей доступны всем желающим и могут быть использованы в обход сервиса Canonical.