Главная »
2014 » Ноябрь » 8 » Для ядра Linux предложен livepatch, механизм обновления без перезагрузки
00:18 Для ядра Linux предложен livepatch, механизм обновления без перезагрузки |
В списке рассылки разработчиков ядра Linux представлен livepatch, новый механизм внесения исправлений в работающее ядро Linux без перезагрузки и без остановки работы приложений.
Как известно, в настоящее время на включение в ядро претендуют технологии обновления ядра на лету kpatch от компании Red Hat и kGraft от компании SUSE, которые похожи по используемым методам применения обновлений, но отличаются деталями реализации и способами подготовки патчей. В kGraft патч может формироваться непосредственно на основе исходных текстов, без манипуляций c объектным кодом. В kpatch патч генерируется на основе сравнения двух бинарных сборок ядра. Обе системы являются свободными и достаточно жестко конкурируют между собой, что затрудняет выбор, какую из них принять в основной состав ядра.
Проект livepatch попытался объединить работающие на уровне ядра Linux части технологий kpatch и kGraft в универсальный базовый компонент, который стал бы приемлем для включения в основной состав ядра. По аналогии с kpatch и kgraft в livepatch используется метод замены функций в ядре целиком и перенаправления на новую функцию при помощи штатной подсистемы ftrace. Патч оформляется в форме модуля ядра, осуществляющего необходимую подстановку кода функций. Наиболее существенным достоинством livepatch является возможность использования подобных модулей-патчей, подготовленных как инструментарием kpatch, так и kGraft. Сам livepatch, при этом, предоставляет лишь базовый интерфейс для регистрации и активации патчей в ядре, и реализован в форме управляющего модуля livepatch.ko.
Из областей, который ещё требуют доработки отмечается реализация средств для обеспечения целостности системы в процессе применения патча. В kpatch and kGraft используются собственные механизмы для защиты от одновременного вызова старого и нового кода в пограничные моменты. В 90% патчах, устраняющих уязвимости, подобные механизмы не требуются, так как в них просто добавляется дополнительная условная проверка. Возможность полноценной подмены функций планируется реализовать в одном из следующих выпусков livepatch.
|
Просмотров: 211 |
Добавил: muge
| Рейтинг: 0.0/0 |