Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

16 - Файл /etc/fstab

Лекция



Сразу хочу сказать, что здесь никакой воды про /etc/fstab, и только нужная информация. Для того чтобы лучше понимать что такое /etc/fstab , настоятельно рекомендую прочитать все из категории Операционная система LINUX.

Прошлая лекция была посвящена монтированию файловых систем и командам mount unmount. Сегодня мы продолжим тему и подробно рассмотрим такой важный компонент системы как файл  /etc/fstab . Файл /etc/fstabсодержит в себе описание существующих в системе файловых систем. Под файловой системой здесь следуют понимать файловую систему существующего в операционной системе раздела блочного устройства. Файл/etc/fstab используется такими программами как mount, umount и fsck. Чтобы не писать в команде mount все необходимые опции, можно описать их в файле /etc/fstab, а затем использовать mount в сокращенном виде. Каждая файловая система описана в отдельной строке файла. Строка разделена на поля с помощью пробелов или табуляции. Всего полей шесть. Ниже представлен вариант файла /etc/fstab:

# /etc/fstab: static file system information.
#
# proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=8d6bccd3-0bdf-487c-8b92-70e5b65aa756 / ext3 relatime,errors=remount-ro 0 1
# swap was on /dev/sda8 during installation
UUID=49d78fcc-9bbc-43a6-a750-b0d85921a04c none swap sw 0 0
# /media/disk on /dev/sda2
UUID=d822a992-8a4f-48f0-8b7d-a529af066106 /media/disk ext3 nodev,rw,user 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0

Строки начинающиеся со знака # это комментарии. Рассмотрим поля из который состоит каждая строка файла/etc/fstab. Для примера возьмем следующую строку:

UUID=8d6bccd3-0bdf-487c-8b92-70e5b65aa756 / ext3 relatime,errors=remount-ro 0 1

Первое поле содержит указание раздела, файловая система которого будет монтироваться в системе. Раздел блочного устройства можно указать непосредственно - /dev/sda1 или через параметр UUID. Можно также указать метку раздела. В первом случае наша строка выглядела бы так:

/dev/sda1 / ext3 relatime,errors=remount-ro 0 1

UUID - это уникальный идентификатор каждого раздела жесткого диска. Он является уникальным не только в рамках вашей операционной системы, но и других систем. Если подключить диск к другому компьютеру с операционной системой Linux, то UUID будет таким же. Монтирование в /etc/fstab через параметр UUIDсчитается более предпочтительным, так как позволяет однозначно идентифицировать любой диск в системе. Чтобы посмотреть UUID разделов вашего диска. Необходимо выполнить следующую команду:

igor@adm-ubuntu:~/linux$ ls -l /dev/disk/by-uuid/
итого 0
lrwxrwxrwx 1 root root 10 2009-11-16 11:05 362CA5282CA4E459 -> ../../sda6
lrwxrwxrwx 1 root root 10 2009-11-16 11:05 49d78fcc-9bbc-43a6-a750-b0d85921a04c -> ../../sda8
lrwxrwxrwx 1 root root 10 2009-11-16 11:05 8d6bccd3-0bdf-487c-8b92-70e5b65aa756 -> ../../sda1
lrwxrwxrwx 1 root root 10 2009-11-16 11:05 A24E667C4E6648DD -> ../../sda5
lrwxrwxrwx 1 root root 10 2009-11-16 11:05 C06A6F286A6F1A84 -> ../../sda7
lrwxrwxrwx 1 root root 10 2009-11-16 11:05 d822a992-8a4f-48f0-8b7d-a529af066106 -> ../../sda2

Если посмотреть содержимое каталога /dev/disk, то можно увидеть, что можно посмотреть и другую информацию о разделах диска, например о метке диска (by-label):

igor@adm-ubuntu:~/linux$ ls -l /dev/disk/
итого 0
drwxr-xr-x 2 root root 360 2009-11-17 17:37 by-id
drwxr-xr-x 2 root root 80 2009-11-17 17:37 by-label
drwxr-xr-x 2 root root 220 2009-11-17 17:37 by-path
drwxr-xr-x 2 root root 160 2009-11-17 17:37 by-uuid

Второе поле в файле /etc/fstab содержит точку монтирования. Об этом говорит сайт https://intellect.icu . В нашем примере раздел с UUID=8d6bccd3-0bdf-487c-8b92-70e5b65aa756 (или /dev/sda1) монтируется к корню файловой системы - /. Следует понимать, что точка монтирования должна существовать. Например, если вы пишете в файле /etc/fstab строку о монтировании раздела /dev/sda3 на точку монтирования /mnt/disk, то каталог /mnt/disk должен уже существовать.

В третьем поле указывается тип монтируемой файловой системы. Посмотреть перечень поддерживаемых файловых систем можно в справке man fstab или man mount. Здесь остановимся на основных. ext2, ext3, ext4- родные файловые системы операционной системы Linuxvfat - используется при монтировании файловых систем семейства FAT (FAT12, FAT16, FAT32). Также используется при монтировании флеш-накопителей и дискет. ntfs - используется при монтировании разделов NTFS операционной системы Windowsiso9660 и udf - используется при монтировании CD,DVD-дисков. Также в третьем поле могут быть значения: proc - для файловой системы /procswap - используется для указания специальной области подкачки, auto - в этом случае будет сделана попытка автоматически определить тип файловой системы. Для того, чтобы посмотреть все файловые системы, которые поддерживаются ядром вашей системы необходимо выполнить команду cat /proc/filesystems.

