- Подключение файловых систем. Команда mount в Linux
- Вывод списка смонтированных файловых систем(ФС)
- Монтирование файловой системы
- Примеры использования mount
- Монтирование USB-накопителя/жесткого диска
- Монтирование файлов ISO
- Монтирование NFS
- Размонтирование файловой системы
- Сохранение параметров mount после перезагрузки
- Заключение
- Администрирование систем Linux. Монтирование файловых систем
- Глава 7. Монтирование файловых систем
- 7.1. Монтирование локальных файловых систем
- 7.2. Вывод списка смонтированных файловых систем
- 7.3. Процесс монтирования файловой системы от начала до конца
- 7.4. Монтирование файловых систем на постоянной основе
- 7.5. Безопасное монтирование файловых систем
- 7.6. Монтирование удаленных файловых систем
- 7.7. Практическое задание: монтирование файловых систем
- 7.8. Процедура корректного выполнения практического задания: монтирование файловых систем
Подключение файловых систем. Команда mount в Linux
В ОС Linux команда mount используется для подключения (монтирования) файловых систем и переносных накопителей (например, USB-флешек) к конкретным точкам монтирования в дереве директорий. Команда umount отключает (размонтирует) смонтированную файловую систему от дерева директорий. В данном руководстве мы рассмотрим основы подключения и отключения различных файловых систем при помощи команд mount и umount.
Вывод списка смонтированных файловых систем(ФС)
При выполнении без аргументов команда mount выведет все подключенные в данный момент ФС:
По умолчанию результат будет содержать все ФС, в том числе виртуальные, такие как cgroup, sysfs и т. д. Каждая строка содержит информацию об имени устройства, директории, в которой оно смонтировано, типе и опциях монтирования в следующей форме:
Для отображения только ФС определенного типа используется опция -t. Например, так можно отобразить только разделы ext4:
Монтирование файловой системы
Для подключения файловой системы к конкретному местоположению (точке монтирования) команда mount используется в следующей форме:
После подключения точка монтирования становится корневой директорией смонтированной ФС. Например, смонтировать жесткий диск /dev/sdb1 в директорию /mnt/media можно следующим образом:
Обычно при монтировании устройства с распространенной ФС, например, ext4 или xfs, команда mount автоматически определяет ее тип. Однако, некоторые ФС не распознаются. Их тип нужно указывать в явном виде. Для этого используется опция -t:
Чтобы указать дополнительные опции монтирования, используется флаг -o:
Можно указать несколько опций, разделенных запятыми (после запятых не должно быть пробелов). Ниже предоставлены основные опции команды
-V — вывести версию утилиты;
-h — вывести справку;
-v — подробный режим;
-a, —all — примонтировать все устройства, описанные в fstab;
-F, —fork — создавать отдельный экземпляр mount для каждого отдельного раздела;
-f, —fake — не выполнять никаких действий, а только посмотреть что собирается делать утилита;
-n, —no-mtab — не записывать данные о монтировании в /etc/mtab;
-l, —show-labels — добавить метку диска к точке монтирования;
-c — использовать только абсолютные пути;
-r, —read-only — монтировать раздел только для чтения;
-w, —rw — монтировать для чтения и записи;
-L, —label — монтировать раздел по метке;
-U, —uuid — монтировать раздел по UUID;
-T, —fstab — использовать альтернативный fstab;
-B, —bind — монтировать локальную папку;
-R, —rbind — перемонтировать локальную папку.
Полный список опций можно получить, выполнив команду man mount.
Примеры использования mount
Давайте рассмотрим несколько примеров использования утилиты. Как правило для монтирования нужно выполнить всего два действия
- Создать точку монтирования
- Примонтировать файловую систему
Монтирование USB-накопителя/жесткого диска
В большинстве современных дистрибутивов Linux, например, Ubuntu, USB-накопители автоматически монтируются при подключении, но иногда может потребоваться ручное монтирование устройства. Чтобы смонтировать USB-накопитель, выполните следующие действия.
Создайте точку монтирования
Если USB-накопитель использует устройство /dev/sdd1, его можно смонтировать в директорию /media/usb следующей командой:
Для поиска устройства и типа файловой системы можно воспользоваться любой из следующих команд:
Монтирование файлов ISO
Для монтирования файла ISO используется петлевое (loop) устройство — специальное виртуальное устройство, которое позволяет осуществлять доступ к файлу как к блочному устройству.
Сначала нужно создать точку монтирования в любой желаемой директории:
Смонтируйте файл ISO следующей командой:
Не забудьте заменить /path/to/image.iso на путь к вашему файлу ISO.
Монтирование NFS
Для монтирования системы NFS требуется установить клиент NFS. Установка клиента NFS в Ubuntu и Debian:
Установка клиента NFS в CentOS и Fedora:
Создайте директорию, которая будет точкой монтирования удаленной файловой системы:
Обычно требуется автоматическое монтирование удаленной директории NFS при загрузке. Для этого нужно изменить файл конфигурации /etc/fstab. Откройте его в любом текстовом редакторе, например:
Добавьте в файл следующую строку, заменив сервер:/директория на имя или IP-адрес сервера NFS и экспортируемую директорию:
Смонтируйте ресурс NFS следующей командой:
Размонтирование файловой системы
Для отключения смонтированной файловой системы используется команда umount, в качестве аргумента которой указывается директория, в которую она была смонтирована (точка монтирования) или имя устройства:
Если файловая система используется, umount не сможет ее отключить. В таких ситуациях можно воспользоваться командой fuser, чтобы выяснить, какие процессы осуществляют доступ к файловой системе:
Определив процессы, можно остановить их и размонтировать файловую систему. Также для отключения занятой файловой системы сразу после завершения ее использования можно воспользоваться опцией -l (—lazy, “ленивое” отключение):
Для принудительного размонтирования применяется опция -f (—force). Обычно она используется для отключения недостижимой системы NFS.
Во всех остальных случаях принудительное отключение нежелательно, так как может привести к повреждению данных в файловой системе.
Сохранение параметров mount после перезагрузки
Для того, что бы устройства при перезагрузки системы монтировались автоматически, необходимо прописать инструкции монтирования в файл /etc/fstab. Файл /etc/fstab содержит список записей в следующем формате:
Подключит устройство /dev/sdb1 (например жесткий диск) в директорию /home
После того как инструкция для mount прописаны в /etc/fstab, что бы проверить правильность написания дайте команду
Если команда отработает без ошибок, то все устройства прописанные в /etc/fstab будут подключены, а также изменения не потеряются после перезагрузки.
Заключение
Мы рассмотрели наиболее распространенные примеры подключения различных файловых систем к дереву директорий при помощи команды mount и их отключения командой umount. Для получения более подробной информации об опциях команд mount и umount можно обратиться к соответствующим man-страницам.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Администрирование систем Linux. Монтирование файловых систем
Глава 7. Монтирование файловых систем
После того, как вы создали файловую систему в разделе жесткого диска, вы можете смонтировать ее. Монтирование файловой системы делает ее доступной для использования обычно посредством специально созданной директории. Мы говорим о монтировании файловой системы , а не о монтировании раздела жесткого диска, ведь, как мы увидим позднее, у нас также имеется возможность монтирования файловых систем, которые созданы вне разделов жестких дисков.
Во всех системах Unix каждый файл и каждая директория являются частью одного большого дерева директорий файловой системы. Для доступа к файлу вы должны знать полный путь к этому файлу, начинающийся с корневой директории. При добавлении файловой системы в ходе обслуживания операционной системы вам придется предоставить доступ к этой файловой системе из какой-либо точки дерева директорий файловой системы. Директория, из которой будет доступна ваша файловая система, называется точкой монтирования.
7.1. Монтирование локальных файловых систем
7.1.1. Создание точки монтирования с помощью утилиты mkdir
В данном примере демонстрируется методика создания новой точки монтирования с помощью утилиты mkdir .
7.1.2. Утилита mount
После того, как точка монтирования создана, а файловая система присутствует на разделе жесткого диска, утилита mount может быть использована для монтирования файловой системы в директорию , которая станет точкой монтирования .
После монтирования пользователи получат доступ к файловой системе.
7.1.3. Файл /etc/filesystems
На самом деле использование параметра -t ext2 утилиты mount для явного указания типа файловой системы не всегда является необходимым. Утилита mount имеет возможность автоматической идентификации типов множества файловых систем.
В случае монтирования файловой системы без явного указания ее типа утилита mount в первую очередь попытается идентифицировать файловую систему как одну из файловых систем, перечисленных в файле /etc/filesystems . При этом утилита mount будет пропускать строки с директивой nodev .
7.1.4. Файл /proc/filesystems
В том случае, если файла /etc/filesystems не существует или данный файл заканчивается строкой с одним символом *, утилита mount будет читать файл /proc/filesystems .
7.1.5. Утилита umount
Вы можете отмонтировать файловую систему с помощью утилиты umount .
7.2. Вывод списка смонтированных файловых систем
Для вывода списка смонтированных файловых систем следует использовать команду mount . Также можно прочитать содержимое файлов /proc/mounts и /etc/mtab .
7.2.1. Утилита mount
Простейший и наиболее часто используемый способ вывода списка смонтированных файловых систем заключается в использовании утилиты mount без каких-либо аргументов.
7.2.2. Файл /proc/mounts
Ядро ОС предоставляет информацию о смонтированных файловых системах посредством файла /proc/mounts , причем данный файл не хранится на жестком диске. При чтении информации из файла /proc/mounts осуществляется чтение информации, переданной непосредственно ядром ОС.
Содержимое файла /etc/mtab не обновляется средствами ядра ОС, а поддерживается в актуальном состоянии средствами утилиты mount . Не редактируйте файл /etc/mtab вручную.
Более удобный для пользователя способ получения списка смонтированных файловых систем заключается в использовании утилиты df . Утилита df (название расшифровывается как diskfree — свободное пространство диска) имеет полезную дополнительную возможность, заключающуюся в выводе данных об объеме свободного пространства в каждой из смонтированных файловых систем, расположенных в разделах жестких дисков. Как и большинство утилит из состава Linux, утилита df поддерживает параметр -h , предназначенный для активации режима вывода данных в формате, облегчающем чтение.
7.2.5. Команда df -h
В приведенном ниже примере вывода команды df -h вы можете обнаружить информацию о размере файловой системы, свободном пространстве, использованном пространстве в гигабайтах и процентах, а также точке монтирования файловой системы, созданной в соответствующем разделе жесткого диска.
Утилита du позволяет получить количественные показатели использования пространства жесткого диска для хранения файлов и директорий. Используя утилиту du с параметром, являющимся путем к точке монтирования, вы на самом деле будете получать информацию о пространстве раздела жесткого диска, занятом данными из файловой системы.
Хотя утилита du и может осуществлять рекурсивный обход дерева директорий с последующим выводом информации о каждой из директорий, параметр -s позволит вам получить обобщенную информацию о размере родительской директории. Этот параметр чаще всего используется вместе с параметром -h . Поэтому команда du -sh по отношению к точке монтирования позволит получить информацию обо всем пространстве раздела диска, использованном файловой системой.
7.3. Процесс монтирования файловой системы от начала до конца
В приведенном ниже примере показана полная последовательность действий, начинающаяся с определения имени файла устройства жесткого диска (/dev/sdb) и заканчивающаяся монтированием созданной в разделе этого жесткого диска файловой системы в директорию /mnt .
7.4. Монтирование файловых систем на постоянной основе
До текущего момента мы монтировали все файловые системы вручную. Такой подход вполне приемлем, но файловая система остается смонтированной только до следующей перезагрузки системы. К счастью, существует способ уведомления вашего компьютера о необходимости монтирования определенных файловых систем в процессе загрузки операционной системы.
7.4.1. Файл /etc/fstab
Таблица монтируемых файловых систем, расположенная в файле /etc/fstab , содержит список файловых систем с параметрами, позволяющими монтировать каждую из них в процессе загрузки операционной системы.
Ниже приведен пример файла /etc/fstab .
Добавив в данный файл следующую строку, вы можете автоматизировать процесс монтирования созданной файловой системы.
7.4.2. Команда mount /точка_монтирования
Благодаря добавлению элемента с список монтируемых файловых систем, расположенный в файле /etc/fstab , вы можете использовать упрощенный вариант команды mount . Команда из примера ниже позволяет осуществить поиск информации о файле устройства, представляющем связанный с переданной точкой монтирования раздел жесткого диска, в файле /etc/fstab с помощью утилиты mount .
7.5. Безопасное монтирование файловых систем
Безопасное монтирование файловых систем становится возможным благодаря наличию нескольких специализированных параметров монтирования файловых систем . Эти параметры рассмотрены в примерах, приведенных ниже.
7.5.1. Параметр ro
Параметр ro позволяет смонтировать файловую систему в режиме только для чтения, что позволит предотвратить запись данных в нее любым пользователем.
7.5.2. Параметр noexec
Параметр noexec позволяет предотвратить исполнение бинарных файлов и сценариев, расположенных в смонтированной файловой системе.
7.5.3. Параметр nosuid
Параметр nosuid позволяет игнорировать биты setuid , установленные для бинарных файлов из смонтированной файловой системы.
Обратите внимание на то, что в случае использования данного параметра вы все также сможете устанавливать биты setuid для бинарных файлов из файловой системы.
Но пользователи не смогут воспользоваться привилегиями, обусловленными наличием битов setuid .
7.5.4. Параметр noacl
Для предотвращения использования механизма управления правами доступа к файлам на основе списков контроля доступа следует использовать параметр noacl .
Описания других параметров монтирования файловых систем доступны на странице руководства для утилиты mount .
7.6. Монтирование удаленных файловых систем
7.6.1. Файловая система SMB/CIFS
Команда разработчиков проекта Samba (samba.org) осуществляет разработку системной службы для Unix/Linux, которая совместима с протоколом SMB/CIFS. Данный протокол используется главным образом компьютерами, работающими под управлением ОС производства компании Microsoft.
Соединение с сервером Samba (или компьютером, работающим под управлением ОС производства компании Microsoft) также может осуществляться с помощью утилиты mount.
В данном примере показана методика соединения с сервером, имеющим IP-адрес 10.0.0.42 , для доступа к разделяемому ресурсу с именем data2 .
Для корректного соединения с использованием описанного протокола необходимо установить дополнительные программные компоненты с помощью команды yum install cifs-client .
7.6.2. Файловая система NFS
Серверы Unix обычно используют протокол NFS (расшифровывается как Network File System — сетевая файловая система) для предоставления доступа к директориям по сети. Настройка сервера NFS будет обсуждаться позднее. Соединение же с сервером NFS со стороны клиента осуществляется также с помощью утилиты mount и очень похоже на соединение с локальным дисковым хранилищем.
Данная команда демонстрирует методику соединения с сервером NFS с именем server42 , который предоставляет доступ к директории /srv/data . Точка монтирования (путь к которой приведен в конце строки команды) должна существовать.
В том случае, если сервер с именем server42 имеет IP-адрес 10.0.0.42 , вы также можете использовать запись:
7.6.2. Специфичные для NFS параметры монтирования
bg : в случае неудачи при монтировании файловой системы повторять попытки в фоновом режиме.
fg : (используется по умолчанию) в случае неудачи при монтировании файловой системы повторять попытки, выводя информацию в текущую командную оболочку.
soft : прекратить процесс монтирования файловой системы после X неудачных попыток.
hard : (используется по умолчанию) продолжать предпринимать попытки монтирования файловой системы после неудач.
Комбинация параметров soft+bg позволяет осуществить наиболее быструю загрузку клиентской системы в случае неполадок с сервером NFS.
retrans=X : Попытаться соединиться с сервером X раз (по протоколу UDP).
tcp : Принудительно использовать протокол TCP (используется по умолчанию и всегда поддерживается).
udp : Принудительно использовать протокол UDP (не всегда поддерживается).
7.7. Практическое задание: монтирование файловых систем
1. Смонтируйте файловую систему, созданную в рамках малого раздела размером в 200 МБ, в точку монтирования /home/project22.
2. Смонтируйте файловую систему, созданную в рамках большого первичного раздела размером в 400 МБ, в точку монтирования /mnt, после чего скопируйте некоторые системные файлы в эту директорию (рекомендуется скопировать все содержимое директории /etc). После этого отмонтируйте файловую систему и повторно смонтируйте ее в точку монтирования /srv/nfs/salesnumbers в режиме только для чтения. Где оказались скопированные вами ранее файлы?
3. Проверьте корректность своих выполненных действий с помощью утилит fdisk , df и mount . Также изучите содержимое файлов /etc/mtab и /proc/mounts .
4. Сделайте так, чтобы монтирование обеих файловых систем осуществлялось автоматически на постоянной основе, после чего проверьте работоспособность использованного механизма монтирования.
5. Что случится, если вы смонтируете файловую систему в директорию, в которой уже содержатся файлы?
6. Что случится, если вы смонтируете две файловых системы в одну и ту же точку монтирования?
7 (дополнительное задание). Дайте пояснения относительно различий между данными утилитами: find, locate, updatedb, makewhatis, whereis, apropos, which и type.
8 (дополнительное задание). Выполните проверку файловой системы, созданной в разделе, который смонтирован в директорию /srv/nfs/salesnumbers.
7.8. Процедура корректного выполнения практического задания: монтирование файловых систем
1. Смонтируйте файловую систему, созданную в рамках малого раздела размером в 200 МБ, в точку монтирования /home/project22.
2. Смонтируйте файловую систему, созданную в рамках большого первичного раздела размером в 400 МБ, в точку монтирования /mnt, после чего скопируйте некоторые системные файлы в эту директорию (рекомендуется скопировать все содержимое директории /etc). После этого отмонтируйте файловую систему и повторно смонтируйте ее в точку монтирования /srv/nfs/salesnumbers в режиме только для чтения. Где оказались скопированные вами ранее файлы?
Теперь вы можете обнаружить скопированные ранее файлы в директории /srv/nfs/salenumbers .
Но физически эти файлы все также хранятся в рамках файловой системы ext3 на разделе жесткого диска, представленном файлом устройства /dev/sdb1
3. Проверьте корректность своих выполненных действий с помощью утилит fdisk , df и mount . Также изучите содержимое файлов /etc/mtab и /proc/mounts .
В выводах всех трех приведенных выше команд должна содержаться информация о смонтированных вами файловых системах и файлах устройств соответствующих разделов дисков.
4. Сделайте так, чтобы монтирование обеих файловых систем осуществлялось автоматически на постоянной основе, после чего проверьте работоспособность использованного механизма монтирования.
Добавьте следующие строки в файл /etc/fstab
5. Что случится, если вы смонтируете файловую систему в директорию, в которой уже содержатся файлы?
Уже имеющиеся файлы будут скрыты до момента отмонтирования файловой системы, к примеру, с помощью утилиты umount .
6. Что случится, если вы смонтируете две файловых системы в одну и ту же точку монтирования?
Будут доступны файлы только из последней смонтированной файловой системы.
7 (дополнительное задание). Дайте пояснения относительно различий между данными утилитами: find, locate, updatedb, makewhatis, whereis, apropos, which и type.
8 (дополнительное задание). Выполните проверку файловой системы, созданной в разделе, который смонтирован в директорию /srv/nfs/salesnumbers.
Источник