Монтирование диска в linux

В этом руководстве будет рассмотрен процесс монтирования новых дисков и разделов на виртуальные серверы под управлением операционных систем семейства Linux.

Виртуальный сервер на базе Linux

  • Бесплатное тестирование
  • Безлимитный трафик
  • От 318 руб./мес.

Монтирование

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

С помощью команды fdisk необходимо посмотреть какие диски доступны для монтирования:

Доступные диски для монтирования

Доступные диски для монтирования

В нашем примере мы будем монтировать устройство /dev/sdb.

Теперь с помощью команды fdisk разобьем диск на разделы:

Попадаем в меню команды fdisk.

Welcome to fdisk

Список доступных команд можно получить введя m

Command (m for help): m

Примечание: очередность имеет значение, чем ближе раздел к началу диска — тем больше скорость считывания, из-за скорости вращения.

Далее выполните команды в интерфейсе утилиты fdisk. Создаем раздел с помощью опции n, при выборе типа укажите “основной” с помощью опции p.

Примечание: если Вы хотите выбрать значение по умолчанию, то нажмите Enter.

Создание раздела primary

Далее создадим второй раздел «extended», при выборе типа указав опцию “е”.

Создание раздела extended

Создадим логический раздел (логический раздел будет определен автоматически).

Создание логического раздела

Выводим созданные разделы на экран для проверки, с помощью опции p.

Вывод созданных разделов

Необходимо сохранить внесенные изменения с помощью опции w.

The partition table has been altered

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

mkfs.ext4 /dev/sdb1 mkfs.ext4 /dev/sdb5

Примечание: расширенный раздел не может быть отформатирован с файловыми системами, такими как ext3, FAT или NTFS, и не может непосредственно содержать данные.

Описание созданной файловой системы

Далее необходимо создать точку монтирования для каждого раздела:

mkdir /mnt/disk1
mkdir /mnt/disk2

Примечания:
— обычно точка монтирования создается в директориях /mnt или /media;
— для расширенного раздела точку монтирования создавать не нужно.

Измените режим доступа к разделам:

chmod -R 660 /mnt/disk1
chmod -R 660 /mnt/disk2

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

Добавьте следующие строки:

/dev/sdb1 /mnt/disk1 ext4 defaults 0 0
/dev/sdb5 /mnt/disk2 ext4 defaults 0 0


Как в Linux подключить новый диск, разметить и отформатировать разделы

Оглавление

В этой небольшой заметке я покажу на практическом примере, как работать с дисками в Linux.

Активация диска в Linux

Предположим вы подключили новый диск, на котором ещё нет файловой системы. Система его не видит и нам нужно выполнить команды для его подключения.

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

При подключении нового диска нам нужно:

  • разметить его на разделы
  • отформатировать каждый раздел для создания файловой системы
  • смонтировать диск для возможности записи и чтения данных
  • настроить автоматическое монтирование при включении компьютера

Как узнать имена дисков, как просмотреть все диски в системе

Начать нужно с того, чтобы узнать имя диска, который мы будем изменять. В Linux совсем непохожая на Windows система обозначения дисков. Вместо привычных дисков C, D, E и так далее, в Linux диски это устройства в папке /dev/. В dev вообще все возможные устройства, даже весьма экзотические, не существующие в Windows.

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

Как видно из скриншота, имеется диск /dev/nvme0n1. Затем перечислены два устройства /dev/nvme0n1p1 и /dev/nvme0n1p2. По совпадающему части названия nvme0n1 можно понять, что это разделы, на которые разделён диск /dev/nvme0n1.

Также имеется диск /dev/sda, который не разделён ни на какие разделы — именно его я и буду подключать.

Разметка дисков (разделение на разделы) в Linux

В консоли диск можно разбить на разделы командой cfdisk. После неё укажите имя диска, с которым вы хотите выполнить действия:

Диск может быть GPT или MBR (показывается как dos). Вы без труда найдёте множество информации об этих таблицах разделов в Интернете. Только отмечу, что GPT является более современной и имеет больше возможностей. Поэтому если не нужно работать со старым железом, которое понимает только MBR, то выбираем GPT.

Для создания диска выберите Новый:

Введите его размер.

Если нужно, поменяйте тип раздела:

Затем переместитесь вниз на свободное место и повторяйте эти действия по созданию разделов. Когда закончите, выберите Запись.

Форматирование разделов

Для форматирования в ext4:

Для форматирования в ext3:

Для форматирования в ext2:

Для форматирования в FAT32:

Мой пример (я не стал разбивать диск на разделы):

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

Монтирование и размонтирование дисков

