🐹 CentOS 7: Монтирование дисков. Утилита mount, umount.

Содержание:

1. Описание утилиты.
2. Общий синтаксис.
3. Монтирование разделов.
4. Список смонтированного.
5. Размонтирование разделов.
6. Оригиналы источников информации.


1. Описание утилиты.

Mount — утилита командной строки. Применяется для монтирования файловых систем.

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

Например, вы хотите примонтировать флешку. Вы даете системе команду подключить ее в каталог /run/media/имя_пользователя/UUID_флешки/. Система определяет файловую систему устройства, а затем, используя драйвера ядра подключает ее к указанному каталогу. Дальше вам остается работать с тем каталогом, как с любым другим. Больше ни о чем думать не нужно. Когда надумаете извлечь флешку, ее нужно отмонтировать.

2. Общий синтаксис.

Для монтирования в CentOS 7 используется команда mount.

# mount [OPTION...] DEVICE_NAME DIRECTORY

После присоединения файловой системы точка монтирования становится корневым каталогом смонтированной файловой системы.

Рассмотрим ее параметры:

# mount /файл_устройства /каталог_назначения

После присоединения файловой системы точка монтирования становится корневым каталогом смонтированной файловой системы.

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

Используйте параметр -t чтобы указать тип файловой системы:

# mount -t TYPE DEVICE_NAME DIRECTORY

Чтобы указать дополнительные параметры монтирования , используйте параметр -o:

# mount -o OPTIONS DEVICE_NAME DIRECTORY

Несколько вариантов могут быть представлены в виде списка, разделенного запятыми (не вставляйте пробел после запятой).

Вы можете получить список всех вариантов монтирования, набрав в терминале man mount .

Иными словами:

# mount опции -t файловая_система -o опции_монтирования /файл_устройства /каталог_назначения

Опции задают различные дополнительные особенности работы утилиты.

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

С помощью опции -o вы можете задать различные параметры монтирования, например, монтировать только для чтения и так далее.

Крайних два параметра — это файл устройства, например, /dev/sda1 и каталог назначения, например, /mnt.

Перед тем как перейти к рассмотрению примеров работы утилитой, давайте рассмотрим ее основные опции:

  • -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 — перемонтировать локальную папку.

3. Монтирование разделов.

3.1. Простое монтирование.

Монтирование разделов с помощью mount выполняется очень просто. Фактически в большинстве случаев будет достаточно упрощенной версии команды.

Например, смонтируем раздел /dev/sdb2 в папку /mnt:

# sudo mount /dev/sdb2 /mnt/

3.2. Монтирование с правами суперпользователя.

В большинстве случаев вы будете вынуждены выполнять команду mount с правами суперпользователя, если обратное не указано в fstab (опция монтирования users).

Вы можете посмотреть информацию о процессе монтирования добавив опцию -v:

# sudo mount -v /dev/sdb2 /mnt/

3.3. Монтирование с указанием файловой системы.

Если нужно, вы можете указать файловую систему с помощью опции -t:

# sudo mount -v -t ext4 /dev/sdb2 /mnt

3.4. Монтирование только для чтения.

Если необходимо примонтировать файловую систему только для чтения, то вы можете использовать опцию -r или опцию монтирования -o, результат будет одинаковым:

# sudo mount -t ext4 -r /dev/sdb2 /mnt
# sudo mount -t ext4 -o ro /dev/sdb2 /mnt

3.5. Ограничения на выполнение программ.

Вы можете использовать и другие опции чтобы выполнить монтирование разделов, например, указать, что на этом разделе нельзя выполнять программы:

# sudo mount -t ext4 -o noexec /dev/sdb2 /mnt

Обратите внимание, что вы не можете использовать опции uid, gid, fmask для файловых систем ext. Они поддерживаются только в FAT, vFAT, exFAT.

3.6. Монтирование по UUID.

Вы можете использовать не только имена устройств чтобы выполнить монтирование диска в CentOS 7.

Для этого можно применять UUID или метки, например, монтирование с помощью UUID:

# sudo mount --uuid="b386d309-05c1-42c8-8364-8d37270b69e0" /mnt

Посмотреть UUID для ваших разделов можно с помощью команды:

# sudu blkid

или так

# blkid /dev/sdb1

Также соответствие «классических» имен устройств и их UUID представлений можно посмотреть вот так:

# ls -l /dev/disk/by-uuid/

3.7. Монтирование по метке.

Точно так же вы можете использовать метки. Команда монтирования диска CentOS 7 будет выглядеть так:

# sudo mount --label="home" /mnt/

3.8. Монтаж каталога к каталогу.

Вы можете примонтировать один каталог в другой, для этого используйте опцию --bind:

# sudo mount -v -R --rbind /mnt/ /media/

3.9. Монтирование файлов с файловой системой.

