<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Для ядра Linux предложен livepatch - обновление без перезагрузки]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=36657&amp;type=atom" />
	<updated>2014-11-09T06:03:12Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=36657</id>
		<entry>
			<title type="html"><![CDATA[Re: Для ядра Linux предложен livepatch - обновление без перезагрузки]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=430432#p430432" />
			<content type="html"><![CDATA[<p>Как грится, живы будем не помрем а поживем увидим.<br /> А то что хорошо или плохо разберемся</p>]]></content>
			<author>
				<name><![CDATA[sidibil]]></name>
				<uri>https://linuxforum.ru/profile.php?id=3016</uri>
			</author>
			<updated>2014-11-09T06:03:12Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=430432#p430432</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Для ядра Linux предложен livepatch - обновление без перезагрузки]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=430358#p430358" />
			<content type="html"><![CDATA[<p>В списке рассылки разработчиков ядра Linux <a href="https://lkml.org/lkml/2014/11/6/387">представлен</a> l<a href="https://github.com/spartacus06/livepatch/">ivepatch</a>, новый механизм внесения исправлений в работающее ядро Linux без перезагрузки и без остановки работы приложений.</p><p>Как известно, в настоящее время на включение в ядро претендуют технологии обновления ядра на лету <a href="http://www.opennet.ru/opennews/art.shtml?num=39235">kpatch</a> от компании Red Hat и <a href="http://www.opennet.ru/opennews/art.shtml?num=39424">kGraft</a> от компании SUSE, которые похожи по используемым методам применения обновлений, но <a href="http://www.itwire.com/business-it-news/open-source/64086-patching-a-running-linux-kernel-kgraft-v-kpatch">отличаются</a> деталями реализации и способами подготовки патчей. В kGraft патч может формироваться непосредственно на основе исходных текстов, без манипуляций c объектным кодом. В kpatch патч генерируется на основе сравнения двух бинарных сборок ядра. Обе системы являются свободными и достаточно жестко конкурируют между собой, что затрудняет выбор, какую из них принять в основной состав ядра.</p><p>Проект livepatch попытался объединить работающие на уровне ядра Linux части технологий kpatch и kGraft в универсальный базовый компонент, который стал бы приемлем для включения в основной состав ядра. По аналогии с kpatch и kgraft в livepatch используется метод замены функций в ядре целиком и перенаправления на новую функцию при помощи штатной подсистемы ftrace. Патч оформляется в форме модуля ядра, осуществляющего необходимую подстановку кода функций. Наиболее существенным достоинством livepatch является возможность использования подобных модулей-патчей, подготовленных как инструментарием kpatch, так и kGraft. Сам livepatch, при этом, предоставляет лишь базовый интерфейс для регистрации и активации патчей в ядре, и реализован в форме управляющего модуля livepatch.ko.</p><p>Из областей, которые ещё требуют доработки отмечается реализация средств для обеспечения целостности системы в процессе применения патча. В kpatch и kGraft используются собственные механизмы для защиты от одновременного вызова старого и нового кода в пограничные моменты. В 90% патчей, устраняющих уязвимости, подобные механизмы не требуются, так как в них просто добавляется дополнительная условная проверка. Возможность полноценной подмены функций планируется реализовать в одном из следующих выпусков livepatch.</p><br /><br /><p>Источник: <a href="http://www.opennet.ru/opennews/art.shtml?num=41021">http://www.opennet.ru/opennews/art.shtml?num=41021</a></p>]]></content>
			<author>
				<name><![CDATA[verg]]></name>
				<uri>https://linuxforum.ru/profile.php?id=10709</uri>
			</author>
			<updated>2014-11-08T11:41:17Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=430358#p430358</id>
		</entry>
</feed>
