**Unix File System (UFS)** — файловая система, созданная для операционных систем семейства BSD и используемая в переработанном и дополненном виде на данный момент как основная в операционных системах-потомках (**FreeBSD, OpenBSD, NetBSD**). Поддержка данной файловой системы имеется также в ядре Linux и операционной системе Solaris. C 5 версии FreeBSD появилась UFS2 большие разделы, фоновая проверка после сбоев, Проигрывала в производительности на IDE жестких дисках. Опция монтирования async решала проблемы с производительностью, но теряла в нажедности. ZFS - используется для работы с мелкими файлами, так же являеся лидером при копирование больших файлов. Для включения асинхронного режима используется опция монтирования async в /etc/fstab SoftUpdates включение tunefs -n enable /home Программа tunefs(8) используется для настройки файловой системы. Эта программа может принимать большое количество параметров, но мы рассмотрим лишь один из них — включение и выключение Soft Updates, что может быть достигнуто следующим образом: # tunefs -n enable /filesystem # tunefs -n disable /filesystem Нельзя изменять файловую систему с помощью tunefs(8) когда она смонтирована. Самое подходящее время для включения "Soft Updates" - перед монтированием разделов, в однопользовательском режиме. Soft Updates существенно увеличивают скорость создания и удаления файлов путём использования кэширования. Мы рекомендуем использовать Soft Updates на всех ваших файловых системах. Однако у Soft Updates есть и обратные стороны: во-первых, Soft Updates гарантирует целостность файловой системы в случае сбоя, но может наблюдаться задержка в несколько секунд (или даже минуту!) перед записью на жесткий диск. Если система зависнет — вы можете потерять больше, чем, если бы вы не включили Soft Updates. Во-вторых, Soft Updates задерживает освобождение блоков файловой системы. Если ваша файловая система заполнена, выполнение значительного обновления, например, make Жесткие диски FreeBSD разбиваются на слайс(нумерация с единицы) - в Linux это называется логическими томами или разделами. fdisk -p /dev/ad0 Слайсы делятя на BSD разделы **inode - информационные узлы** Т.к разделы поделены на логические блоки минимальным размером 512 байт. Система самостоятельно не может знать где лежит какой файл и следовательно для этого нужно использовать индексную таблицу - таблицу индексных дескрипторов. каждая запись в таблице содержит: уникальный номер inode - присваивается каждому файлу или каталогу тип файла - обычный файл, каталог, файл устроиства, pipe, сокет, сслыка. размер файла кол-во ссылок на файл адреса логических блоков число блоков занимаемых файлом атрибуты файла - владелец права, время создания, модификации и тд. монтирование Файловых систем. Монтирование msdos разделов mount_msdosfs /dev/ad4s1 /mnt Eсли система говорить что фс недопкстима то нужно добавить строку msdosfs="YES" в /boot/loader.conf и перезапустить систему Монтирование ntfs Для работы нужно установить драйвер ntfs cd /usr/ports/sysutils/fusefs-ntfs && make install clean далее в /etc/rc.conf прописывается fusefs_enable="YES" /usr/local/etc/rc.d/fusefs start само монтирование осуществляется командой ntfs-3g -o rw locale=ru_RU.UTF-8 /dev/ad4s1 /mnt или mount_ntfs-3g /dev/ad4s1 /mnt GEOM позволяет классам — MBR, BSD labels, и так далее — получить доступ к устройству и управлять им, используя поставщиков GEOM (providers) или специальные файлы устройств, расположенные в каталоге /dev. GEOM поддерживает различные программные конфигурации RAID, и прозрачно предоставляет доступ к дискам системе и системным приложениям. Загрузите модуль geom_stripe.ko: # kldload geom_stripe Убедитесь, что существует подходящая точка монтирования. Если вы планируете сделать логический диск корневым разделом, используйте временную точку монтирования, например /mnt: # mkdir /mnt Определите имена устройств, которые будут объединены в последовательность, и создайте новое устройство для последовательности. Например, чтобы создать дисковую последовательность из двух неиспользуемых и неразмеченных ATA дисков, например /dev/ad2 и /dev/ad3: # gstripe label -v st0 /dev/ada2 /dev/ada3 Metadata value stored on /dev/ad2. Metadata value stored on /dev/ad3. Done. Запишите стандартную метку, также известную как таблица разделов, в новый том, и установите стандартный загрузчик: # bsdlabel -wB /dev/stripe/st0 Теперь в /dev/stripe кроме st0 появились ещё два устройства — st0a и st0c. Теперь создайте файловую систему на устройстве st0a, используя утилиту newfs: # newfs -U /dev/stripe/st0a На экране промелькнет множество цифр, и через несколько секунд процесс будет завершен. Логический диск создан и готов к монтированию. Монтируем mount /dev/stripe/st0a /mnt для автомонтирования при старте # mkdir /stripe # echo "/dev/stripe/st0a /stripe ufs rw 2 2" >> /etc/fstab Загрузка модуля при старте; echo 'geom_stripe_load="YES"' >> /boot/loader.conf Raid1 загрузка модуля gmirror load sysctl.geom.debugflags=16 Далее создаем устройство gm0 которое собственно и буде являться RAID1-массивом и подключаем к нему жесткий диск ad4: gmirror -v -b round-robin gm0 /dev/ad4 Добавляем модуль ядра gmirro в автозагрузку: echo geom_mirror_load=YES >> /boot/loader.conf Добавляем второй диск в массив gmirror insert gm0 /dev/ad6 просмотр статуса gmirror status или gmirror list Замена сбойного диска gmirror forget gm0 gmirror insert gm0 /dev/ad6