Джефри Робсон (Jeff Roberson), автор планировщика ULE и один из ключевых разработчиков FreeBSD, произвел (http://jeffr-tech.livejournal.com/22716.html) улучшения в работе механизма Soft Updates файловой системы UFS. В частности, был добавлен механизм журналирования метаданных, изменяемых при работе Soft Updates. Данное нововведение позволит отказаться от необходимости запуска fsck после "грязного" размонтирования файловой системы. Новая система журналирования позволяет достичь очень высокой скорости восстановления состояния файловой системы при очень малом объеме журнала.
Данная работа была выполнена по заказу компаний iXsystems, Yahoo! и Juniper networks. В ближайшее время код будет доступен пользователям ветки FreeBSD 9.0-CURRENT. Ранее журналирование для FreeBSD активировалось при помощи GEOM-класса gjournal и было доступно только на уровне GEOM провайдеров.URL: http://jeffr-tech.livejournal.com/22716.html
Новость: http://www.opennet.me/opennews/art.shtml?num=24613
И чем плохо журналирование через геом? Например так:
az@az:~$ df
Filesystem Size Used Avail Capacity Mounted on
/dev/ada0s3a.eli.journal 141G 129G 1.3G 99% /
devfs 1.0K 1.0K 0B 100% /dev
tmpfs 488M 36K 488M 0% /tmp
devfs 1.0K 1.0K 0B 100% /var/named/dev
Оно более дорогое, т.к. более general'ное решение, я бы так сказал...
Да и не нужно, ZFS ведь есть.
Рассуждения "грамотного" специалиста.. для того чтобы в частности системные диски были на журналируемой UFS.
Системные диски на ZFS религия не позволяет сделать?
Он тормозит. Пусть тормозит дальше.Но мы-то знаем, что во FreeBSD v8.0 добавлена поддержка загрузки с ZFS. Так что все хитровывернутые трюки с выносом /boot на отдельный UFS-раздел ушли в прошлое...
Какие трюки, вы о чем? /boot никогда не надо было выносить в отдельный раздел, не тормозите. Вероятно путаете со /stand в HP-UX, тот да, на отдельном HFS-разделе.
http://wiki.freebsd.org/ZFSOnRoot - данное руководство существует ещё с момента внесения ZFS v6 в дерево исходных кодов FreeBSD (а тогда ещё не существовало способов загрузиться с ZFS, не используя при этом UFS для /boot). Так что в данном случае вы ошибаетесь утверждая что "... /boot никогда не надо было выносить в отдельный раздел".
Да причем здесь ZFS?!Я речь веду о UFS и системных разделах на них.
"Папа ваш студебеккер..знатоки"
а по вашему системный раздел на ZFS это не труЪ?
Ну и нафига мне ставить ZFS если у меня в тазике 2 харда по 80Гб каждый? Не городите ерунды. :)
ну ведь не по 800Мб? Или вы думаете что она делалась только для >2Тб ?
>Ну и нафига мне ставить ZFS если у меня в тазике 2
>харда по 80Гб каждый? Не городите ерунды. :)Контроль целостности, cжатие, снапшоты, копии, не?
а нормальные квоты, как в ufs есть в zfs? некоторым это как-бы принципиально.
Ммм, вроде как нормальных квот как раз в UFS и нету, к примеру квоты > 2TB не поддерживаютя. Или я не прав? В чем нормальность заключается?
не так давно уже добавили 64bit квоты в UFS.
поправка: в svn-src-projects
>Ммм, вроде как нормальных квот как раз в UFS и нету, к примеру квоты > 2TB не поддерживаютя. Или я не прав? В чем нормальность заключается?нормальность в том, что куча написанного софта умеет работать только с quota, repquota, quotaon, quotaoff, quotacheck, но не умеет работать с zfs create и плодить отдельные фс под каждого юзера. я даже боюсь себе представить как смотреть в df при наличии 1000 юзеров и квот сделанных через zfs в таком виде, в каком они там есть сейчас.
>а нормальные квоты, как в ufs есть в zfs? некоторым это как-бы
>принципиально.Есть, но не во FreeBSD
>>а нормальные квоты, как в ufs есть в zfs? некоторым это как-бы
>>принципиально.
>
>Есть, но не во FreeBSDНе надо гнать. Есть квоты и работают.
# zfs get all hptank/usr/home
NAME PROPERTY VALUE SOURCE
hptank/usr/home type filesystem -
hptank/usr/home creation пт окт 16 19:01 2009 -
hptank/usr/home used 226M -
hptank/usr/home available 99,8G -
hptank/usr/home referenced 226M -
hptank/usr/home compressratio 1.03x -
hptank/usr/home mounted yes -
hptank/usr/home quota 100G local^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hptank/usr/home reservation none default
hptank/usr/home recordsize 128K default
hptank/usr/home mountpoint /usr/home local
hptank/usr/home sharenfs off default
hptank/usr/home checksum on default
hptank/usr/home compression on inherited from hptank
hptank/usr/home atime off inherited from hptank
hptank/usr/home devices on default
hptank/usr/home exec on default
hptank/usr/home setuid off local
hptank/usr/home readonly off default
hptank/usr/home jailed off default
hptank/usr/home snapdir visible inherited from hptank
hptank/usr/home aclmode groupmask default
hptank/usr/home aclinherit restricted default
hptank/usr/home canmount on default
hptank/usr/home shareiscsi off default
hptank/usr/home xattr off temporary
hptank/usr/home copies 1 default
hptank/usr/home version 3 -
hptank/usr/home utf8only off -
hptank/usr/home normalization none -
hptank/usr/home casesensitivity sensitive -
hptank/usr/home vscan off default
hptank/usr/home nbmand off default
hptank/usr/home sharesmb off default
hptank/usr/home refquota none default
hptank/usr/home refreservation none default
hptank/usr/home primarycache all default
hptank/usr/home secondarycache all default
hptank/usr/home usedbysnapshots 50,5K -
hptank/usr/home usedbydataset 226M -
hptank/usr/home usedbychildren 121K -
hptank/usr/home usedbyrefreservation 0 -
> Не надо гнать. Есть квоты и работают.А чего ж еще и refquota не подчеркнули? В следующий раз, перед тем как писать, сделайте паузу и сосчитайте до десяти.
Вопрос бы про другие квоты - для пользователей и групп, а на для файловых систем.
> Есть, но не во FreeBSDконечно, правильнее было бы написать так: есть, но во FreeBSD пока нет
Все только забывают, что нормальная раюота с zfs начинается с amd64 и 1 гигом памяти...
> Все только забывают, что нормальная раюота с zfs начинается с amd64
>и 1 гигом памяти...в тоже время, никто не заставляет использовать zfs на накопителях размером 2Гб (не терабайт). Если же хранилище размером >2Тб, то что мешает добавить памяти?
http://wiki.freebsd.org/ZFSTuningGuide
Жаль только что в 8-ю ветку не сделали поддержку разметки дисков из инсталлера в ZFS из коробки. Всетаки пора уже отказываться от UFS.
ZFS все же экспериментальная система, да и версия zpool далеко не последняя. Отказываться от стабильной ФС в пользу девелоперской, которая находится в активной разработке довольно экстремально
>ZFS все же экспериментальная система, да и версия zpool далеко не последняя.
>Отказываться от стабильной ФС в пользу девелоперской, которая находится в активной
>разработке довольно экстремально+1
>Отказываться от стабильной ФС в пользу девелоперской, которая находится в активной
>разработке довольно экстремальноЯ бы даже сказал, стрёмно :)
Почитать onnv-notify, так волосы на спине дыбом встают
И не нужно извращаться с geom, хотя у меня все серваки на gmirror + gjournal уже который год нормально работают. Эх, жаль 8-ка разочеровала меня, все чего ждал так и не появилось, поэтому с 7.2 пока лениво обновляться.
>И не нужно извращаться с geom, хотя у меня все серваки на
>gmirror + gjournal уже который год нормально работают. Эх, жаль 8-ка
>разочеровала меня, все чего ждал так и не появилось, поэтому с
>7.2 пока лениво обновляться.расскажите как вы их скрещивали? у меня на 7.2 amd64 бывают падения с пометкой gjournal
делаю примерно так:gmirror label -b round-robin gm0s1 ad1s1 ad2s1
bsdlabel -w /dev/mirror/gm0s1
bsdlabel -e /dev/mirror/gm0s1> 8 partitions:
> # size offset fstype [fsize bsize bps/cpg]
> d: * 16 4.2BSD
> c: 1173930 0 unused 0 0 # "raw" part, don't editnewfs -J -U -O2 /dev/mirror/gm0s1d
монтирую с async
>newfs -J -U -O2 /dev/mirror/gm0s1dКруто! Журналирование (-J) и Soft Updates (-U) в одном флаконе!
Вы уж определитесь, что вам нужно. :))(Оно вместе не должно работать)
>>newfs -J -U -O2 /dev/mirror/gm0s1d
>
>Круто! Журналирование (-J) и Soft Updates (-U) в одном флаконе!
>Вы уж определитесь, что вам нужно. :))
>
>(Оно вместе не должно работать)действительно, благодарю за тычек носом, буду исправлять...
> расскажите как вы их скрещивали?Я скрешивал как написано в man'е, никаких падений не было. Вы с -J -U отожгли, да.
>Я скрешивал как написано в man'е, никаких падений не было.а как называется ман по скрещиванию gmirror && gjournal?
>Вы с -J -U отожгли, да.
да, с этим я хорошо промахнулся...
man gmirror, man gjournal. Скрещивание заключается только в использовании одного поверх другого и при желании выключении синхронизации. Вы думали там rocket science?
>ZFS все же экспериментальная система, да и версия zpool далеко не последняя.
>Отказываться от стабильной ФС в пользу девелоперской, которая находится в активной
>разработке довольно экстремальноЯ удивляюсь почему у вас компьютеры на транзисторах не экспериментальные. Сидите на лампах себе.
Не знаю у кого как, а у меня FreeBSD крутится на Целеронах 300-х со 128 Мб памяти и винчами 2-6 Гб. И такие рутеры работают "как часы" в стиле "поставил и забыл" годами. Думаю не у меня одного. Так что возможность ставить на традиционную ФС нужна.
Надо просто полностью пересмотреть структуру релиза. Разделенные disk1 и livefs, а также само наличие sysinstall - это огромный минус.Директория 8.0-RELEASE на диске от 8.0 релиза i386 занимает 290M. Накинем сотню для amd64. Скинем обратно, пересев с gzip на bzip2. Сама система с порезаннымм ненужностями влезет метров в 200-300. Остальное можно заполнить пакетами для диагностики и восстановления системы. Итого - с одного диска можно и загрузиться+проверить совместимость, и установить+настроить систему. Причем не быть ограниченным возможностями yблюдского sysinstall - разбивать диски как хочется и в любые ФС. Если немного поколдовать с geom_uzip, можно грузить livefs и ставить систему вообще из одного места.
Эээ?.. А вместо сисинстала что? Ставить систему в стиле Генту? Оно, конечно, очень гибко, но, скажем так, несколько нудно, не всегда в продакшене это допустимо.
>Эээ?.. А вместо сисинстала что? Ставить систему в стиле Генту? Оно, конечно,
>очень гибко, но, скажем так, несколько нудно, не всегда в продакшене
>это допустимо.Могу предположить, что человеку хочется чего-то, что бы умело задействовать geom ещё на этапе разбиения на разделы.
Я бы, кстати тоже не отказался бы от gmirror, gvinum и gjournal на этапе установки.
>Могу предположить, что человеку хочется чего-тоДаже если мне не хочется "чего-то", я предпочту не использовать sysinstall. Он просто банально убог и неудобен.
>Эээ?.. А вместо сисинстала что? Ставить систему в стиле Генту? Оно, конечно,
>очень гибко, но, скажем так, несколько нудноОчередноq "профи", который все с ног на голову поставил? В реальном мире нудно - это по кривым менюшкам лазить и потом думать, не забыл ли куда ткнуть. А тут вообще можно сделать
# ssh mybox 'cat installscript' | sh
и забыть о тыканье как таковом.
>не всегда в продакшене это допустимо.
Большего бреда не слышал. У вас продакш заключается в использовании сисинсталла? Или он накладывает жесткие ограничения на метод установки - надо использовать самый неудобный, медленный и подверженный ошибкам? В сад.
Эм, а этот журнал тоже можно использовать на gmirror с выключенной синхронизацией?
реквестирую бэкпорт в 8 ветку
Код может вообще не откроют, остынь :) Нет его еще нигде, ждем.
А вот троллить не надо. В новости сказано же что в курент добавят.
>А вот троллить не надо. В новости сказано же что в курент
>добавят.На заборе тоже много чего пишут.
Многа букв у него в блоге. Хочется обычной лаконичной заметки со списком различий, чем лучше/хуже и графиками.
Никакой "необходимости" нет же. Максимум, что может произойти если не запускать его (при soft update'ах) - это то что несколько килобайт/мегабайт "потеряется" на диске. Можно раз в полгода запускать вообще.