С дисками в /dev/ нельзя работать напрямую, то есть нельзя на них записывать файлы или копировать с них файлы. Для работы с ними их нужно смонтировать. Это делается командой mount.

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

Эта концепция может показаться непривычной пользователям Windows, но это очень удобно! Диск можно смонтировать в любую папку. Например, домашняя папка может быть на другом диске — удобно при переустановке системы — данные не нужно копировать в безопасное место, поскольку они уже на другом диске.

Для монтирования используется команда вида:

Допустим, я хочу, чтобы новый диск был подключён (смонтирован) к папке /mnt/disk_d. Название можно выбрать любое и точка монтирования необязательно должна быть в директории /mnt/ — можно сделать в домашней папке или в любой другой.

Начинаем с создания директории, в которую будет смонтирован диск:

Разрешаем доступ всем в этот диск, чтобы обычный пользователь также мог смотреть и записывать туда файлы:

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

Для размонтирования диска используется любая из двух команд:

Автоматическое монтирование диска при загрузке Linux

Диски для монтирования при запуске Linux прописаны в файле /etc/fstab.

Допустим, я хочу при загрузке монтировать диск /dev/sda в директорию /mnt/disk_d/. При этом я хочу чтобы диск был доступен для чтения и записи пользователем. Тогда я создаю каталог — точку монтирования:

Открываю файл /etc/fstab:

и дописываю туда следующую строчку:

В этой строке вам нужно заменить

  • /dev/sda — на диск, который вы желаете смонтировать
  • mial — на имя вашего пользователя
  • /mnt/disk_d — на вашу точку монтирования, которую вы выбрали для своего диска.
  • ext4 — на файловую систему вашего диска

Если вы не уверены в файловой системе или её обозначении, то выполните команду:

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

Чтобы ваш пользователь имел доступ к этой папке без необходимости повышать свои привилегии, выполните команду:

Можно более тонко настроить права доступа — например, создав группу, только члены которой будут иметь доступ к диску.

Обратите внимание, что если вы что-то неправильно сделали в файле /etc/fsta, то система не сможет загрузиться в графический интерфейс и вам придётся всё исправлять из консоли. Ссылка на дополнительную инструкцию в конце этой статьи.

Подключение съёмного носителя (флешки, внешнего диска) в Linux

Между прочим, многие дистрибутивы Linux при подключении USB флешки или внешнего диска автоматически их монтируют. Автоматическое монтирование обычно является функцией окружения рабочего стола. То есть на одном и том же дистрибутиве Linux, но с разными рабочими столами (версии Linux Mint как пример) автомонтирование может иметься или отсутствовать.

Если этого не произошло, значит нужно смонтировать вручную. Этот процесс ничем не отличается от обычного монтирования дисков: также создайте точку монтирования и используйте команду mount.

Съёмные носители можно монтировать через /etc/fstab, для этого даже есть специальная опция nofail — игнорировать ошибки, если диск отсутствует.

Как просмотреть все диски и точки монтирования

Для этого используйте уже знакомую нам команду:

Как удалить разделы диска

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

Откройте диск в gdisk:

Для перехода в экспертный режим там введите

Затем для удаления GPT введите

Дважды согласитесь, чтобы полностью очистить диск.

Перемонтирование диска с правами записи

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

В ней /dev/sdb1 замените на имя вашего раздела.

Если вы столкнулись с ошибкой:

То нужно выполнить команду (замените /dev/sdb1 на ваш раздел):

После этого перемонтируйте диск.

Обратите внимание, что если вы монтируете диск с файловой системой NTFS, то у вас должен быть установлен пакет ntfs-3g, иначе что бы вы не делали, диск будет только для чтения.

Заключение

Если у вас ещё остались вопросы, то задавайте их в комментариях.

Ещё несколько советов и проблемных случаев рассмотрено в статье «Работа с дисками в BlackArch (монтирование, решение проблем)» — эта статья подходит для всех дистрибутивов, не только BlackArch.


Команда mount или как правильно смонтировать диск в Линукс

Разделы дисков в операционной системе Linux подключены совершенно иным способом, если сравнивать с ОС Windows. Здесь имеется специальная корневая файловая система. Именно к ней присоединяются всевозможные разделы и устройства, которые планирует эксплуатировать пользователь ПК в последующем.

Стоит отметить, что системные разделы создаются в автоматическом режиме. Происходит это во время старта всей системы. Если пользователю необходимо подключить определенные разделы, зачастую это выполняется ручным способом с помощью специальной утилиты «mount».

Монтирование что это?

Монтирование — это подключение диска, раздела, каталога или файла в корневую систему Linux.

