Заметка о fstab
fstab (file systems table) - один из конфигурационных файлов в UNIX-подобных системах, который содержит информацию о различных файловых системах и устройствах хранения информации компьютера; описывает, как диск (раздел) будет использоваться или как будет интегрирован в систему.
Полный путь к файлу: /etc/fstab.
Каждая запись имеет следующие поля (которые разделяются пробелом или табуляцией):
Поле, <device-spec> (устройство) сообщает демону монтирования файловых систем mount, что монтировать, имя монтируемого устройства или его метку.
Второе поле, <mount-point> (точка монтирования), определяет путь, по которому будет смонтировано устройство <device-spec>.
Поле <fs-type> (тип файловой системы) содержит тип файловой системы монтируемого устройства. Полный список поддерживаемых систем можно просмотреть выполнив команду:
Самые распространённые файловые системы: ext3, ext4, ReiserFS, XFS, JFS, smbfs, ISO9660, VFAT, NTFS, tmpfs, swap. Ключ auto не является файловой системой, он позволяет определять, какой тип файловой системы используется, автоматически. Это удобно для съёмных устройств, дисководов и cd-дисков.
Следующее поле называется <options> (опции). Если используются все значения по умолчанию, то используется специальный ключ defaults. Если хоть одна опция задана явно, то defaults указывать не нужно (defaults служит только для того, что была занята позиция в строке). Для полного списка опций используйте команду 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.notailОтключает "упаковку хвостов файлов". Опция работает только с файловой системойReiserFS.sizeИспользуется для указания размера файловой системы. Опция работает только с файловой системойtmpfs.
<dump> - используется утилитой dump для того чтобы определить, когда делать резервную копию. После установки, dump проверяет эту запись и использует значение, чтобы решить, подключать ли файловую систему. Возможные значения 0 или 1. Если 0, dump игнорирует файловую систему, если 1, dump сделает резервную копию. У большинства пользователей dump не установлен, поэтому в поле <dump> следует задать 0.
<pass> (номер прохода). fsck проверяет число, подставленное в поле <pass> и решает, в каком порядке проверять файловую систему. Возможные значения 0, 1 и 2. Файловые системы со значением <pass>, равным 0, не будут проверены утилитой fsck. У корневой системы должен быть наибольший приоритет, 1, остальные файловые системы должны иметь приоритет 2.
Вместо указания имени устройства, можно указать UUID или метку тома, написав LABEL=<label> или UUID=<uuid>, например, LABEL=Boot или UUID=3e6be9de-8139-11d1-9106-a43f08d823a6.
Стоит обратить внимание на тот факт, что <options> могут быть составлены из нескольких значений разделенных запятой.
Пример файла fstab:
# <device-spec> <mount-point> <fs-type> <options> <dump> <pass>
none /dev/pts devpts defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/cdrom /mnt/cd iso9660 ro,user,noauto,unhide 0 0
/dev/dvd /mnt/dvd udf ro,user,noauto,unhide 0 0
/dev/fd0 /mnt/fl auto user,noauto 0 0
/dev/hda1 swap swap defaults 0 0
/dev/hda4 / ext3 defaults 0 1
/dev/hda3 /home xfs rw,suid,exec,auto,nouser,async 0 2
Пример типового файла fstab в FreeBSD: