Как определить, какие файловые системы можно создать в Linux?

«Как определить, какие файловые системы можно создать в Linux?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Linux доступные для создания файловые системы определяются поддержкой ядра. Основные способы проверки:

1. Просмотр списка, поддерживаемого ядром:

cat /proc/filesystems

Вывод показывает файловые системы, встроенные в ядро (nodev — виртуальные, без nodev — для блочных устройств).

2. Проверка загруженных модулей ядра:

lsmod | grep -i fs

Или просмотр доступных модулей в каталоге:

ls /lib/modules/$(uname -r)/kernel/fs/

3. Популярные файловые системы в Linux:

  • Для дисков: ext4 (стандартная), xfs (высокая производительность для больших файлов), btrfs (снапшоты, сжатие).
  • В памяти: tmpfs (для /tmp, /dev/shm), ramfs.
  • Сетевые: nfs, cifs (Samba).

4. Создание файловой системы: Перед созданием убедитесь, что нужный модуль загружен (modprobe <имя_фс>).

# Создание ext4 на разделе /dev/sdb1
mkfs -t ext4 /dev/sdb1

# Для XFS
mkfs.xfs /dev/sdb1

Утилита mkfs является обёрткой для специфичных команд (mkfs.ext4, mkfs.xfs).