Как уже сказано было выше, в ОС «Линукс» имеется общая корневая система. Именно к ней подключаются все устройства и ресурсы, которыми пользуется владелец ПК. Если углубиться в эту сферу более подробно, Windows выполняет процедуры аналогично, но все процесс скрыты от пользователя.

После монтирования определённый раздел становится частью корневой системы, которая всяческими способами пытается сделать свою работу максимально прозрачной. К примеру, после монтирования оперативной памяти или удаленной системной папки пользователь может изучить ее в файловом менеджере. Допускается работа с такими разделами. Она будет аналогична работе, которая касается локального диска.

Синтаксис

Чаще всего такую процедуру выполняют специальные сервисы, входящие в состав оболочки системы. Случаются ситуации, когда они просто-напросто недоступны. Здесь потребуется выполнить задачу ручным методом. Пользователь самостоятельно задает опции для монтирования, вводит различные параметры.

mount (файл_устройства) (папка куда монтировать)

Процесс использования утилиты подразумевает обаятельное применение всевозможных опций, каждая из которых выполняет свою функцию. К примеру, опция «-t» является необязательной, но дает возможность без особого труда задать файловую систему, которая в последующем будет использоваться. Нередко это оказывается весьма полезным.

Специальная опция «-о» позволяет предварительно прописать параметры, которые будут распространяться на монтирование. В синтаксис обаятельно включен адрес файл, по которому расположено само устройство, а также папка назначения.

Перед тем, как приступить к полноценному использованию утилиты «mount», рекомендуется максимально подробно изучить список опций. На самом деле их огромное множество, но чаще всего применяются:

  • «-v». Отображение максимально подробного режима.
  • «-a». Монтируются все требуемые устройства, которые предварительно прописаны в fstab
  • «-F». Создается отдельный экземпляр утилиты для каждого из исследуемых разделов.
  • «-n». Исключается вероятность записи информации о выполняемом монтировании в /etc/mtab.
  • «-f». Исключается вероятность осуществления каких-либо действий. С помощью такой опции можно посмотреть перечень процедур, которые планирует выполнить утилита.
  • «-l». Добавляется специальная метка на диск, которая приравнивается к точке монтирования.
  • «-c». При выполнении команды не использовать относительные пути, а руководствоваться только абсолютными путями (пример — /etc/exim4) .
  • «-r». Создаваемый раздел будет доступен лишь для чтения.
  • «-w». Создаваемый раздел будет доступен как для чтения, так и для записи.
  • «-L». Монтируется раздел с использованием метки.
  • «-U». Монтируется раздел с использованием UUID.
  • «-T». Появляется возможность применения альтернативного fstab
  • «-B». Монтируется раздел в локальную папку
  • «-R». Перемонтируется сама локальная папка.
  • «-h». Вывести справочную информацию.
  • «-V». Параметр покажет текущею версию утилиты.

Представленный выше список опций является неполным. Такие функции основные, чаще всего могут потребоваться пользователю операционной системы «Линукс» во время работы с утилитой «mount».

Примеры

Наиболее простая команда, позволяющая изучить список всех устройств, примонтированных в вашей операционной системе Линукс. Достаточно ввести утилиту без параметров.

Смонтируем раздел /dev/sda6 в папку /root/newpapka. Предварительно посмотрим все разделы в Линукс, с помощью команды «df -h».

mount /dev/sda6 /root/newpapka

ВАЖНО! Обычно команда mount требует прав суперпользователя, если обратного не требует fstab.

Есть несколько вариантов запуск утилиты от root:

  1. Войти в учетную запись root.
  2. Использовать sudo.
  3. Ввести команду su-.

Утилита дает возможность сделать монтировать одну папку в другую. Для этого предусмотрена специальная опция «—bind».

sudo mount —bind /root/katalog /root/newpapka

Пользователю может потребоваться указание определённой файловой системы. Для этого посмотрим список всех разделов, с помощью df -h.

Далее узнаем к какой файловой системе относится раздел /dev/sda6, с помощью утилиты «file».

Примонтируем файловую систему «ext4» в каталог «primercataloga». В данном случае используется опция «-t».

mount -t ext4 /dev/sda6 /root/primercataloga

Если в последующем смонтированная файловая система будет использоваться только для чтения, применяется опция «-r». Для примера смонтируем /dev/sda6 в ту же папку «newpapka», однако так как мы уже делали это в прошлом примере, система будет ругаться. «already mounted or /root/newpapka busy».

Именно поэтому нужно сначала размонтировать каталог. Для этого будем использовать команду umount.

Далее монтируем с опцией -r.

