Как примонтировать флешку в linux

Обновлено: 02.07.2024

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

Contents

Монтирование USB устройств

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

Если этого не произошло см. далее.

Автоматическое монтирование с помощью udev

и исполняемый от root файл /usr/lib/udev/domount со следующим содержимым (необходимо вставить корректные для Вашей системы значения):

При подключении USB-диска происходит автомонтирование и открывается окно терминала. Чтобы размонтировать устройства, просто нажмите Ctrl + D в окне терминала. Место монтирования определяется в /etc/fstab или, при его отсутствии, создается на основе UUID раздела.

Чтобы ваш пароль не запрашивался при команде размонтирования, добавьте (заменить на ваше имя пользователя) имя_пользователя в /etc/sudoers с помощью команды visudo. См. Sudo (Русский)

Если терминал не появляется проверьте команду его запуска. Например, в xfce4, используется команда "Terminal -T <title> -e <script-file> .

Автомонтирование с использованием systemd

Предыдущий способ плох тем что выключает скрипт через 3 минуты, и окно с консолью завершится в любом случае. Поэтому создаем новый файл /etc/systemd/flash-mount@.service и пишем туда:

Теперь скрипт /usr/lib/udev/domount, вот улучшенная версия скрипта которая поддерживает русские символы:

Теперь применяем правила:

Монтируем флешку и проверяем!

Монтирование вручную

Где взять ядро, поддерживающее usb_storage

Если не используется самодельное (самосборное) ядро, то можно скачать одно из готовых, все имеющиеся ядра Arch Linux настроены должным образом. В случае самосборного ядра, следует убедиться, что при компиляции была включена поддержка SCSI, SCSI-Disk и usb_storage. Если установлена последняя версия udev, то можно просто подключить носитель, и система автоматически подгрузит все необходимые модули ядра. Более ранним версиям udev дополнительно потребуется наличие HotPlug. Либо то же самое можно сделать вручную:

Опознавание устройств

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

Использование системных имен (node names) ( /sd* )

Это наиболее простой способ, но присвоение имен зависит от порядка, в котором устройства были подключены. способы получения системных имён (именований по шине):

  • поиск среди результатов вывода команды dmesg системного имени устройства, для удобства можно использовать в сочетании с grep :
  • выполнением команды:

которая отобразит все доступные таблицы разделов.

Примечание: Если среди результатов нет устройства, то можно использовать команду lsusb , чтобы убедиться, что оно действительно было опознано системой.
Использование UUID

Чтобы узнать все UUIDы, известные системе, нужно выполнить:

Здесь можно видеть целый список дисков, видимых системой, и длинные строчки с символами. Так вот эти строчки и есть те самые uuidы.

  • Теперь нужно подключить USB устройство и подождать несколько секунд . . .
  • Заново выполнить blkid -o list -c /dev/null

Появилось новое устройство и UUID? Это и есть USB накопитель

Совет: Если blkid не работает так, как ожидалось (или не работает вообще), то можно заглянуть в поисках UUIDов в /dev/disk/by-uuid/ :

Монтирование USB флэш-памяти

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

От имени суперпользователя (root)

Монтировать устройство рутом при помощи команды (только нужно заменить device_node найденным устройством, как было показано выше):

Если mount не распознаёт формат устройства (файловой системы), то можно попробовать с ключом -t <тип файловой системы> , а также глянуть в mount(8) для просвещения.

Примечание: Если же вообще ничего не помогло, то, возможно, нужно чинить флэшку, см. Format a device. Но перед этим имеет смысл попробовать на другом компьютере или операционной системе.
От имени обычного пользователя при помощи mount

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

От имени обычного пользователя посредством fstab

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

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

Дело в том, что организация файловой системы Linux немного отличается от того, что мы привыкли видеть в Winodws. Здесь нет никаких дисков C,D,E и так далее, есть только корень, самая верхняя точка файловой системы, в подкаталоги которой подключаются все жесткие диски и внешние носители.

Если в системе используется окружение рабочего стола, то оно, как правило, берет на себя всю низкоуровневую работу чтобы выполнить монтирование флешки в linux. Система обнаруживает подключенную флешку и в системном лотке всплывает уведомление о подключенном устройстве. Дальше остается кликнуть по значку флешки, чтобы система выполнила все нужные для ее монитрования действия. Но если окружение рабочего стола не запущенно или вам нужно работать в консоли можно выполнить все действия по монтированию флешки вручную.

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

Монтирование флешки в Linux

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

Файлы флешек и других устройств хранения данных находятся в каталоге /dev. Устройства нумеруются по алфавиту sda, sdb, sdc, sdd и т д. Так как флешка подключается последней у нее будет старшая буква. Например, sdb или sdc. Имя sda принадлежит жесткому диску. Можно, конечно, просто посмотреть содержимое каталога /dev/, но такой способ ненадежный. Мы воспользуемся утилитой fdisk.

