XFS
XFS — это высокопроизводительная журналируемая файловая система. Она поддерживает ACL (POSIX) при работе в Linux.
XFS имеет репутацию надежной файловой системы, благодаря которой в ядре Linux был создан большой тестовый набор xfstests, используемый ныне для выявления регрессий в работе различных файловых систем.
Установка
Ядро
File systems --->
<*> XFS filesystem support
Необязательно:
File systems --->
[*] XFS Quota support
[*] XFS POSIX ACL support
[*] XFS Realtime subvolume support
[ ] XFS Verbose Warnings
[ ] XFS Debugging support
Установка
Необходимо установить пакет sys-fs/xfsprogs для пользовательских утилит XFS:
root #
emerge --ask sys-fs/xfsprogs
Использование
Монтирование файловой системы XFS выполняется командой mount.
Создание файловой системы XFS выполняется с помощью mkfs.xfs из xfsprogs:
root #
mkfs.xfs -L 'label'
Метка не является обязательной. Дальнейшая настройка при создании может быть интересна для использования в качестве RAID, многотерабайтных дисков и ведения журнала для жесткого диска на отдельном твердотельном накопителе.
XFS поддерживает discards для твердотельных накопителей в /etc/fstab.
Техобслуживание
Поддержка временных меток больше 2038 года (bigtime)
Старые разделы (созданные до xfsprogs-5.15) не имеют включённого по умолчанию флага bigtime. Монтирование подобных разделов приводит к следующим предупреждениям:
root #
dmesg
... [ 4.036258] xfs filesystem being mounted at /home supports timestamps until 2038 (0x7fffffff) ...
Чтобы проверить текущую версию xfsprogs, запустите mkfs.xfs -V. На своевременно обновляемых системах Gentoo этого не нужно делать, но при использовании установочных носителей других дистрибутивов с устаревшими утилитами это необходимо проверять.
Код поддержки bigtime был включен по умолчанию в xfsprogs 5.15, так что ручное включение для новых версий больше не обязательно.
Начиная с ядра 5.10, XFS получила поддержку bigtime
для увеличения максимального значения временных меток с 2038 до 2486 года для дискового формата V5[1].
Чтобы включить bigtime
для уже созданной старой ФС, сначала корректно её отмонтируйте. Обновление не запустится, если размонтирование прошло некорректно.
Затем выполните:
root #
xfs_admin -O bigtime=1 /dev/sda1
Замените /dev/sda1 именем устройства.
При использовании XFS на корневом разделе необходим initramfs или иное окружение с нужными утилитами для обновления метаданных.
Использование Dracut initramfs для проведения обновления
Во-первых, для Dracut необходимы дополнительные файлы, включаемые в initramfs для выполнения обновления. Этого можно добиться, либо используя параметр --install
, либо указав в конфигурационном файле параметр install_items
.
root #
dracut --install "/usr/sbin/xfs_admin /usr/bin/expr" ...
Теперь в параметры загрузки ядра можно добавить параметр rd.break=pre-mount
, чтобы остановить загрузку initramfs прямо перед тем, как смонтировать корневую файловую систему. Этот параметр должен быть временным, и после обновления его следует удалить для последующих корректных перезапусков.
Удаление
Для удаления при следующем запуске:
root #
emerge --ask --depclean --verbose sys-fs/xfsprogs
Смотрите также
- Deduplication — uses the clone mechanism of a copy-on-write or CoW capable filesystem, a feature that allows to share data of copied but identical files
- FAT — файловая система, использовавшаяся в MS-DOS (и последующих версиях Microsoft Windows до NT).
- Ext4 — дисковая файловая система с открытым исходным кодом, и самая последняя версия серии «расширенных файловых систем».
- Btrfs — copy-on-write (CoW, копирование при записи) файловая система для Linux, предназначенная для реализации расширенных возможностей, в то же время уделяя особое внимание отказоустойчивости, самовосстановлению и простоте администрирования.