| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
| fstab._parametry_montirovanija_blochnyx_ustrojstv [2016/01/11 06:55] – [dump] daniil | fstab._parametry_montirovanija_blochnyx_ustrojstv [Дата неизвестна] (текущий) – внешнее изменение (Дата неизвестна) 127.0.0.1 |
|---|
| ====== fstab. Параметры монтирования блочных устройств ====== | ====== fstab. Параметры монтирования блочных устройств ====== |
| Файл **/etc/fstab** используется для настройки параметров монтирования различных блочных устройств, разделов на диске и удаленных файловых систем. | Файл **/etc/fstab** используется для настройки параметров монтирования различных блочных устройств, разделов на диске и удаленных файловых систем. |
| | |
| | ---- |
| |
| ===== Пример файла ===== | ===== Пример файла ===== |
| Простой пример **/etc/fstab** , в котором файловые системы заданы **по именам файлов устройств**: | Простой пример **/etc/fstab** , в котором файловые системы заданы **по именам файлов устройств**: |
| <code bash> | |
| /etc/fstab | |
| </code> | |
| |
| <code> | <code> |
| filesystem dir type options dump pass | filesystem dir type options dump pass |
| </code> | </code> |
| | |
| | ---- |
| |
| ==== filesystem ==== | ==== filesystem ==== |
| |
| ==== pass ==== | ==== pass ==== |
| Используется программой fsck для определения того, нужно ли проверять целостность файловой системы. Возможные значения: 0, 1 или 2. Значение 1 следует указывать только для корневой файловой системы (с точкой монтирования /); для остальных ФС, которые вы хотите проверять, используйте значение 2, которое имеет менее высокий приоритет.Обратите внимание, что в случае btrfs следует всегда указывать 0, даже если эта файловая система используется в качестве корневой. Файловые системы, для которых в поле указано значение 0, не будут проверяться fsck. | Используется программой **fsck** для определения того, //нужно ли проверять целостность файловой системы//. //Возможные значения:// **0**, **1** или **2**. Значение **1** с//ледует указывать только для корневой файловой системы// (с точкой монтирования **/**); //для остальных ФС, которые вы хотите проверять//, используйте значение **2**, которое имеет менее высокий приоритет.Обратите внимание, что в случае **btrfs** //следует всегда указывать **0**, даже если эта файловая система используется в качестве корневой//. Файловые системы, для которых в поле указано значение **0**, //не будут проверяться// **fsck**. |
| |
| ---- | ---- |
| Конкретное место расположения файловой системы может быть определено различными способами. В файле **/etc/fstab** можно указать **имя файла устройства**, **его метку** или **UUID** (в том числе **GPT-метку** и **GPT-UUID** для дисков GPT). Определение по UUID является наиболее предпочтительным способом. | Конкретное место расположения файловой системы может быть определено различными способами. В файле **/etc/fstab** можно указать **имя файла устройства**, **его метку** или **UUID** (в том числе **GPT-метку** и **GPT-UUID** для дисков GPT). Определение по UUID является наиболее предпочтительным способом. |
| Далее приведены примеры определений файловых систем с использованием каждого из способов. Вывод lsblk -f and blkid для этих примеров вы можете найти на странице Persistent block device naming. | Далее приведены примеры определений файловых систем с использованием каждого из способов. Вывод lsblk -f and blkid для этих примеров вы можете найти на странице Persistent block device naming. |
| | |
| | ---- |
| |
| ==== По именам устройств ==== | ==== По именам устройств ==== |
| /dev/sda4 none swap defaults 0 0 | /dev/sda4 none swap defaults 0 0 |
| </code> | </code> |
| | |
| | ---- |
| |
| ==== По меткам ==== | ==== По меткам ==== |
| LABEL=SWAP none swap defaults 0 0 | LABEL=SWAP none swap defaults 0 0 |
| </code> | </code> |
| | |
| | ---- |
| |
| ==== По UUID ==== | ==== По UUID ==== |
| Совет: Если вы хотите отобразить только UUID конкретного раздела, используйте команду lsblk -no UUID /dev/sda2. | Совет: Если вы хотите отобразить только UUID конкретного раздела, используйте команду lsblk -no UUID /dev/sda2. |
| </WRAP> | </WRAP> |
| | |
| | ---- |
| |
| ==== По меткам GPT ==== | ==== По меткам GPT ==== |
| PARTLABEL=SWAP none swap defaults 0 0 | PARTLABEL=SWAP none swap defaults 0 0 |
| </code> | </code> |
| | |
| | ---- |
| |
| ==== По UUID GPT ==== | ==== По UUID GPT ==== |
| data /dev/md0 /root/key noauto | data /dev/md0 /root/key noauto |
| </code> | </code> |
| | |
| | ---- |
| | |
| | ==== Пробелы в значениях полей ==== |
| | |
| | Так как пробельные символы используются в **fstab** для разделения полей, их **нельзя напрямую использовать в значениях полей**. Любые пробелы в полях (например, значения **PARTLABEL**, **LABEL** или точки монтирования) //должны быть заменены специальными управляющими последовательностями//, которые состоят из обратной косой черты (**\**) и **трех восьмеричных цифр** (например, //для пробела это// **\040**): |
| | <code> |
| | UUID=47FA-4071 /home/username/Camera\040Pictures vfat defaults,noatime 0 0 |
| | /dev/sda7 /media/100\040GB\040(Storage) ext4 defaults,noatime,user 0 2 |
| | </code> |
| | |
| | ---- |
| | |
| | ==== Внешние устройства ==== |
| | |
| | Если устройство не подключено постоянно, и может отсутствовать во время загрузки системы, монтируйте его с параметром **nofail**. Это предотвратит появление ошибок при загрузке. |
| | <code> |
| | /dev/sdg1 /media/backup jfs defaults,nofail 0 2 |
| | </code> |
| | |
| | ---- |
| | |
| | ==== Параметры atime ==== |
| | * Если файловая система смонтирована с параметром **atime**, то, когда происходит обращение к файлу, в его поле atime записывается текущее время (иными словами, время доступа). Это может быть полезно, когда Linux используется на сервере; на персональном компьютере эта функция обычно не нужна. Недостаток этой функции в том, что даже при чтении файла из кэша (в оперативной памяти) все равно производится медленная операция записи на диск. Использование параметров монтирования **noatime**, **nodiratime** или **relatime** может улучшить производительность доступа к данным, а также уменьшить износ твердотельных (SSD) накопителей. |
| | * Параметр **noatime** полностью отключает запись времени доступа к файлу. Большинство программ не используют это поле. Но бывают и редкие исключения — например, **Mutt** полагается на его значение. Для mutt вы можете использовать параметр **relatime**. |
| | * Параметр **nodiratime** отключает обновление времени доступа только для каталогов; для остальных файлов время atime будет обновляться всегда. |
| | <WRAP center round info 100%> |
| | Обратите внимание: Действие noatime перекрывает собой nodiratime. **Нет необходимости указывать оба параметра**. |
| | </WRAP> |
| | |
| | * Параметр **relatime** включает обновление поля только когда содержимое файла перезаписывается (в отличие от **noatime**, при котором поле **atime** вообще не обновляется, и может становиться раньше времени изменения mtime). Использование этого параметра наиболее предпочтительно, так как программы вроде Mutt будут работать корректно, и при этом вы все равно получите достаточное улучшение производительности: при операциях чтения (как правило, гораздо более частых, чем записи) не будет производиться запись времени на диск. //По умолчанию файловые системы монтируются с этим параметром// |
| | |
| | ---- |
| | |
| | ==== Запись в FAT32 с правами обычного пользователя ==== |
| | |
| | Чтобы иметь возможность записи в разделе FAT32, вам следует указать правильные параметры монтирования в вашем файле /etc/fstab. |
| | <code> |
| | /dev/sdxY /mnt/some_folder vfat user,rw,umask=000 0 0 |
| | </code> |
| | Флаг **user** означает, что любой пользователь сможет монтировать и размонтировать раздел **/dev/sdX** . Параметр **rw** дает доступ на чтение-запись; **umask** убирает указанные права — например, **umask=111** удаляет права на выполнение. Проблема в том, что права на "выполнение" также удаляются у каталогов, поэтому мы должны исправить это при помощи параметра **dmask=000** . \\ |
| | Без этих параметров все файлы будут восприниматься исполняемыми. Вы можете использовать параметр **showexec** вместо **umask** и **dmask**, при которой исполняемыми будут файлы, имеющие расширения исполняемых файлов Windows (.com, .exe, .bat). \\ |
| | Например, если ваш раздел **FAT32** на **/dev/sda9**, и вы хотите смонтировать его в каталог **/mnt/fat32**, то вам следует использовать запись следующего вида: |
| | <code> |
| | /dev/sda9 /mnt/fat32 vfat user,rw,umask=111,dmask=000 0 0 |
| | </code> |
| | |
| | |
| | ---- |
| | |
| | ==== Перемонтирование корневого раздела ==== |
| | |
| | Если по какой-то причине корневой раздел был неправильно смонтирован только на чтение, вы можете перемонтировать его с доступом на чтение-запись без перезагрузки, набрав |
| | <code> |
| | # mount -o remount,rw / |
| | </code> |
| | |
| | ---- |
| | |
| | ===== Источники ===== |
| | |
| | * [[https://wiki.archlinux.org/index.php/Fstab_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#.D0.9E.D0.BF.D1.80.D0.B5.D0.B4.D0.B5.D0.BB.D0.B5.D0.BD.D0.B8.D0.B5_.D1.84.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2.D0.BE.D0.B9_.D1.81.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D1.8B|wiki.archlinux.org]] |
| | * [[https://ru.wikipedia.org/wiki/Fstab|ru.wikipedia.org]] |
| | * [[acl._vkljuchenie|ACL. Включение]] |