В четвертом поле файла /etc/fstab указываются дополнительные опции монтирования. Опции могут быть как общими для всех типов файловых систем, так и специфическими - которые используются в зависимости от значения третьего поля. Общие опции рассмотрены в разделе FILESYSTEM INDEPENDENT MOUNT OPTIONSсправки man fstab, а специфические в разделе FILESYSTEM SPECIFIC MOUNT OPTIONS справки man fstab. Опции задаются через запятую. Опций довольно много и для рассмотрения их всех понадобится не одна лекция, поэтому остановлюсь на самых важных.

sync - операции ввода/вывода выполняются синхронно. То есть информация немедленно записывается на устройство без ожидания в специальной области называемой буферной памятью. Например, если вы копируете маленький файл на флешку или на дискету, а потом тут же выдергиваете ее, то без этой опции, файл может еще быть не записан на носитель, а находится в буферной памяти.
async - операции ввода/вывода выполняются асинхронно. Информация может быть записана в буферную память, а потом через некоторое время на носитель. Не рекомендуется задавать для дискет или флеш носителей.
atime - обновлять время доступа к файлу при каждом обращении к файлу.
noatime - не обновлять время доступа к файлу. Ускоряет работу файловой системы, но использовать нужно осторожно.
auto - при выполнении команды mount -а будут автоматически смонтированы все системы с ключом auto. Команда mount -a выполняется в загрузочных скриптах системы, поэтому можно говорить о том, что задание опции auto позволит автоматически монтировать файловые системы при загрузке системы.
noauto - файловые системы с такой опцией будут монтироваться только вручную по команде mount.
exec - опция разрешает запускать исполняемые файлы, которые расположены на данном файловом разделе.
noexec - опция запрещает запускать исполняемые файлы.
dev - опция указывает, что файлы-устройства следует интерпретировать как файлы-устройства.
nodev - файлы-устройства будут интерпретироваться как обычные файлы. Применяется если необходимо смонтировать раздел, с другой Linux-системой.
users - опция указывает, что монтировать и размонтировать разделы могут обычные пользователи.
user - монтировать раздел может любой пользователь, но размонтировать может только тот кто смонтировал илиroot. Т.е. если пользователь test смонтирует раздел, то только test и root сможет размонтировать его.
nouser - монтировать раздел может только пользователь root.
suid - опция разрешает применять биты setuid и setgid.
nosuid - опция запрещает применять биты setuid и setgid. Если такие биты установлены они не будут приниматься во внимание.
rw - монтировать файловую систему в режиме чтения/записи.
ro - монтировать файловую систему только в режиме чтения.
defaults - опция устанавливает опции по умолчанию: rw, suid, dev, exec, auto, nouser, async.

Дополнительные опции для файловой системы vfat. Рассмотрим только несколько наиболее употребляемых опций.

uid= - установить владельца для объектов файловой системы.
gid= - установить группу владельца для объектов файловой системы.
umask - установить параметр umask.
dmask - установить параметр umask только для каталогов.
fmask - установить параметр umask только для файлов.
codepage= - указывает в какой кодовой странице сохраняются имена объектов. Для операционный систем Windows, например, этот параметр устанавливают в cp1251.
iocharset - указывает с какой кодовой страницей работает наша система. Как правило это utf8. То есть эти два параметра показывают как нужно перекодировать имена файлов.

Перечислять все опции всех файловых систем больше не будем, так как все они очень хорошо описаны в справкеman mount.

В завершении лекции хочу упомянуть о опции которая применяется не в файле /etc/fstab, а в команде mount. Речь идет об опции remount. Эта опция используется если нам необходимо изменить параметры уже смонтированной файловой системы без ее размонтирования. Допустим есть файловая система раздела /dev/sda5, которая смонтирована в точку монтирования /mnt/disk5. Запись об этой файловой системе присутствует в файле /etc/fstab. Если в команде mount в качестве параметров задать и раздел с файловой системой и точку монтирования, то все предыдущие опции монтирования заменятся на новые - указанные в команде mount:

mount -o remount,ro /dev/sda5 /mnt/disk5

Если в команде mount указать только точку монтирования, то опции из файла /etc/fstab будут объединены с опциями указанными в команде mount:

mount -o remount,ro /mnt/disk5

То есть если необходимо перевести файловую систему в режим чтения, то достаточно просто выполнить командуmount с параметрами remount и ro.

Также не забывайте, что все смонтированные на текущий момент заносятся в файл /etc/mtab.

Пожалуйста, пиши комментарии, если ты обнаружил что-то неправильное или если ты желаешь поделиться дополнительной информацией про /etc/fstab Надеюсь, что теперь ты понял что такое /etc/fstab и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Операционная система LINUX

создано: 2014-09-13
обновлено: 2021-03-13
132467



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей



Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Операционная система LINUX

Термины: Операционная система LINUX