Монтирование папок в Linux

МонтированиеМонтирование в Linux – это процесс подключения носителей информации или их разделов к корневой файловой системе. К корневой файловой системе могут быть присоединены жёсткие диски, их отдельные разделы, внешние носители (usb, dvd, sd), удалённые сетевые папки, искусственно созданные виртуальные файловые системы.

Кроме того, смонтированные директории могут быть примонтированы к другим папкам – таким образом содержимое одной и той же папки может располагаться в нескольких директориях одновременно.

Инструменты монтирования в Linux позволяют организовать файловую систему как единую структуру, позволяя получать доступ ко всем файлам в поле зрения операционной системы из корневой папки.

Команда mount

Команда mount является стандартной для выполнения операций монтирования в операционной системе Linux, независимо от типа монтируемого объекта. Утилита имеет следующую структуру:

mount what_to_mount where_to_mount

Где:

  1. what_to_mount – директория или устройство, которое необходимо смонтировать;
  2. where_to_mount – каталог, к которому монтируется what_to_mount.

Существуют разные настройки данной команды под разные типы монтируемых устройств. Флаг -t позволяет настроить тип монтируемой файловой системы, а -o – права доступа.

Но для монтирования обычных папок в другие каталоги, необходимо использовать флаг —bind (сокращённо — -B).

mount --bind what_to_mount where_to mount

Такая команда создаст в директории where_to_mount синоним папки what_to_mount, что сделает содержимое последней доступным из первой.

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

Монтирование папок, осуществлённое таким путём, имеет минус – оно непостоянно и сбрасывается при перезагрузке компьютера, из-за чего монтирование папки приходится осуществлять при каждом запуске системы.
Для исправления данной проблемы необходимо добавить запись о произведённом монтировании в файл etc/fstab.

Так, если монтирование было произведено с помощью команды mount —bind /dir1 /dir2, то в файл etc/fstab необходимо добавить запись:
/dir1 /dir2 none bind 0 0

Благодаря этому, система останется смонтированной и после перезагрузки системы. Запись должна быть добавлена в самый конец файла во избежание монтирования папок с несмонтированных устройств.
Альтернативы монтированию папок

Если главной задачей монтирования папки является долговременное создание доступа к её содержимому из другого каталога, то монтирование папки не является лучшим решением.
Обычно, при необходимости иметь долговременный доступ к одним и тем же файлам из разных локаций, используется создание ссылок на эти файлы с помощью утилиты ln.

Однако использование mount —bind имеет свои плюсы, позволяя избегать некоторых видов ограничения доступа к файлам.

Утилита bindfs -n what_to_mount where_to_mount дублирует функционал mount —bind, но не требует прав суперпользователя для своего исполнения и исполняется вплоть до перезагрузки системы.

Размонтирование папок

Отмена операции монтирования и удаление дополнительного источника доступа к файлам зависит от метода монтирования.

Так, если для монтирования папки использовалась команда mount —bind, то для размонтирования следует использовать команду:
umount where_to_mount

Если монтирование происходило с использованием утилиты bindfs, то используется команда:
fusermount -u where_to_mount

Заключение

Таким образом, монтирование папок в Linux – это мощный инструмент для повышения удобства использования данных системы, использование которого достаточно легко освоить.

Ссылка на основную публикацию