Это старая версия документа!
Содержание
fstab. Параметры монтирования блочных устройств
Файл /etc/fstab используется для настройки параметров монтирования различных блочных устройств, разделов на диске и удаленных файловых систем.
Пример файла
Простой пример /etc/fstab , в котором файловые системы заданы по именам файлов устройств:
/etc/fstab
# <file system> <dir> <type> <options> <dump> <pass> /dev/sda1 / ext4 defaults,noatime 0 1 /dev/sda2 none swap defaults 0 0 /dev/sda3 /home ext4 defaults,noatime 0 2
Формат строки
Каждая строка в файле /etc/fstab содержит следующие поля, разделенные пробелами или символами табуляции:
filesystem dir type options dump pass
filesystem
Физическое место размещения файловой системы, по которому определяется конкретный раздел или устройство хранения для монтирования.
dir
Точка монтирования, куда монтируется корень файловой системы.
type
Тип файловой системы. Поддерживается множество типов: ext2, ext3, ext4, btrfs, reiserfs, xfs, jfs, smbfs, iso9660, vfat, ntfs, swap и auto. При выборе auto команда mount попытается определить реальный тип файловой системы самостоятельно. Это полезно для компакт-дисков (CD/DVD).
options
Параметры монтирования файловой системы. Подробнее смотрите на man странице mount. Обратите внимание, что некоторые параметры относятся к конкретным типам файловых систем.
| Опция | Значение |
|---|---|
| auto | Файловая система монтируется при загрузке автоматически или после выполнения команды 'mount -a'. |
| noauto | Файловая система может быть смонтирована только вручную. |
| exec | Позволяет исполнять бинарные файлы на разделе диска. Установлено по умолчанию. |
| noexec | Бинарные файлы не выполняются. Использование опции на корневой системе приведёт к её неработоспособности. |
| ro | Монтирует файловую систему только для чтения. |
| rw | Монтирует файловую систему для чтения/записи. |
| sync | Все операции ввода-вывода должны выполняться синхронно. |
| async | Все операции ввода-вывода должны выполняться асинхронно. |
| user | Разрешает любому пользователю монтировать файловую систему. Применяет опции noexec, nosuid, nodev, если они не переопределены. |
| nouser | Только суперпользователь может монтировать файловую систему. Используется по умолчанию. |
| defaults | Использовать значения по умолчанию. Соответствует набору rw, suid, dev, exec, auto, nouser, async. |
| suid | Разрешить операции с suid и sgid битами. В основном используются, чтобы позволить пользователям выполнять бинарные файлы со временно приобретёнными привилегиями для выполнения определённой задачи. |
| nosuid | Запрещает операции с suid и sgid битами. |
| nodev | Данная опция предполагает, что на монтируемой файловой системе не будут созданы файлы устройств (/dev). Корневой каталог и целевая директория команды chroot всегда должны монтироваться с опцией dev или defaults. |
| atime | Включает запись информации о последнем времени доступа (atime) при каждом чтении файла. Включено по умолчанию на Linux до v.2.6.29 включительно. |
| noatime | Отключает запись информации о последнем времени доступа (atime) при каждом чтении файла. |
| relatime | Включает запись информации о последнем времени доступа при чтении файла, если предыдущее время доступа (atime) меньше времени изменения файла (ctime). Включено по умолчанию на Linux начиная с v.2.6.30. |
| acl | Включить обработку ACL для раздела |
dump
Используется утилитой dump для определения того, нужно ли создать резервную копию данных в файловой системе. Возможные значения: 0 или 1. Если указано число 1, dump создаст резервную копию. У большинства пользователей утилита dump не установлена, поэтому им следует указывать 0 в этом поле.
pass
Используется программой fsck для определения того, нужно ли проверять целостность файловой системы. Возможные значения: 0, 1 или 2. Значение 1 следует указывать только для корневой файловой системы (с точкой монтирования /); для остальных ФС, которые вы хотите проверять, используйте значение 2, которое имеет менее высокий приоритет.Обратите внимание, что в случае btrfs следует всегда указывать 0, даже если эта файловая система используется в качестве корневой. Файловые системы, для которых в поле указано значение 0, не будут проверяться fsck.
Определение файловой системы
Конкретное место расположения файловой системы может быть определено различными способами. В файле /etc/fstab можно указать имя файла устройства, его метку или UUID (в том числе GPT-метку и GPT-UUID для дисков GPT). Определение по UUID является наиболее предпочтительным способом. Далее приведены примеры определений файловых систем с использованием каждого из способов. Вывод lsblk -f and blkid для этих примеров вы можете найти на странице Persistent block device naming.
По именам устройств
Запустите lsblk -f , чтобы отобразить список разделов. Укажите имена устройств с префиксом /dev/ :
# <file system> <dir> <type> <options> <dump> <pass> /dev/sda1 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2 /dev/sda2 / ext4 rw,relatime,discard,data=ordered 0 1 /dev/sda3 /home ext4 rw,relatime,discard,data=ordered 0 2 /dev/sda4 none swap defaults 0 0
По меткам
Запустите lsblk -f , чтобы отобразить список разделов. Укажите метки из столбца LABEL с префиксом LABEL= :
# <file system> <dir> <type> <options> <dump> <pass> LABEL=EFI /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2 LABEL=SYSTEM / ext4 rw,relatime,discard,data=ordered 0 1 LABEL=DATA /home ext4 rw,relatime,discard,data=ordered 0 2 LABEL=SWAP none swap defaults 0 0
По UUID
Запустите lsblk -f, чтобы отобразить список разделов. Укажите идентификаторы из столбца UUID с префиксом UUID= :
# <file system> <dir> <type> <options> <dump> <pass> UUID=CBB6-24F2 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2 UUID=0a3407de-014b-458b-b5c1-848e92a327a3 / ext4 rw,relatime,discard,data=ordered 0 1 UUID=b411dc99-f0a0-4c87-9e05-184977be8539 /home ext4 rw,relatime,discard,data=ordered 0 2 UUID=f9fe0b69-a280-415d-a03a-a32752370dee none swap defaults 0 0
Совет: Если вы хотите отобразить только UUID конкретного раздела, используйте команду lsblk -no UUID /dev/sda2.
По меткам GPT
Запустите blkid чтобы отобразить список разделов. Укажите значения PARTLABEL без кавычек:
# <file system> <dir> <type> <options> <dump> <pass> PARTLABEL=EFI\040SYSTEM\040PARTITION /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2 PARTLABEL=GNU/LINUX / ext4 rw,relatime,discard,data=ordered 0 1 PARTLABEL=HOME /home ext4 rw,relatime,discard,data=ordered 0 2 PARTLABEL=SWAP none swap defaults 0 0
По UUID GPT
Запустите blkid чтобы отобразить список разделов. Укажите значения PARTUUID без кавычек:
# <file system> <dir> <type> <options> <dump> <pass> PARTUUID=d0d0d110-0a71-4ed6-936a-304969ea36af /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2 PARTUUID=98a81274-10f7-40db-872a-03df048df366 / ext4 rw,relatime,discard,data=ordered 0 1 PARTUUID=7280201c-fc5d-40f2-a9b2-466611d3d49e /home ext4 rw,relatime,discard,data=ordered 0 2 PARTUUID=039b6c1c-7553-4455-9537-1befbc9fbc5b none swap defaults
Дополнительная информация
Автоматическое монтирование с systemd
Если у вас большой раздел /home, вы можете разрешить службам, которые не обращаются к /home, запускаться в то время, как /home проверяется программой fsck. Для этого добавьте следующие параметры монтирования в запись /etc/fstab для точки монтирования /home:
noauto,x-systemd.automount
При этом процедура проверки и монтирования /home будет запущена только при первой попытке доступа, и ядро будет держать в ожидании все создаваемые потоки ввода-вывода в /home, пока раздел не будет смонтирован.
Обратите внимание: Ускорение при автоматическом монтировании /home может составлять не более секунды-двух, в зависимости от конфигурации вашей системы. При этом разделу /home будет присвоен тип файловой системы autofs, который по умолчанию игнорируется mlocate. Используйте эту возможность с осторожностью.
Автоматическое монтирование может аналогичным образом использоваться и для монтирования удаленных файловых систем. В дополнение, вы можете использовать параметр x-systemd.device-timeout=# для указания времени ожидания удаленной файловой системы при перебоях в соединении.
Обратите внимание: Если вы намереваетесь использовать флаг exec при автоматическом монтировании, вам следует удалить флаг user, чтобы монтирование производилось корректно.
Если у вас имеются зашифрованные файловые системы, вы можете также добавить параметр noauto в соответствующие записи в /etc/crypttab . Тогда systemd не будет пытаться открыть зашифрованное устройство во время загрузки системы, а сделает это при первой попытке доступа к файловой системе на этом устройстве, применив указанный файл ключа и затем автоматически смонтировав ФС. Это может дать выигрыш в несколько секунд при загрузке системы, например, если у вас зашифрованный RAID массив: systemd не придется ожидать готовности устройства.
- Пример записи:
cat /etc/crypttab
data /dev/md0 /root/key noauto
