<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://lorwiki.zhbert.ru/index.php?action=history&amp;feed=atom&amp;title=Reiser4</id>
	<title>Reiser4 - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://lorwiki.zhbert.ru/index.php?action=history&amp;feed=atom&amp;title=Reiser4"/>
	<link rel="alternate" type="text/html" href="http://lorwiki.zhbert.ru/index.php?title=Reiser4&amp;action=history"/>
	<updated>2026-10-12T23:41:45Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>http://lorwiki.zhbert.ru/index.php?title=Reiser4&amp;diff=181&amp;oldid=prev</id>
		<title>Admin: 1 версия импортирована</title>
		<link rel="alternate" type="text/html" href="http://lorwiki.zhbert.ru/index.php?title=Reiser4&amp;diff=181&amp;oldid=prev"/>
		<updated>2023-02-27T18:39:16Z</updated>

		<summary type="html">&lt;p&gt;1 версия импортирована&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 21:39, 27 февраля 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>http://lorwiki.zhbert.ru/index.php?title=Reiser4&amp;diff=180&amp;oldid=prev</id>
		<title>lor&gt;Cetjs2: Откат правок 178.248.85.82 (обсуждение) к версии Cetjs2</title>
		<link rel="alternate" type="text/html" href="http://lorwiki.zhbert.ru/index.php?title=Reiser4&amp;diff=180&amp;oldid=prev"/>
		<updated>2019-03-27T07:34:28Z</updated>

		<summary type="html">&lt;p&gt;Откат правок &lt;a href=&quot;/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/178.248.85.82&quot; title=&quot;Служебная:Вклад/178.248.85.82&quot;&gt;178.248.85.82&lt;/a&gt; (&lt;a href=&quot;/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:178.248.85.82&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Обсуждение участника:178.248.85.82 (страница не существует)&quot;&gt;обсуждение&lt;/a&gt;) к версии &lt;a href=&quot;/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Cetjs2&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Участник:Cetjs2 (страница не существует)&quot;&gt;Cetjs2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''Reiser4''' — это высокопроизводительная файловая система, разрабатываемая [http://www.namesys.com/ Namesys] и Гансом Рейзером. Она работает только в Linux и пока что несет статус Experimental, развиваясь вне основной ветви ядра Linux.&lt;br /&gt;
&lt;br /&gt;
== А что в Reiser4 особенного? ==&lt;br /&gt;
Некоторые особенности этой файловой системы:&lt;br /&gt;
* эффективная система журналирования (wandering logs);&lt;br /&gt;
* эффективная работа с маленькими файлами, как в области расходования дискового пространства, так и в скорости. Используется технология [http://en.wikipedia.org/wiki/Tail_packing tail packing];&lt;br /&gt;
* быстрая обработка директорий, содержащих огромное количество файлов;&lt;br /&gt;
* инфраструктура плагинов. Уже доступны плагины для работы с метаданными, сжатием (gzip, lzo) и шифрованием;&lt;br /&gt;
* технология Allocate-on-flush или отложенное выделение дискового пространства под данные позволяет оптимизировать расходование дискового пространства. AoF также присутствует в [[ZFS]], [[EXT4]], [[BTRFS]], [[HFS+]] и [[XFS]];&lt;br /&gt;
* поддержка транзаций, танцующих деревьев и многого другое.&lt;br /&gt;
&lt;br /&gt;
Из минусов на сентябрь 2017 года можно выделить&lt;br /&gt;
* отсутствие этой ФС в основной ветви ядра;&lt;br /&gt;
* острый недостаток разработчиков;&lt;br /&gt;
* экспериментальный статус унаследован из прошлого;&lt;br /&gt;
* первоначальный автор и основной разработчик (собственно Ганс Райзер) осуждён за убийство и находится в тюрьме.&lt;br /&gt;
&lt;br /&gt;
В настоящее время бремя разработки и поддержки постепенно поднимают вверх плечи свободной команды разработчиков.&lt;br /&gt;
&lt;br /&gt;
== Почему Reiser4 называют высокопроизводительной? ==&lt;br /&gt;
Замеры производительности по сравнению с конкурентными ФС показывают крепкое превосходство в производительности:&lt;br /&gt;
* [http://web.archive.org/web/20070620025139/linuxhelp.150m.com/resources/fs-benchmarks.htm сравнительный тест файловых систем на типичных операциях с различными параметрами];&lt;br /&gt;
* [http://www.linuxinsight.com/first_benchmarks_of_the_ext4_file_system.html cравнение Ext3, Ext4, и Reiser4 на Default-параметрах].&lt;br /&gt;
&lt;br /&gt;
== Я хочу попробовать эту ФС. С чего мне начать? ==&lt;br /&gt;
&lt;br /&gt;
=== reiser4progs ===&lt;br /&gt;
Если вы не собираетесь использовать reiser4 как ФС для корневого раздела, то можете просто установить reiser4progs из репозиториев вашего дистрибутива и пропустить этот подраздел.&lt;br /&gt;
&lt;br /&gt;
Итак, мы хотим в будущем перевести корневой раздел на Reiser4, поэтому мы будем собирать утилиты для работы с этой ФС перед сборкой ядра. Почему? Здесь нужно сделать небольшое лирическое отступление на тему присутствия fsck в initrd. Это отступление специфично в первую очередь для дистрибутива openSUSE-10.3, которым пользуется ваш покорный слуга (но не касается 10.2, 10.1 и т. д.).&lt;br /&gt;
&lt;br /&gt;
Загрузка ядра производится загрузчиком (GRUB). Он загружает ядро и initrd к нему, а так же передает ядру такой параметр, как корневой раздел, например root=/dev/sda2. В openSUSE начиная с версии 10.3 и, возможно, в некоторых других дистрибутивах корневой раздел не монтируется даже в режиме read-only до окончания проверки. Это значит, что все необходимые для проверки утилиты (fsck.reiser4) должны находится в initrd. Однако, програмная логика утилит reiser4progs вынесена в отдельную библиотеку — libaal, которую вы можете найти [http://chichkin_i.zelnet.ru/namesys/ здесь]. Эта библиотека автоматически не добавляется в initrd, что делает невозможной проверку reiser4-раздела на ошибки и переводит загрузку в «ручной режим» (то есть вам надо примонтировать корневой раздел, возможно содержащий ошибки, самостоятельно в rw-режиме на свой риск). &amp;lt;pre&amp;gt;mount /dev/sda2 / -o remount&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Пусть fsck.reiser4 будет статическим ====&lt;br /&gt;
Мы попробуем собрать fsck.reiser4 статически, то есть нам понадобится статическая библиотека ''libaal-1.0.a''.&lt;br /&gt;
* Соберите libaal-1.0.5, используя &amp;lt;pre&amp;gt;configure; make&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Соберите reiser4progs-1.0.6, используя &amp;lt;pre&amp;gt;configure --enable-part-static; make all install clean;&amp;lt;/pre&amp;gt; Скорее всего, это будет непросто. Тем не менее, вам нужны статические версии libaal и некоторых других библиотек. В случае успешной установки, Вы будете иметь статические бинарники для работы с разделами reiser4. Они могут работать в самых экстремальных условиях, в том числе и в initrd. От себя рекомендую скопировать их в надежное место на случай, если корневой раздел упадет (ничего нельзя исключать), а под рукой не будет live-cd дистрибутива с поддержкой reiser4.&lt;br /&gt;
&lt;br /&gt;
==== Добавление libaal.so и libreiser4.so в initrd ====&lt;br /&gt;
Добавьте необходимые библиотеки в &amp;lt;tt&amp;gt;/lib/modules/`uname -r`/&amp;lt;/tt&amp;gt;. Можно также поэкспериментировать с библиотекой libaal-minimal, если ресурсоемкость initrd критична.&lt;br /&gt;
&lt;br /&gt;
=== Собираем ядро ===&lt;br /&gt;
Процесс сборки нестандартного ядра может варьироваться от дистрибутива к дистрибутиву. Мы рассмотрим наиболее общие случаи.&lt;br /&gt;
&lt;br /&gt;
==== Gentoo Linux ====&lt;br /&gt;
Для ядер 2.6.24:&lt;br /&gt;
&amp;lt;pre&amp;gt;SRC_URI=&amp;quot;${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI} http://chichkin_i.zelnet.ru/namesys/reiser4-for-${PV}${R4V}.patch.gz&amp;quot; &lt;br /&gt;
UNIPATCH_LIST=&amp;quot;${DISTDIR}/reiser4-for-${PV}${R4V}.patch.gz&amp;quot; &amp;lt;/pre&amp;gt;&lt;br /&gt;
Потом — просто emerge новый gentoo-sources и genkernel. Проверялось на 2.6.24-r8.&lt;br /&gt;
&lt;br /&gt;
В целом — смотрите http://gentoo-wiki.com/HOWTO_Reiser4_With_Gentoo-Sources&lt;br /&gt;
&lt;br /&gt;
==== Обычная сборка и make install ====&lt;br /&gt;
По известным причинам, не очень просто найти дистрибутив, в котором имеется поддержка Reiser4 «из коробки». Поэтому соберем ядро руками. Нам понадобятся исходники ядра и соответствующий им патч reiser4.&lt;br /&gt;
&lt;br /&gt;
За основу статьи взято ванильное ядро 2.6.24 с kernel.org, однако вы можете поэкспериментировать и с любым другим, так как процесс интеграции абсолютно индентичен. Для сборки ядра вам понадобятся gcc, glibc-devel. Опционально glib2, glib2-devel, gcc-c++, libstdc++, libstdc++-devel, qt3-devel.&lt;br /&gt;
&lt;br /&gt;
# Для ядерной инженерии нам понадобятся права администратора. Станьте root:&amp;lt;pre&amp;gt;su -&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Распакуйте исходники ядра linux-2.6.24.tar.bz2 в /usr/src/.&lt;br /&gt;
# &amp;lt;pre&amp;gt;cd /usr/src/linux-2.6.24&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Reiser4-патч мы возьмем [http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/ на kernel.org]. Если вы используете ядро 2.6.25, то &amp;lt;pre&amp;gt;wget -c http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.25.patch.bz2&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Патчим ядро… &amp;lt;pre&amp;gt;zcat reiser4-for-2.6.24.patch.gz | patch -p1&amp;lt;/pre&amp;gt; Теперь в директории fs есть reiser4. Для субъективного сравнения сложности и «фичастости» новой файловой системы, вы можете сравнить свежепоявившуюся fs/reiser4 например c fs/ext4 или любой другой.&lt;br /&gt;
# Теперь нужно включить поддержку reiser4 в конфигураторе ядра. Сделаем это: &amp;lt;pre&amp;gt;make xconfig&amp;lt;/pre&amp;gt; Должно появиться окно конфигуратора (qt3). Нажмите Ctrl+F, введите ключ для поиска reiser4, и…&lt;br /&gt;
## Поставьте галочку, если вы хотите вкомпилировать поддержку reiser4 в ядро. Тогда вы сможете перевести корневой раздел под эту ФС и загружаться с него.&lt;br /&gt;
## Поставьте точку в том случае, если вам необходима просто поддержка reiser4. Модуль ФС будет находиться вне ядра и загружаться по требованию, то есть при монтировании разделов Reiser4. В этом случае Вы не сможете загружаться с reiser4 раздела, не добавив этот модуль в initrd.&lt;br /&gt;
# Добавьте суфикс версии ядра в ''General Setup'' -&amp;gt; ''Local Version''. Сделайте необходимые вам настройки конфигурации. Сохраните изменения и закройте конфигуратор.&lt;br /&gt;
# Соберите и установите ядро &amp;lt;pre&amp;gt;make; make modules_install install clean&amp;lt;/pre&amp;gt; Теперь у вас есть ядро, способное полноценно работать с Reiser4. Вы можете загрузится в него из вашего загрузчика.&lt;br /&gt;
&lt;br /&gt;
=== Создаем раздел reiser4 ===&lt;br /&gt;
Исходим из того, что у нас есть на вооружении набор reiser4progs. Теперь нам необходимо перевести интересующие нас разделы на Reiser4.&lt;br /&gt;
&lt;br /&gt;
Вам следует постоянно держать в голове тот факт, что простая конверсия из ext3/XFS/etc в Reiser4 невозможна. Под переводом раздела на Reiser4 мы будем подразумевать:&lt;br /&gt;
# архивацию данных с конвертируемого раздела на иной (вспомогательный) раздел или устройство;&lt;br /&gt;
# форматирование существующего раздела под reiser4;&lt;br /&gt;
# восстановление данных из архивной копии на новый раздел.&lt;br /&gt;
&lt;br /&gt;
Далее будет рассмотрен следующий пример:&lt;br /&gt;
* Мы переведем на reiser4 уже существующий, заполненный данными /home раздел.&lt;br /&gt;
* Нам очень понравилось, и мы хотим корневой раздел / на Reiser4.&lt;br /&gt;
* Во всех пунктах (для полноты самоутверждения) мы хотим максимальную производительность и превосходство над другими ФС на дисковых операциях.&lt;br /&gt;
&lt;br /&gt;
Если у вас LVM или EVMS, то шаги работы будут аналогичны, однако помните, что с изменением размеров reiser4 имеются некоторые серьезные проблемы.&lt;br /&gt;
&lt;br /&gt;
==== Максимальная производительность ====&lt;br /&gt;
Reiser4 даёт нам превосходство на дисковых операциях ввода‐вывода даже на параметрах по умолчанию. Однако, нам необходимо нечто большее. Мы уже посмотрели [http://web.archive.org/web/20070620025139/linuxhelp.150m.com/resources/fs-benchmarks.htm сравнительный тест] и сделали вывод, что нам нужнен раздел с прозрачным сжатием. Для этого укажем в опциях mkfs необходимость подключения плагина для прозрачного шифрования и компрессии файлов:&lt;br /&gt;
&amp;lt;pre&amp;gt;mkfs.reiser4 -o create=ccreg40,...&amp;lt;/pre&amp;gt;&lt;br /&gt;
Иными словами, параметр ''create=ccreg40'' (CryptoCompress REGular file plugin) переопределяет createfile-плагин ''reg40'' (unix-file plugin), позволяя тем самым задействовать дополнительные файловые плагины. Мы рассмотрим далее прозрачную компрессию.&lt;br /&gt;
&lt;br /&gt;
Доступно 2 алгоритма сжатия: '''gzip''' и '''lzo'''. Gzip в сравнении с lzo дает несколько большее сжатие, но и немного меньшую скорость работы.&lt;br /&gt;
Когда Вы определитесь, какое сжатие вам нужно, создавайте раздел:&lt;br /&gt;
* создание раздела с gzip сжатием: &amp;lt;pre&amp;gt;mkfs.reiser4 -o create=ccreg40,compress=gzip1 ...&amp;lt;/pre&amp;gt;&lt;br /&gt;
* создание раздела с lzo сжатием: &amp;lt;pre&amp;gt;mkfs.reiser4 -o create=ccreg40,compress=lzo1 ...&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Переводим обычный раздел на Reiser4 ====&lt;br /&gt;
Итак, у нас есть раздел /dev/sda7, что внутри него — нам не жалко. Форматируем в reiser4 со сжатием gzip:&lt;br /&gt;
&amp;lt;pre&amp;gt;mkfs.reiser4 -o create=ccreg40,compress=gzip1 /dev/sda7&amp;lt;/pre&amp;gt;&lt;br /&gt;
''Заметьте! Компрессия и параметры раздела задаются на этапе форматирования и являются константами в течение жизненного цикла раздела. Если вам нужет lzo, впишите compress=lzo1. Если вы считаете, что сжатие нецелесообразно (фильмы, музыка, картинки, архивы), уберите все опции.''&lt;br /&gt;
&lt;br /&gt;
Если собранное Вами ядро с поддержкой Reiser4 является текущим загруженным, мы сможем примонтировать новый раздел:&lt;br /&gt;
&amp;lt;pre&amp;gt;mount /dev/sda7 /mnt/foo&amp;lt;/pre&amp;gt;&lt;br /&gt;
Если вы хотите, чтобы данные раздел монтировался автоматически при загрузке, добавьте следующую строку в /etc/fstab:&lt;br /&gt;
&amp;lt;pre&amp;gt;/dev/sda7   /home   reiser4  noatime   0 0&amp;lt;/pre&amp;gt;&lt;br /&gt;
Параметр noatime указывает на «не сохранение» времени последнего доступа к объекту ФС. Также здесь можно оперировать параметрами nomtime (модификация объекта) и noctime (модификация метаданных).&lt;br /&gt;
&lt;br /&gt;
==== Конверсия корневого раздела ====&lt;br /&gt;
Прежде всего следует осознать, что корневой раздел отличается от всех остальных тем, что он играет ведущую роль в загрузке Linux. Поэтому нам следует задаться вопросом: а сможем ли мы загрузить с него ядро? С помощью GRUB — нет, потому что в GRUB отсутствует поддержка Reiser4, а тем более сжатой. ''Патч для GRUB с официального FTP-сервера несовместим с новейшими версиями libaal и reiser4progs, а также ломает поддержку в GRUB файловых систем, отличных от Reiser4.'' LILO работает с несжатой файловой системой Reiser4 «из коробки».&lt;br /&gt;
&lt;br /&gt;
Итак, при использовании GRUB или сжатия вы должны вынести /boot в отдельный раздел (с файловой системой, поддерживаемой GRUB, например ext3). Допустим /boot будет /dev/sda1 (начало диска — это хороший тон), добавьте его в /etc/fstab (чтобы он монтировался в /boot) и внести правки в /boot/grub/menu.lst. Если корневая файловая система на LVM или EVMS, то, скорее всего, /boot уже является отдельным разделом. Мы не будем рассматривать этот процесс подробно внутри этой статьи.&lt;br /&gt;
&lt;br /&gt;
Остальная часть конверсии ФС происходит аналогично конверсии обычного раздела, о которой мы говорили пунктом выше.&lt;br /&gt;
&lt;br /&gt;
== С моей файловой системой что-то не так… ==&lt;br /&gt;
Ошибки возникают в любом продукте и никто от них не застрахован. Мы же используем экспериментальный продукт и риски возникновения неполадок выше. Тем не менее 2 моих года эксплуатации reiser4 на ноутбуке не прошли даром. При загрузке системы никакой существенной проверки не происходит и приходиться обычно полировать ФС вручную.&lt;br /&gt;
&lt;br /&gt;
=== fsck.reiser4 ===&lt;br /&gt;
Ремонт файловой системы осуществляется уже знакомой нам fsck.reiser4. Если возможно, используйте статически скомпилированную версию (о том, как её собрать мы говорили выше)&lt;br /&gt;
&lt;br /&gt;
Работает она так:&lt;br /&gt;
&amp;lt;pre&amp;gt;fsck.reiser4 [option] /dev/sda7&amp;lt;/pre&amp;gt;&lt;br /&gt;
Однако запущенная без параметров она не производит никакого ремонта: только проверка на ошибки без исправления. Основные параметры, с которыми вам придется работать:&lt;br /&gt;
* &amp;lt;tt&amp;gt;--fix&amp;lt;/tt&amp;gt; — это простой ремонт мелких нарушений. В случае если вы используете сжатие, вы получите некоторый выигрыш в пространстве раздела в следствие несовершенства некоторых алгоритмов. Обычно этого вида проверки бывает достаточно.&lt;br /&gt;
* &amp;lt;tt&amp;gt;--build-fs&amp;lt;/tt&amp;gt; — ремонт + перестроение танцующих деревьев. Бывает, что &amp;lt;tt&amp;gt;--fix&amp;lt;/tt&amp;gt; выдает невозможность ремонта и приходиться прибегать к этой, более емкой, процедуре.&lt;br /&gt;
&lt;br /&gt;
=== Основные советы по уходу за ФС ===&lt;br /&gt;
* Плановую проверку лучше производить каждые пару месяцев. Как бы это странно не звучало, но во время исправления ошибок '''все''' остальные reiser4‐разделы должны быть отмонтированы. Почему — не знаю, но знаю, что если хоть один раздел примонтирован, а второй проверяется, то первый получает некоторые повреждения. Вроде бы связи никакой, но вот так получается.&lt;br /&gt;
* Следует держать в мозгу тот факт, что Reiser4 довольно стабильна и бессмертна, и даже при серьёзных повреждениях деревьев или хвоста мы всё равно сможем её поднять на ноги и поставить в строй. Не надо бояться делать &amp;lt;tt&amp;gt;--build-fs&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Appendix ==&lt;br /&gt;
Некоторые размышления по данной теме вынесены в этот раздел.&lt;br /&gt;
&lt;br /&gt;
=== Транзакционность и синхронизации ФС ===&lt;br /&gt;
Одним из ключевых понятий Reiser4 является '''транзакция''': грубо говоря, одна атомарная транзакция — это пачка операций с ФС. Транзакционная запись повышает сохранность данных, однако всегда есть и обратная сторона медали: при частых, искусственно вызванных [[fsync()]], мы получаем огромный оверхэд на дисковых транзакциях, и скорость записи ''многократно'' падает.&lt;br /&gt;
&lt;br /&gt;
Принудительную синхронизацию ФС вызывает множество программ и утилит, начиная от банального статического sync и заканчивая sqlite, встроенного в amarok. Скорее всего под другими ФС этот факт не ощущался настолько сильно и ярко, как под Reiser4. Тем не менее, с этим приходится считаться.&lt;br /&gt;
&lt;br /&gt;
Как с этим бороться? Единственный безотказный способ — запретить принудительный вызов синхронизации ФС. В зависимости от программ, это можно сделать по-разному:&lt;br /&gt;
* Посмотреть в настройках программы. В правильных продуктах (к примеру syslog-ng) всегда можно найти выключатель принудительных синхронизаций.&lt;br /&gt;
* ''Hard-way:'' Внести коррективы в исходники программы и пересобрать её. Но это отнимет у Вас массу времени, а любой хороший программист должен быть ленив, поэтому сразу же перейдем к следующему методу.&lt;br /&gt;
* ''Dirty-way:'' (ОЧЕНЬ поганый способ, использовать в последнюю очередь!)&lt;br /&gt;
# Собрать библиотеку libnosync.so и поместить её в /lib (или /lib64).&lt;br /&gt;
# Затем добавляем принудительную подгрузку этой библиотеки ко всем ''динамическим'' бинарникам: &amp;lt;pre&amp;gt;echo &amp;quot;export LD_PRELOAD='libnosync.so'&amp;quot; &amp;gt;&amp;gt; /etc/profile&amp;lt;/pre&amp;gt; Таким образом при следующем логине любого пользователя к любой запускаемой им программе будет применена попытка перезаписать ''внешние'' вызовы фунций синхронизации на пустышки. К статическим бинарникам (таким как ''sync'' и ''sudo'') это не относится.&lt;br /&gt;
Единственный неприятный минус последнего метода — он выводит из строя работу таких утилит, как ''kdesu'' (KDE3), поэтому этот случай приходится отрабатывать отдельно.&lt;br /&gt;
&lt;br /&gt;
=== Материал для самостоятельного изучения и экспериментов ===&lt;br /&gt;
Основа — утилита &amp;lt;tt&amp;gt;measurefs.reiser4&amp;lt;/tt&amp;gt; из состава пакета &amp;lt;tt&amp;gt;reiser4progs&amp;lt;/tt&amp;gt; (&amp;lt;tt&amp;gt;/usr/sbin/measurefs.reiser4&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;measurefs.reiser4 -h&amp;lt;/tt&amp;gt; — краткая справка по всем опциям команды;&lt;br /&gt;
* &amp;lt;tt&amp;gt;measurefs.reiser4 -p&amp;lt;/tt&amp;gt; — установки по умолчанию для «mkfs.reiser4»;&lt;br /&gt;
* &amp;lt;tt&amp;gt;measurefs.reiser4 -l&amp;lt;/tt&amp;gt; — список всех доступных опций/плагинов — дерзайте.&lt;br /&gt;
&lt;br /&gt;
Опция «-o» (override) может быть передана только команде &amp;lt;tt&amp;gt;mkfs.reiser4&amp;lt;/tt&amp;gt;. Другими словами, «поправить» параметры, использованные при создании партиции reiser4, можно только повторным форматированием.&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [http://sourceforge.net/projects/reiser4/files/?source=navbar Патчи для ядер 2.6.32+]&lt;br /&gt;
* [http://web.archive.org/web/20070620024815/http://linuxhelp.150m.com/ Много статей на эту тему (webarchive/2007)]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Reiser4 Reiser4 в википедии]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Hans_reiser Тяжелая судьба Ганса Рейзера]&lt;br /&gt;
* [http://linuxhelp.150m.com/politics/ReiserTrialSummaryAnalysis.htm Текущий ход судебного дела Ганса Рейзера (блог)]&lt;br /&gt;
* [http://www.namesys.com/ Namesys.com]&lt;br /&gt;
* [http://chichkin_i.zelnet.ru/namesys/ Namesys things — Утилиты и патчи для Reiser4]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Файловые системы]]&lt;/div&gt;</summary>
		<author><name>lor&gt;Cetjs2</name></author>
	</entry>
</feed>