XFS

Материал из sysadm
Перейти к навигации Перейти к поиску

Особенности

  • высокая производительность при работе с большими файлами
    • есть возможность для оптимизации под геометрию RAID
    • есть возможность оптимизации выделения места экстентами (непрерывная последовательность блоков)
  • нет возможности уменьшения размера файловой системы

Форматирование

# по умолчанию, bsize=4K
mkfs.xfs /path/to/dev

# xfs поддерживает bsize от 512b до 64K
# при bsize менее 1024b не поддерживается CRC
# форматирование с указанием bsize
mkfs.xfs -b size=64K /path/to/dev

# утилита blkid отображает параметр BLOCK_SIZE который соответствует размеру сектора блочного устройства sectsz, но не блока файловой системы bsize

# форматирование с оптимизацией под LVM RAID (не проверено)
# размер stripe unit = 32k, количество stripe unit в страйпе = 6
# ??? по умолчанию параметры LVM RAID не определяются автоматом?
mkfs.xfs -d su=32k,sw=6 /dev/vg0/lv1

Информация о файловой системе

xfs_info

# sectsz - размер блока блочного устройства
# bsize  - размер блока файловой системы
# extsz  - ???

# crc=1    - включена CRC проверка
# sparse=1 - включена поддержка sparse

Изменение размера файловой системы

# уменьшение размера невозможно

# увеличение размера
xfs_growfs -d /mount/point

Изменение параметров файловой системы

xfs_admin

Дефрагментация

  • дефрагментация имеет смысл только для HDD, на SSD она не повышает производительность и приводит к лишнему износу устройства
  • архитектура XFS позволяет избегать лишней фрагментации и в большинстве случаев либо не нужна, либо нужна не часто
  • в XFS фрагментация может возникать если файлы часто создаются и удаляются
# опретеделение текущего уровня фрагментации
xfs_db -c frag -r /dev/sdX#

# дефрагментация
xfs_fsr /path/to/dev
xfs_fsr /mount/point
xfs_fsr /path/to/file

# дефрагментация всех устройств перечисленных в /etc/mtab
xfs_fsr

Backup и Restore

# дамп файловой системы
xfsdump -f /path/to/file.tar /path/to/mountpoint

# восстановление файловой системы
# предварительно необходимо создать и смонтировать новую файловую систему
xfsrestore -f /path/to/backup.tar /path/to/mountpoint

# восстановление в интерактивном режиме с возможностью выбора отдельных каталогов для восстановления
xfsrestore -i -f /path/to/backup.tar

# похоже эти утилиты просто выполняют tar (предположение)