Возможно, не только монтирование разделов CentOS 7, но и монтирование файлов, если они содержат файловую систему, например, образов дисков.

Монтирование образа диска CentOS 7 работает точно так же:

# sudo mount ~/file.iso /mnt

3.10. Монтирование файловой системы с помощью /etc fstab.

Предоставляя только один параметр (каталог или устройство) команде mount , она будет читать содержимое файла конфигурации /etc/fstab чтобы проверить, указана ли указанная файловая система в списке или нет.

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

Файл /etc/fstab содержит список записей в следующем виде:

# mcedit /etc/fstab

[File System] [Mount Point] [File System Type] [Options] [Dump] [Pass]

Используйте команду mount в одной из следующих форм, чтобы присоединить файловую систему, указанную в /etc/fstab:

mount [OPTION...] DIRECTORY
mount [OPTION...] DEVICE_NAME

3.11. Установка USB-накопителя.

Чтобы вручную подключить USB-устройство, выполните следующие действия.

Создайте точку монтирования:

# sudo mkdir -p /media/usb

Предполагая, что USB-накопитель использует устройство /dev/sdd1 вы можете /dev/sdd1 его к каталогу /media/usb, набрав:

# sudo mount /dev/sdd1 /media/usb

Чтобы узнать тип устройства и файловой системы, вы можете использовать любую из следующих команд:

# fdisk -l

# ls -l /dev/disk/by-id/usb*

# dmesg

# lsblk

Чтобы смонтировать USB-накопители в формате exFAT, установите бесплатный модуль и инструменты FUSE exFAT.

3.12. Монтирование файлов ISO.

Вы можете смонтировать файл ISO с помощью устройства loop, которое представляет собой специальное псевдоустройство, которое делает файл доступным как блочное устройство.

Начните с создания точки монтирования, это может быть любое место, которое вы хотите:

# sudo mkdir /media/iso

Подключите ISO-файл к точке монтирования, введя следующую команду:

# sudo mount /path/to/image.iso /media/iso -o loop

Не забудьте заменить /path/to/image.iso путем к вашему файлу ISO.

4. Список смонтированного.

Посмотреть список всех примонтированных устройств можно просто выполнив mount без параметров:

# mount

По умолчанию вывод будет включать все файловые системы, включая виртуальные, такие как cgroup, sysfs и другие.

Каждая строка содержит информацию об имени устройства, каталоге, в который оно смонтировано, типе файловой системы и параметрах монтирования в следующей форме:

device_name on directory type filesystem_type (options)

Чтобы отобразить только определенные файловые системы, используйте параметр -t.

Например, чтобы распечатать только разделы ext4, которые вы должны использовать:

# mount -t ext4

Ответ:

5. Размонтирование разделов.

Когда вы хотите завершить работу с устройством, особенно с флешкой, его нужно размонтировать. Для этого существует утилита umount. В качестве параметров она принимает точку монтирования или устройство.

Чтобы отсоединить смонтированную файловую систему, используйте команду umount после которой укажите либо каталог, в котором она была смонтирована (точка монтирования), либо имя устройства:

# umount DIRECTORY
# umount DEVICE_NAME

Если файловая система используется, команда umount не сможет отсоединить файловую систему.

Например:

# sudo umount /mnt

В таких ситуациях вы можете использовать команду fuser чтобы узнать, какие процессы обращаются к файловой системе:

# fuser -m DIRECTORY

Ответ:

Как только вы определите процессы, вы можете остановить их и размонтировать файловую систему.

Например, ваше устройство не смонтировано, но иногда может возникнуть ошибка размонтирования.

Система сообщит, что устройство занято:

umount: /mnt: target is busy.

Проблему можно решить закрыв все программы, которые могут использовать любой файл в этой папке.

Какие именно это программы вы можете узнать с помощью команды lsof:

# lsof -w /mnt
# lsof -w /dev/sdb6

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

Ленивое отключение.

Используйте параметр -l ( --lazy ), чтобы отключить занятую файловую систему, как только она больше не будет занята.

# umount -l DIRECTORY

Вы можете завершить все программы, а потом снова повторить попытку или используйте опцию -l, файловая система будет отключена немедленно, несмотря на то, что она занята:

# sudo umount -l /mnt

Размонтировать принудительно.

Используйте параметр -f ( --force ), чтобы принудительно размонтировать. Этот параметр обычно используется для отключения недоступной системы NFS.

# umount -f DIRECTORY

Обычно не рекомендуется принудительное отключение, так как это может повредить данные в файловой системе.

6. Оригиналы источников информации.

  1. ru.wikipedia.org «mount».
  2. losst.ru «Монтирование диска в Linux».
  3. routerus.com «Как монтировать и размонтировать файловые системы в Linux».

Читайте также: