XFS

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page XFS and the translation is 100% complete.

XFS — это высокопроизводительная журналируемая файловая система. Она поддерживает ACL (POSIX) при работе в Linux.

XFS имеет репутацию надежной файловой системы, благодаря которой в ядре Linux был создан большой тестовый набор xfstests, используемый ныне для выявления регрессий в работе различных файловых систем.

Установка

Ядро

ЯДРО Включение поддержки XFS (CONFIG_XFS_FS:)
File systems  --->
   <*> XFS filesystem support

Необязательно:

ЯДРО Включение необязательных возможностей XFS
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, предназначенная для реализации расширенных возможностей, в то же время уделяя особое внимание отказоустойчивости, самовосстановлению и простоте администрирования.

Ссылки