Пост

Автоматическое монтирование файловых систем в Linux с помощью /etc/fstab

Шпаргалка по использованию /etc/fstab для автоматического монтирования файловых систем.

Файл /etc/fstab содержит записи о всех файловых системах, которые должны быть смонтированы при загрузке системы. Каждая строка в файле описывает устройство, точку монтирования, тип файловой системы и параметры монтирования.

🔍 Структура записи /etc/fstab

Каждая запись имеет следующие поля (разделяются пробелом или табуляцией):

1
<file system> <mount point> <type> <options> <dump> <pass>

📌 Поле <file system>

Устройство или файловая система для монтирования. Можно использовать путь к устройству, UUID или LABEL.

Примеры:

  • Путь к устройству: /dev/sda1, /dev/nvme0n1p1
  • UUID (уникальный идентификатор): UUID=1234-5678
  • LABEL (метка): LABEL=MyDrive
  • Сетевые ресурсы: //192.168.1.135/share

📌 Поле <mount point>

Точка монтирования. Каталог, в который будет монтироваться файловая система.

📌 Поле <type>

Тип файловой системы, которую нужно монтировать.

Примеры:

  • Локальные диски: ext4, ext3, xfs, btrfs
  • Сетевые файловые системы: nfs, cifs
  • Съёмные носители: vfat, ntfs, exfat
  • Виртуальные файловые системы: tmpfs, proc, sysfs
  • Раздел подкачки: swap
  • Автоматическое определение монтируемой файловой системы: auto

📌 Поле <options>

Параметры монтирования

Параметр Описание
defaults Стандартный набор опций (rw, suid, dev, exec, auto, nouser, async)
auto Файловая система монтируется при загрузке автоматически или после выполнения команды mount -a
noauto Файловая система может быть смонтирована только вручную
exec Это вариант по умолчанию. Она позволяет вам исполнять бинарные файлы на этом разделе диска
noexec Запретить выполнение бинарных файлов
users Разрешить монтирование всем пользователям
nouser Только суперпользователь может монтировать файловую систему. Это также настройка по умолчанию
ro Монтировать в режиме только для чтения
rw Монтировать с правами на запись
sync Все операции ввода/вывода должны выполняться синхронно
async Все операции ввода/вывода должны выполняться асинхронно
noatime Отключить обновление времени доступа к файлам
nodiratime Отключить обновление времени доступа для каталогов
nodev Запрет создания на монтируемой файловой системе файлов устройств (/dev).
Корневой каталог и целевая директория команды chroot всегда должны монтироваться с опцией dev или defaults
uid/gid Устанавливает владельца и группу
nosuid Игнорировать suid и sgid биты
username=имя,password=пароль Для доступа к сетевому ресурсу
size=500M Ограничение размера памяти для tmpfs

📌 Поле <dump> Резервное копирование. Определяет, нужно ли использовать утилиту dump для резервного копирования файловой системы. 0 — нет, 1 — да.

📌 Поле <pass> Порядок проверки файловой системы утилитой fsck при загрузке системы. 0 — не проверять, 1 — используется для корневой файловой системы / (только одна запись должна иметь 1), 2 — для остальных файловых систем, которые проверяются после корневой.

✏️ Примеры монтирования

🔷 Монтирование физических / виртуальных устройств и разделов

1
2
3
4
5
UUID=1234-5678               /                    ext4     defaults                 1      1
/dev/sda2                    /home                xfs      defaults,noatime         0      2
/dev/sda3                    none                 swap     sw                       0      0
/dev/sdb1                    /mnt/usb             vfat     uid=1000,gid=1000        0      0
tmpfs                        /tmp                 tmpfs    size=512M                0      0

🔷 Монтирование NFS

Установка клиента nfs:

1
sudo apt install nfs-common

Монтирование:

1
192.168.1.65:/export/nfs  /mnt/nfs  nfs  defaults  0  0

🔷 Монтирование CIFS

Установка клиента cifs:

1
sudo apt install cifs-utils

Монтирование:

1
//192.168.1.135/share  /mnt/share  cifs  username=user,password=pass,uid=1000,gid=1000  0  0

Монтирование с использованием учетных данных из файла:

1
//192.168.1.135/share  /mnt/share  cifs  credentials=/etc/smbcredentials,uid=1000,gid=1000  0  0

где /etc/smbcredentials содержит

1
2
username=myuser
password=mypassword

✏️ Полезные команды

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# после изменения fstab монтируем устройства без перезагрузки
mount -a

# проверка корректности fstab / монтирование с выводом расширенной информации
mount -fav

# информация о блочных устройствах
lsblk

# информация о типах фс и метках устройств
blkid

# информация о смонтированных фс и используемом дисковом пространстве
df - h
Больше полезной информации в Telegram-канале