mount -r /dev/sda6 /root/newpapka

Есть возможность указать и иные опции, которые будут распространяться на смонтированные разделы в «Линукс». Если требуется запрет выполнения программ в определенной файловой системе, вводится:

mount -t ext4 -o noexec /dev/sda6 /root/primercataloga

При монтировании диска можно указать не только имена различных устройств. Для составления команды нередко применяется UUID. Вводится:

sudo mount —uuid=»a5d3369c-8c1b-42c4-869f-05d9d286196e» /katalog

где a5d3369c-8c1b-42c4-869f-05d9d286196e — это уникальный номер uuid. Посмотреть его можно с помощью утилиты blkid.

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

sudo e2label /dev/sda6

Утилита e2label умеет изменять метки, а также выводить их на экран.

sudo mount —label=»root1″ /root/katalog

Утилита «mount» имеет широкие возможности. С ее помощью можно монтировать не только определенные разделы, но и файлы, например образы iso. Это можно осуществить только в том случае, если в них содержится файловая система.

sudo mount /root/obraz-diska.iso /root/disk

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


Монтирование диска в Linux

Разделы дисков в Linux подключаются к системе совсем не так, как в Windows. Здесь есть корневая файловая система, куда подключаются все другие разделы и устройства, которые вы будете использовать. Системные разделы монтируются автоматически при старте системы. Но если вам нужно подключить дополнительные разделы, в некоторых случаях, может понадобиться это делать вручную.

В этой статье мы рассмотрим как выполняется монтирование диска в Linux, поговорим о том, как правильно использовать утилиту mount, umount и посмотреть какие разделы куда примонтированы.

Что такое монтирование?

Как я уже сказал Linux имеет единую корневую файловую систему, куда подключаются все запоминающие устройства и другие ресурсы. На самом деле, в Windows происходит что-то подобное, только все это скрыто от пользователя.

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

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

Монтирование дисков в Linux

Обычно, монтированием занимаются специальные сервисы оболочки, но не всегда они доступны. А иногда нужно сделать все вручную, чтобы задать дополнительные опции монтирования или другие параметры. Для монтирования в Linux используется команда mount. Рассмотрим ее параметры:

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

Это не все, но основные опции, которые вам понадобятся во время работы с утилитой. Также, возможно, вы захотите знать список опций монтирования, которые могут быть полезными. Они все перечислены в статье автоматическое монтирование в fstab и писать их еще и здесь нет смысла. А теперь перейдем к примерам и рассмотрим как монтировать диск в linux.

Монтирование разделов с помощью mount

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

sudo mount /dev/sdb6 /mnt/

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

sudo mount -v /dev/sdb6 /mnt/

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

sudo mount -v -t ext4 /dev/sdb6 /mnt

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

sudo mount -t ext4 -r /dev/sdb6 /mnt
$ sudo mount -t ext4 -o ro /dev/sdb6 /mnt

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

sudo mount -t ext4 -o noexec /dev/sdb6 /mnt

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

Вы можете использовать не только имена устройств чтобы выполнить монтирование диска в linux. Для этого можно применять UUID или метки, например, монтирование с помощью UUID:

sudo mount —uuid=»b386d309-05c1-42c8-8364-8d37270b69e0″ /mnt

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

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

sudo mount —label=»home» /mnt/

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

sudo mount —bind /mnt/ /media/

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

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

Размонтирование устройств в Linux

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

sudo umount /mnt

Теперь ваше устройство не смонтировано. Но иногда может возникнуть ошибка размонтирования. Система сообщит, что устройство занято: umount: /mnt: target is busy.

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

lsof -w /mnt
$ lsof -w /dev/sdb6

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

sudo umount -l /mnt

Выводы

В этой статье мы рассмотрели как выполняется монтирование жестких дисков linux, а также разделов и даже образов. Вы знаете как правильно использовать опции mount и umount. Если у вас остались вопросы, спрашивайте в комментариях!


Монтирование диска в Linux — команда mount

Монтирование — это подключение диска, раздела, каталога или файла в корневую систему Linux.

Как уже сказано было выше, в ОС «Линукс» имеется общая корневая система. Именно к ней подключаются все устройства и ресурсы, которыми пользуется владелец ПК. Если углубиться в эту сферу более подробно, Windows выполняет процедуры аналогично, но все процесс скрыты от пользователя.

После монтирования определённый раздел становится частью корневой системы, которая всяческими способами пытается сделать свою работу максимально прозрачной. К примеру, после монтирования оперативной памяти или удаленной системной папки пользователь может изучить ее в файловом менеджере. Допускается работа с такими разделами. Она будет аналогична работе, которая касается локального диска.

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

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

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

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

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

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

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

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

