User Tools

Site Tools


huy:ufs_gjournal

Требуется создать журналируемую файловую систему UFS2 объемом более 1 Гб на FreeBSD 6.1-STABLE.

Для начала необходимо обновить дерево исходных текстов (/usr/src) до стабильной версии. После чего переходим в каталог /usr/src и создаем там необходимые директории:

#cd /usr/src #mkdir {sbin/geom/class/journal,sys/geom/journal,sys/modules/geom/geom_journal}

Теперь качаем сам патч:

#fetch http://people.freebsd.org/~pjd/patches/gjournal6.patch

Накладываем его на исходные тексты:

#patch < gjournal6.patch

Далее есть два пути - пересобрать весь “мир” (см. файл /usr/src/UPDATING), либо пересобрать только то, что было модифицировано. Предпочтительней первый путь, однако можно обойтись и без него. Для этого пересоберите следующие утилиты (зайдя в нижеперечисленные каталоги и выполнив в каждом из них 'make; make install; make clean'):

/usr/src/include/ /usr/src/sbin/geom/class/ /usr/src/sbin/mount/

После чего добавляем в конфиг ядра строчку:

options UFS_GJOURNAL

Компилируем ядро, ставим, перезагружаемся…

После перезагрузки подгружаем необходимый модуль командой

#gjournal load

либо:

#kldload geom_journal.ko

(команды эквивалентны)

Далее нам необходимо размонтировать раздел, на который мы собираемся поставить журнал. Пусть это будет '/dev/ad0s3d' и точка монтирования '/mnt/work':

#umount -f /mnt/work

Теперь собстенно “прикручиваем” журнал:

#gjournal label /dev/ad0s3d

Монтируем командой:

#mount -o async,gjournal /dev/ad0s3.journal /mnt/work

NB! префикс '.journal' появляется при наличии в памяти модуля geom_journal.ko. Поэтому, если вы захотите чтобы система автоматически монтировала раздел с поддержкой журнала: пропишите в файл /boot/loader.conf строчку:

geom_journal_load=“YES”

и соответствующую запись в fstab. Для данного примера она будет выглядеть так:

/dev/ad0s3.journal /mnt/work ufs rw,async,gjournal 2 2

Все, готово!

huy/ufs_gjournal.txt · Last modified: 2006/07/17 08:44 (external edit)