Mount linux что это
Что такое монтирование и как пользоваться командой mount (РЕШЕНО)
Что такое монтирование
Монтирование в Linux позволяет получить доступ к содержимому диска и организовать структуру файловой системы. С помощью монтирования также можно открыть для работы образ диска (например, созданного с помощью программы dd), а также открыть для доступа и редактирования самые разные файловые системы и образы дисков (например, образы дисков виртуальных машин); даже удалённые сетевые директории могут быть смонтированы, в результате чего они станут доступны как будто бы файлы на любом другом локальном хранилище.
Кроме того, что с помощью монтирования можно работать с образами дисков, правильные настройки монтирования необходимы для компьютера к которому подключается диск для криминалистического анализа — например, этот диск не должен автоматически монтироваться с правами записи (чтобы не быть испорченным).
В Linux есть такое понятие как «монтирование» диска. Чтобы получить доступ к файлам на этом диске, его нужно сначала смонтировать. Может возникнуть вопрос, зачем такие сложности? Монтирование это мощнейшая вещь, которая позволяет поразительно гибко настроить файловую систему!
Суть монтирования в том, что в файловой системе создаётся новая директория (обычная папка), допустим, это папка /mnt/disk_d. А затем командой mount указывается, что теперь, например, диск /dev/sda смонтирован в директорию /mnt/disk_d. После этого можно получить доступ к файлам диска /dev/sda открыв папку /mnt/disk_d в любом менеджере файлов:
С помощью такого подхода — когда любой диск может быть любой папкой в системе, можно делать очень гибкую настройку. Самый частый пример, встречающийся на практике: файлы пользователя хранятся в папке /home/имя_пользователя/, например, у меня это папка /home/mial/. При установке операционной системы я могу сделать так, что мой второй или третий диск (а не системный) будет смонтирован в точку /home/mial/. То есть вся операционная система будет располагаться на одном диске, а все мои пользовательские файлы — на другом. Что это даёт? В случае переустановки системы, я вновь настрою монтирование диска с моими файлами в папку /home/mial/ и в результате в новой, только что установленной системе, уже будут на месте все мои документы, фотографии и прочее!
Поскольку часто узким местом в мощных компьютерах является скорость чтения с диска, то на на серверах с высокой нагрузкой практикуется перенос файлов баз данных (например, /var/lib/mysql/ на другой диск), возможен перенос файлов сервера (/srv/http/) на третий диск, файлов логов (/var/log/httpd/) на ещё один диск и т. д. Это позволяет добиться того, что данные из баз данных считываются независимо от записи журналов, то есть пока выполняются операции чтения-записи для одного процесса, другому процессу не нужно ждать своей очереди — всё выполняется одновременно.
В общем, несмотря на то, что монтирование является чем-то непривычным для пользователей Windows, это потрясающая функция! Причём ничего сложного в этом нет, если понять суть.
Как увидеть точки монтирования
Для просмотра устройств и точек их монтирования, выполните команду:
Эта команда отображает целевую точку монтирования (TARGET), исходное устройство (SOURCE), тип файловой системы (FSTYPE) и соответствующие параметры монтирования (OPTIONS) для каждой файловой системы, как показано на скриншоте. Подробности смотрите в статье «Команда findmnt для просмотра смонтированных файловых систем в Linux».
Команда findmnt без опций покажет больше данных:
Но среди вывода будут различные виртуальные файловые системы, которые нужны не всегда.
Команда mount также может показывать список точек монтирования, но эта функция в ней поддерживается только для обратной совместимости. Тем не менее, для вывода смонтированных реальных файловых систем вы можете использовать команду:
А для показа всех точек монтирования, запустите команду следующим образом:
Вы можете наблюдать процесс монтирования и размонтирования в реальном времени. К примеру, для отслеживания любых действий по монтированию и размонтированию в файловой системе используйте команду:
Как смонтировать диск
Общая команда монтирования диска имеет вид:
Среди ОПЦИЙ можно указать, например, тип файловой системы или режим только для чтения (по умолчанию монтирование выполняется для чтения и для записи). Существует большое количество опций, некоторые из которых применимы для всех файловых систем, а некоторые из которых специфичны только для определённых файловых систем. Программа mount имеет свои опции, которые относятся к поведению этой утилиты, а также имеются опции, которые относятся к файловым системам, такие опции указываются после -o.
Некоторые опции можно указать любым из этих способов, например, опцию -w, которая означает монтирование для чтения и записи (её псевдонимы —rw, —read-write), также можно указать как «-o rw».
Справочная информация по опциям будет приведена в конце данной статьи.
На самом деле, если вы хотите смонтировать диск для чтения и записи, то можно не указывать никакие опции.
Поэтому обычно для монтирования используется команда вида:
Начинаем с создания директории, в которую будет смонтирован диск:
Монтируем диск /dev/sda:
Разрешаем доступ всем в этот диск, чтобы обычный пользователь также мог смотреть и записывать туда файлы:
На самом деле, права доступа можно настроить более тонко — без полного разрешения для всех.
Как смонтировать диск только для чтения
Для монтирования диска с правами записи, используется любая из опций: -w, —rw, —read-write, -o rw. На самом деле, ни одну из них указывать не нужно, поскольку монтирования с правами записи является поведением по умолчанию.
Чтобы смонтировать диск только с правами чтения, используйте любой из вариантов опции: -r, —read-only, -o ro.
Обратите внимание, что, в зависимости от типа файловой системы, состояния и поведения ядра, система все ещё может записывать данные на устройство. Например, ext3 и ext4 будут использовать журнал, если файловая система загрязнена. Чтобы предотвратить такой доступ для записи, вы можете смонтировать файловую систему ext3 или ext4 с параметрами монтирования ro,noload или установить само блочное устройство в режим только для чтения с помощью команды blockdev:
Обратите внимание, что эффект команды blockdev проявится только если устройство не смонтировано. Если оно уже смонтировано, то изменения вступят в силу после перемонтирования.
Программа hdparm также позволяет установить флаг read-only устройства. Когда значение read-only установлено на 1, Linux не разрешает операции записи на устройство.
Чтобы установить флаг read-only:
Чтобы снять флаг read-only (устройство станет доступным для записи):
Чтобы проверить текущее состояние флага read-only:
Пример проверки значения флага read-only для диска /dev/nvme0n1:
Вывод (режим только чтение отключён, то есть возможна запись на устройство):
Альтернативный (классический) способ создания монтирования привязки только для чтения — использовать операцию повторного монтирования, например:
О привязке (bind) и перемонтировании будет далее.
Как размонтировать диск
Для размонтирования диска используется любая из двух команд:
Частой ошибкой является когда указывают с командой umount одновременно имя диска и точку монтирования — нужно указать только что-то одно.
Если вы получили ошибку, что диск занят, это означает, что какая-то программа держит открытым файл на этом диске. Чтобы выяснить, какая программа препятствует операции размонтирования/перемонтирования, можно использовать программу lsof следующим образом:
Как переместить точку монтирования
Можно переместить точку монтирования в другую директорию, для этого используется команда вида:
Это приведёт к тому, что содержимое, которое ранее отображалось в СТАРАЯ_ДИРЕКТОРИЯ, теперь будет доступно в НОВАЯ_ДИРЕКТОРИЯ. Физическое расположение файлов не меняется. Обратите внимание, что СТАРАЯ_ДИРЕКТОРИЯ должен быть точкой монтирования.
Также обратите внимание, что перемещение монтирования, находящегося под общим монтированием, недопустимо и не поддерживается. Используйте команду findmnt, чтобы увидеть текущие флаги распространения:
Как перемонтировать диск
Можно перемонтировать уже смонтированную файловую систему. Обычно это используется для изменения флагов монтирования файловой системы, особенно для того, чтобы сделать файловую систему доступной для записи. Это не меняет устройство или точку монтирования. Эта операция отличается от предыдущих двух: от привязки и перемещения она отличается тем, что не создаётся новая точка монтирования и не перемещается точка монтирования, но меняются опции монтирования.
Функциональность повторного монтирования соответствует стандартному способу работы команды mount с параметрами из fstab. Это означает, что mount не читает fstab (или mtab) только тогда, когда указаны и устройство, и каталог.
Команда перемонтирования имеет общий вид:
К примеру, чтобы перемонтировать диск, смонтированный в /mnt/disk_d, установив права доступа на «только для чтения»:
Можно также указать одновременно устройство и точку монтирования:
Пример перемонтирования корневой файловой системы с опцией «чтение и запись»:
Опция «чтение и запись» может быть помещена в опцию строки команды -o, например:
После этого вызова все старые параметры монтирования заменяются, а произвольные данные из fstab (или mtab) игнорируются, за исключением параметра loop=, который генерируется внутри и поддерживается командой mount.
После этого вызова mount читает fstab и объединяет эти параметры с параметрами из командной строки (-o). Если в fstab не найдена точка монтирования, разрешается повторное монтирование с неуказанным источником.
mount позволяет использовать —all для повторного монтирования всех уже смонтированных файловых систем, соответствующих указанному фильтру (-O и -t). Например, команда:
Как узнать имя диска для монтирования
Чтобы смонтировать диск (или файл образа) достаточно указать имя устройства и папку, куда его смонтировать (где будут доступны файлы с этого диска). Как мы уже выяснили, не нужно даже указывать тип файловой системы.
Но чтобы смонтировать нужный диск, нужно правильно указать его название или название его раздела.
Отсюда возникает вопрос, как узнать имя раздела для монтирования? Устройства в Linux имеют имена вида /dev/*. Большинство дисков и USB накопителей имеют имена вида /dev/sd*, где в качестве * (звёздочки) используются буквы от a и далее, то есть b, c, d… Номер буквы соответствует порядковому номеру диска в системе. Если диск разбит на разделы, то после буквы идёт цифра раздела, например, /dev/sda1, /dev/sda2 и так далее. Если диск не разбит на разделы, то его можно смонтировать по имени без цифры, например, /dev/sda. Если же диск разбит на разделы, то нужно указать его имя с цифрой раздела, например, /dev/sda3.
В зависимости от используемой технологии дисков, у них могут быть другие имена. Пример имени диска NVMe: /dev/nvme0n1. В этом случае нумерация разделов также не подчиняется описанным выше правилам, первый и второй разделы имеют имена /dev/nvme0n1p1 и /dev/nvme0n1p2 соответственно.
Итак, необходимо правильно определить имя диска (или имя раздела, если диск разбит на разделы).
Обзорную информацию о дисках в системе может дать команда:
Эта команда показала, что в системе есть диски трёх типов: SCSI (внутренний жёсткий диск), [SAT], ATA (жёсткий диск, подключённый по USB переходнику к компьютеру), NVMe (внутренний твердотельный диск).
На самом деле, вывод команды неполный (пропущена USB флешка) и в нём полностью отсутствует информация о разделах. Тем не менее она может помочь вам сориентироваться в присутствующих на вашей системе дисках.
Хорошим вариантом является следующая программа:
Она выводит информацию о каждом диске и каждом разделе. В информации присутствует модель диска, размер и тип разделов — основываясь на этих данных можно найти название нужного раздела.
Если диск монтируется автоматически, то его имя можно увидеть с помощью команда мониторинга:
Ещё одна команда, показывающая обзорную информацию об именах дисках, их файловых системах, ярлык и занятое пространство (в процентах) и доступный объём свободного места (в гигабайтах):
Возможно вы сможете найти полезную информацию в LABEL разделов, чтобы показать сразу все разделы, выполните:
Если вы уже почти определились с разделом и хотите подтвердить свою правоту, то информацию по конкретному разделу можно получить командой вида:
Команда file также может рассказать много интересного про раздел:
Подключение файловых систем. Команда mount в Linux
В ОС Linux команда mount используется для подключения (монтирования) файловых систем и переносных накопителей (например, USB-флешек) к конкретным точкам монтирования в дереве директорий. Команда umount отключает (размонтирует) смонтированную файловую систему от дерева директорий. В данном руководстве мы рассмотрим основы подключения и отключения различных файловых систем при помощи команд mount и umount.
Вывод списка смонтированных файловых систем(ФС)
При выполнении без аргументов команда mount выведет все подключенные в данный момент ФС:
По умолчанию результат будет содержать все ФС, в том числе виртуальные, такие как cgroup, sysfs и т. д. Каждая строка содержит информацию об имени устройства, директории, в которой оно смонтировано, типе и опциях монтирования в следующей форме:
Монтирование файловой системы
Для подключения файловой системы к конкретному местоположению (точке монтирования) команда mount используется в следующей форме:
После подключения точка монтирования становится корневой директорией смонтированной ФС. Например, смонтировать жесткий диск /dev/sdb1 в директорию /mnt/media можно следующим образом:
Можно указать несколько опций, разделенных запятыми (после запятых не должно быть пробелов). Ниже предоставлены основные опции команды
-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, чтобы выяснить, какие процессы осуществляют доступ к файловой системе:
Во всех остальных случаях принудительное отключение нежелательно, так как может привести к повреждению данных в файловой системе.
Сохранение параметров mount после перезагрузки
Для того, что бы устройства при перезагрузки системы монтировались автоматически, необходимо прописать инструкции монтирования в файл /etc/fstab. Файл /etc/fstab содержит список записей в следующем формате:
Подключит устройство /dev/sdb1 (например жесткий диск) в директорию /home
После того как инструкция для mount прописаны в /etc/fstab, что бы проверить правильность написания дайте команду
Если команда отработает без ошибок, то все устройства прописанные в /etc/fstab будут подключены, а также изменения не потеряются после перезагрузки.
Заключение
Мы рассмотрели наиболее распространенные примеры подключения различных файловых систем к дереву директорий при помощи команды mount и их отключения командой umount. Для получения более подробной информации об опциях команд mount и umount можно обратиться к соответствующим man-страницам.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Команда mount или как правильно смонтировать диск в Линукс
Разделы дисков в операционной системе Linux подключены совершенно иным способом, если сравнивать с ОС Windows. Здесь имеется специальная корневая файловая система. Именно к ней присоединяются всевозможные разделы и устройства, которые планирует эксплуатировать пользователь ПК в последующем.
Стоит отметить, что системные разделы создаются в автоматическом режиме. Происходит это во время старта всей системы. Если пользователю необходимо подключить определенные разделы, зачастую это выполняется ручным способом с помощью специальной утилиты «mount».
Монтирование что это?
Как уже сказано было выше, в ОС «Линукс» имеется общая корневая система. Именно к ней подключаются все устройства и ресурсы, которыми пользуется владелец ПК. Если углубиться в эту сферу более подробно, Windows выполняет процедуры аналогично, но все процесс скрыты от пользователя.
После монтирования определённый раздел становится частью корневой системы, которая всяческими способами пытается сделать свою работу максимально прозрачной. К примеру, после монтирования оперативной памяти или удаленной системной папки пользователь может изучить ее в файловом менеджере. Допускается работа с такими разделами. Она будет аналогична работе, которая касается локального диска.
Синтаксис
Чаще всего такую процедуру выполняют специальные сервисы, входящие в состав оболочки системы. Случаются ситуации, когда они просто-напросто недоступны. Здесь потребуется выполнить задачу ручным методом. Пользователь самостоятельно задает опции для монтирования, вводит различные параметры.
mount (файл_устройства) (папка куда монтировать)
Процесс использования утилиты подразумевает обаятельное применение всевозможных опций, каждая из которых выполняет свою функцию. К примеру, опция «-t» является необязательной, но дает возможность без особого труда задать файловую систему, которая в последующем будет использоваться. Нередко это оказывается весьма полезным.
Специальная опция «-о» позволяет предварительно прописать параметры, которые будут распространяться на монтирование. В синтаксис обаятельно включен адрес файл, по которому расположено само устройство, а также папка назначения.
Перед тем, как приступить к полноценному использованию утилиты «mount», рекомендуется максимально подробно изучить список опций. На самом деле их огромное множество, но чаще всего применяются:
Представленный выше список опций является неполным. Такие функции основные, чаще всего могут потребоваться пользователю операционной системы «Линукс» во время работы с утилитой «mount».
Примеры
Наиболее простая команда, позволяющая изучить список всех устройств, примонтированных в вашей операционной системе Линукс. Достаточно ввести утилиту без параметров.
mount /dev/sda6 /root/newpapka
ВАЖНО! Обычно команда mount требует прав суперпользователя, если обратного не требует fstab.
Есть несколько вариантов запуск утилиты от root:
Утилита дает возможность сделать монтировать одну папку в другую. Для этого предусмотрена специальная опция «—bind».
Далее узнаем к какой файловой системе относится раздел /dev/sda6, с помощью утилиты «file».
Примонтируем файловую систему «ext4» в каталог «primercataloga». В данном случае используется опция «-t».
Если в последующем смонтированная файловая система будет использоваться только для чтения, применяется опция «-r». Для примера смонтируем /dev/sda6 в ту же папку «newpapka», однако так как мы уже делали это в прошлом примере, система будет ругаться. «already mounted or /root/newpapka busy».
Именно поэтому нужно сначала размонтировать каталог. Для этого будем использовать команду umount.
Есть возможность указать и иные опции, которые будут распространяться на смонтированные разделы в «Линукс». Если требуется запрет выполнения программ в определенной файловой системе, вводится:
При монтировании диска можно указать не только имена различных устройств. Для составления команды нередко применяется UUID. Вводится:
При монтировании диска можно указать определенные метки. Для этих целей нужно предварительно узнать ту самую метку, потом уже можно приступить к монтированию.
sudo e2label /dev/sda6
Утилита e2label умеет изменять метки, а также выводить их на экран.
Утилита «mount» имеет широкие возможности. С ее помощью можно монтировать не только определенные разделы, но и файлы, например образы iso. Это можно осуществить только в том случае, если в них содержится файловая система.
sudo mount /root/obraz-diska.iso /root/disk
Как понятно из вышеописанного, пользоваться утилитой не так уж и сложно. Прописать команды может каждый, достаточно наличия базовых навыков программирования.