fstab: настройка автомонтирования разделов в Linux | Глоссарий FREEHOSTING

fstab

File Systems Table
fstab — fstab — конфигурационный файл /etc/fstab в Linux, где описаны точки монтирования файловых систем и опции, применяемые при загрузке системы или вызове команды mount -a.

Определение простыми словами

Файл /etc/fstab — таблица постоянных монтирований. Ядро читает её при старте и подключает диски, разделы, NFS-шары и swap по правилам из строк. Каждая строка описывает одно устройство: что монтировать, куда, какого типа, с какими опциями и в каком порядке проверять при загрузке.

Без fstab пришлось бы каждый раз вручную выполнять mount для всех разделов после перезагрузки. Связан с swap, сетевыми протоколами NFS и SMB, шифрованием LUKS и автомонтированием через systemd.

Сравнение

Поле Назначение Пример
device Что монтируем UUID=abc-123 или /dev/sda1
mountpoint Куда /mnt/data
type Файловая система ext4, xfs, nfs
options Параметры defaults,noatime
dump Резерв 0
pass Порядок fsck 1 для корня, 2 для остальных

Кейсы использования

  • Подключение второго диска к VPS — добавляют строку с UUID и опцией nofail.
  • Монтирование сетевой шары NFS с автоперемонтированием при разрыве через _netdev,x-systemd.automount.
  • Активация swap-файла объёмом 4 ГБ для VPS с малым ОЗУ.
  • Негативный сценарий: ошибка в строке fstab без nofail блокирует загрузку — сервер уходит в emergency mode, доступ только через KVM-консоль или rescue-режим хостера.

Технические детали

blkid /dev/sdb1
echo "UUID=$(blkid -s UUID -o value /dev/sdb1) /mnt/data ext4 defaults,noatime,nofail 0 2" | sudo tee -a /etc/fstab
sudo systemctl daemon-reload
sudo mount -a
findmnt --verify --verbose

UUID лучше пути /dev/sdX — буквы дисков меняются при добавлении контроллеров. Опция noatime экономит запись и продлевает ресурс ext4 на SSD. Команда findmnt --verify проверяет fstab на ошибки до перезагрузки.

Частые вопросы

Что делать, если сервер не загружается из-за ошибки в fstab?

Загрузитесь в rescue-режим хостера, отредактируйте /etc/fstab, закомментируйте проблемную строку, перезагрузитесь и исправьте опции с nofail.

UUID или /dev/sdX в fstab?

Только UUID или метку. Имена sdX зависят от порядка обнаружения и могут поменяться при добавлении дисков, что сломает монтирование.

Как протестировать fstab без перезагрузки?

Команда findmnt --verify проверит синтаксис, mount -a применит новые строки, а systemctl daemon-reload подхватит изменения для systemd-юнитов.