Вывод списка смонтированных файловых систем(ФС)

При выполнении без аргументов команда mount выведет все подключенные в данный момент ФС:

По умолчанию результат будет содержать все ФС, в том числе виртуальные, такие как cgroup, sysfs и т. д. Каждая строка содержит информацию об имени устройства, директории, в которой оно смонтировано, типе и опциях монтирования в следующей форме:

имя_устройства on директория type тип_файловой_системы (опции)

Для отображения только ФС определенного типа используется опция -t. Например, так можно отобразить только разделы ext4:

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

Для подключения файловой системы к конкретному местоположению (точке монтирования) команда mount используется в следующей форме:

mount [опции…] имя_устройства директория

После подключения точка монтирования становится корневой директорией смонтированной ФС. Например, смонтировать жесткий диск /dev/sdb1 в директорию /mnt/media можно следующим образом:

$ sudo mount /dev/sdb1 /mnt/media

Обычно при монтировании устройства с распространенной ФС, например, ext4 или xfs, команда mount автоматически определяет ее тип. Однако, некоторые ФС не распознаются. Их тип нужно указывать в явном виде. Для этого используется опция -t:

mount -t тип имя_устройства директория

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

mount -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

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

sudo mount /dev/sdb6 /mnt/

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

sudo mount -v /dev/sdb6 /mnt/

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

sudo mount -v -t ext4 /dev/sdb6 /mnt

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

sudo mount -t ext4 -r /dev/sdb6 /mnt
$ sudo mount -t ext4 -o ro /dev/sdb6 /mnt

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

sudo mount -t ext4 -o noexec /dev/sdb6 /mnt

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

Вы можете использовать не только имена устройств чтобы выполнить монтирование диска в linux. Для этого можно применять UUID или метки, например, монтирование с помощью UUID:

sudo mount —uuid=»b386d309-05c1-42c8-8364-8d37270b69e0″ /mnt

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

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

sudo mount —label=»home» /mnt/

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

sudo mount —bind /mnt/ /media/

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

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

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

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

Примеры использования mount

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

  1. Создать точку монтирования
  2. Примонтировать файловую систему

Монтирование USB-накопителя/жесткого диска

В большинстве современных дистрибутивов Linux, например, Ubuntu, USB-накопители автоматически монтируются при подключении, но иногда может потребоваться ручное монтирование устройства. Чтобы смонтировать USB-накопитель, выполните следующие действия.

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

sudo mkdir -p /media/usb

Если USB-накопитель использует устройство /dev/sdd1, его можно смонтировать в директорию /media/usb следующей командой:

sudo mount /dev/sdd1 /media/usb

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

  • fdisk -l
  • ls -l /dev/disk/by-id/usb*
  • dmesg
  • lsblk

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

Для монтирования файла ISO используется петлевое (loop) устройство — специальное виртуальное устройство, которое позволяет осуществлять доступ к файлу как к блочному устройству.

Сначала нужно создать точку монтирования в любой желаемой директории:

sudo mkdir /media/iso

Смонтируйте файл ISO следующей командой:

sudo mount /path/to/image.iso /mnt/iso -o loop

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

Монтирование NFS

Для монтирования системы NFS требуется установить клиент NFS. Установка клиента NFS в Ubuntu и Debian:

sudo apt install nfs-common

Установка клиента NFS в CentOS и Fedora:

sudo yum install nfs-utils

Создайте директорию, которая будет точкой монтирования удаленной файловой системы:

sudo mkdir /media/nfs

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

sudo nano /etc/fstab

Добавьте в файл следующую строку, заменив сервер:/директория на имя или IP-адрес сервера NFS и экспортируемую директорию:

сервер:/директория /media/nfs nfs defaults 0 0

Смонтируйте ресурс NFS следующей командой:

sudo mount /mnt/nfs

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

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

# sudo umount /mnt

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

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

umount: /mnt: target is busy.

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

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

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

# sudo umount -l /mnt

Пользовательские пространства имен

В листинге 1 приведена часть кода модуля PAM (pluggable authentication module, подключаемого модуля авторизации), который предоставляет каждому пользователю, кроме root, обособленное пространство имен. Если директория /tmp/priv/USER существует, то она будет смонтирована с помощью bind на директорию /tmp в пользовательском пространстве имен.

Каждому пользователю — свой root

Настройка системы для организации отдельных каталогов root для каждого пользователя

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

В листинге 4 показан пример скрипта, используемого при создании любой учетной записи пользователя.

Adblock
detector