Подключите флешку и выполните:

usb

Как видите, здесь мы можем посмотреть детальную информацию об устройстве. Имя файла, список разделов, формат таблицы разделов, список разделов. А главное для нас, размер раздела и его файловую систему. Теперь не сложно понять какая из них флешка. В этом примере это /dev/sdc1

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

sudo mkdir /mnt/usb

Теперь монтируем флешку с помощью команды mount:

sudo mount /dev/sdc1 /mnt/usb

usb1

Если знаете файловую систему флешки, то лучше ее указать с помощью опции -t. Чаще всего используется FAT, так как ее легко открывают как Windows так и Linux системы:

sudo mount -t vfat /dev/sdc1 /mnt/usb

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

sudo mount -t vfat -o users /dev/sdc1 /mnt/usb

По умолчанию владельцем файлов на флешке при монтировании устанавливается root, поэтому если вы захотите работать с флешкой через файловый менеджер, то нужно будет его запускать с правами суперпользователя или же сразу примонтировать флешку в linux таким образом, чтобы владельцем был ваш пользователь. Для этого укажите группу и id своего пользователя в опциях uid и gid:

sudo mount -o users,uid=1000,gid=1000 /dev/sdc1 /mnt/usb

Удостовериться что флешка подключена можно посмотрев содержимое каталога, в который мы ее монтировали:

Или выполнив команду mount:

usb2

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

sudo umount /dev/sdc1

Автоматическое монтирование флешки в Linux

Популярные окружения рабочего стола выполняют монтирование флешки linux автоматически, как только она подключена к системе или по клику на ярлыке. Мы можем это реализовать с помощью службы udisks2.

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

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

udisksctl mount -b /dev/sdc1

usb3

Здесь /dev/sdc1 - файл нашей флешки, а опция -b указывает, что нужно монтировать блочное устройство. Так же как и в mount здесь можно задать опции монтирования -o и файловую систему -t. Флешка будет примонтирована в папку /run/имя_пользователя/uuid-флешки/

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

udisksctl unmount -b /dev/sdc1

usb4

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

Устанавливается утилита в Ubuntu командой:

sudo apt install udiskie

Дальше остается запустить программу:

Теперь все подключаемые устройства будут автоматически монтироваться с помощью udisks. Рассмотрим что значат опции:

  • -a - выполнять автоматическое монтирование
  • -n - показывать всплывающее уведомление
  • -t - показывать значок в трее.

Выводы

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

Файловая система FAT использовалась в качестве основной файловой системы в ранних версиях Windows, а потом начала применяться преимущественно для внешних носителей информации и различных флешек. Но у этой файловой системы есть несколько недостатков, самый заметный из которых - максимальный размер файла не более 4 Гигабайт.

В Microsoft были озабочены этой проблемой, и поэтому ещё в 2006 году была выпущена улучшенная версия этой файловой системы - exFAT. Здесь теоретический лимит на размер файла составляет уже 16 Эксабайт, что даже больше, чем достаточно. Но, как и другие продукты Microsoft, эта файловая система имеет закрытый исходный код и по умолчанию в Linux не поддерживается. В этой статье мы поговорим о том, как выполняется монтирование exFAT в Ubuntu

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

Если вы попытаетесь примонтировать флешку или другой раздел, отформатированный в exFAT, в операционной системе Linux, то получите ошибку "mount: unknown filesystem type exfat", потому что эта файловая система не поддерживается.



sudo apt install exfat-fuse exfat-utils


После этого можно примонтировать раздел с exFAT ubuntu обычной командой монтирования:

sudo mount /dev/sdb1 /mnt


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



Форматирование exFAT в Linux

Если вы хотите создать новый раздел в файловой системе exFAT, то для этого достаточно выполнить команду:

sudo mkfs -t exfat /dev/sdb1


Здесь /dev/sdb1 - адрес вашего раздела, который вам необходимо отформатировать в новую файловую систему.

Выводы

В этой небольшой статье мы разобрали, как примонтировать exFAT Ubuntu 18.04. Несмотря на то, что статья писалась про Ubuntu, эти команды будут работать и для большинства дистрибутивов, основанных на этой операционке.

Разделы дисков в 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:


Посмотреть 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 используется для подключения (монтирования) файловых систем и переносных накопителей (например, USB-флешек) к конкретным точкам монтирования в дереве директорий. Команда umount отключает (размонтирует) смонтированную файловую систему от дерева директорий. В данном руководстве мы рассмотрим основы подключения и отключения различных файловых систем при помощи команд mount и umount.

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

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


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

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


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

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

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

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

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

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

Полный список опций можно получить, выполнив команду man mount.

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

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

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

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

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

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

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

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

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

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

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

Смонтируйте файл 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.

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