Куда монтируется флешка в linux
Перейти к содержимому

Куда монтируется флешка в linux

  • автор:

 

mount flash

Смонтируем ISO файл /home/user/disk.iso в точку монтирования /mnt/mount_point:

$ sudo mount -o loop /home/user/disk.iso /mnt/mount_point

параметр -o loop, который указывает, что используется файл *.iso

После того, как ISO образ диска будет смонтирован, Вы получите следующее сообщение: ‘mount: warning: /mnt/mount_point seems to be mounted read-only‘.

Можете спокойно его игнорировать, так как в соответствии со стандартом ISO 9660, ISO образы всегда монтируются только в режиме read-only (только чтение).

Проверяем что ISO файл смонтирован:

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

/home/user/disk.iso on /mnt/mount_point type iso9660 (ro)

  • Теперь Вы можете перейти в точку монтирования и просмотреть файлы содержащиеся на ISO образе диска:
Размонтирование ISO файла в Linux

Используйте следующую команду для размонтирования ISO образа диска:

Чем и куда монтируются флешки

До появления в линуксе автомонтирования флешек всё было понятно: идёшь в /mnt и монтируешь.

В современных дистрибутивах всё как-то постоянно меняется: то монтируют в /media, то в /media/username/, то в

/media. я до 5 вариантов насчитал. Бывает так, что я флешку воткнул, система показала нечто, похожее на проводник, а чтобы понять, куда оно действительно смонтировалось и открыть в любимом двухпанельнике, надо смотреть /etc/mtab.

Ни к какому знаменателю это не пришло? Стандартов нет? И как вывести алгоритм, от чего это зависит? Демоны автомонтирования разные? Я читаю про всякие udev, udisks2, окончательно запутался, вроде ещё systemd добавил что-то своё.

Подопытные дистрибутивы — самые разные, от дебиана до опензюзи.

И я так понимаю, что KDE и Gnome подкладывают этим демонам свои события, а если у меня какой-то лёгкий WM? Что и кому подкладывать? Вообще, какой процесс в 2017 году отвечает за автомонтирование сменных носителей в линуксе (для определённости возьмём дистры с systemd), и как с ним разговаривать?

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

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

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

Недавно решил переконвертировать фильмы в формате AVI в MPEG, чтобы смотреть с «флешки» на странном телевизоре BBK, который воспроизводит не все «авишки» а вот с DVD-шным форматом проблем не было. Как я уже писал раньше, 90% всего времени я провожу за экономной Raspberry PI 3, а вот роль тяжелой артиллерии выполняет мой 6-ядерный системный блок. Через ssh я зашел на удаленный «системник» с Ubuntu 16.04, скачал через Rtorrent нужные фильмы и перекодировал при помощи ffmpeg. После удачного конвертирования я решил сбросить эти файлы на «флешку». Но каково было мое удивление, когда флеш-накопитель не определился системой автоматически. Это в моей практике было впервые, поэтому пришлось решать эту проблему при помощи Google. Если бы я запустил Ubuntu 16.04 в ее графическом режиме, то с монтированием «флешки» проблем не возникло бы, а вот в консольном режиме такое случается часто.

Монтирование носителя при помощи udisksctl

Сначала узнаем как система определила нашу подключенную «флешку». Выполним команду:

Вывод был следующий:

sdb 8:16 0 596,2G 0 disk
├─sdb2 8:18 0 5,9G 0 part
├─sdb3 8:19 0 561G 0 part /mnt/5b4d2ffa-cfa0-4419-8736-3c5e97cf1073
└─sdb1 8:17 0 29,3G 0 part
sr0 11:0 1 1024M 0 rom
sdc 8:32 1 7,5G 0 disk
└─sdc1 8:33 1 7,5G 0 part
sda 8:0 0 465,8G 0 disk
├─sda2 8:2 0 92,9G 0 part /home
├─sda3 8:3 0 344,1G 0 part /mnt/938eb7e4-1e03-48c9-a9d2-4b7a5f263b01
└─sda1 8:1 0 28G 0 part /
sr1 11:1 1 1024M 0 rom

Из этого видно, что наша «флешка», размером 7,5G, имеет системное имя — sdc. И хотя эта команда ее видит, в каталоге /mnt были примонтированы лишь два жестких диска, а /media был вообще пустой. Поэтому, чтобы примонтировать нужное устройство, воспользуемся помощью udisksctl. Это консольная утилита, которая входит в состав пакета UDisks. Выполним следующую команду:

udisksctl mount -b /dev/sdc1

/dev/sdc1 — моя «флешка»
-b — данный параметр указывает системе, что нужно примонтировать блочное устройство

После этого видим примерно такой вывод:

==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-other-seat ===
Для монтирования UFD 2.0 Silicon-Power8G (/dev/sdc1) требуется подтверждение подлинности пользователя
Authenticating as: dm. (dm)

Вводим пароль и видим, что наш носитель появился в каталоге /media

==== AUTHENTICATION COMPLETE ===
Mounted /dev/sdc1 at /media/dm/Flash_Drive

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

udisksctl unmount -b /dev/sdc1

Монтирование устройств при помощи mount

Точки монтирования нужно создавать в каталогах /mnt либо /media. Для этого выполним команду:

sudo mkdir /mnt/usb

Теперь дадим этому каталогу права доступа для простых пользователей:

sudo chmod 777 /mnt/usb

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

Часть вывода команды:

Устр-во Загрузочный Start Конец Секторы Size Id Тип
/dev/sdc1 2048 15730687 15728640 7,5G 7 HPFS/NTFS/exFAT

Теперь нужно запомнить такую деталь. «Флешка», как правило, может иметь файловую систему FAT32 или NTFS. Поэтому нам нужно сообщить об этом системе. Для FAT32 выполним следующую команду:

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

-t vfat — параметр, который указывает о файловой системе FAT 32 носителя
/dev/sdc1 — наше монтируемое устройство
/mnt/usb — точка монтирования
-o rw — разрешаем чтение и запись

Для NTFS соответственно:

sudo mount -t ntfs -o rw /dev/sdc1 /mnt/usb

-t ntfs — параметр, который указывает о файловой системе NTFS носителя
/dev/sdc1 — наше монтируемое устройство
/mnt/usb — точка монтирования
-o rw — разрешаем чтение и запись

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

iocharset=utf8 — задает кодировку utf8
codepage=866 — добавляет поддержку русского языка

Команда будет иметь следующий вид:

sudo mount -t ntfs -o rw,iocharset=utf8,codepage=866 /dev/sdc1 /mnt/usb

Иногда устройство может не монтироваться, поэтому можно будет применить параметр — -o force

Вся команда будет иметь следующий вид:

sudo mount -t ntfs -o force /dev/sdc1 /mnt/usb

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

 

sudo umount /mnt/usb

Для монтирования CD/DVD дисков нужно выполнить команду:

sudo mount -t iso9660 -o ro /dev/cdrom /cd

-t iso9660 — данный параметр указывает файловую систему iso9660
-o ro — разрешаем только чтение
/cd — точка монтирования, которую предварительно нужно создать командой:

sudo mkdir /mnt/cd

Для монтирования образа диска ISO выполним команду:

sudo mount -t iso9660 -o loop

/image.iso — образ ISO

/iso — точка монтирования
-o loop — этот параметр указывает об использовании .iso файла

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

В наши дни очень большую популярность у пользователей набрали 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.

Udisks — это служба dbus, позволяющая другим программам и пользователю взаимодействовать с udev. Мы можем получать сообщения о только что подключенных устройствах, выполнять их монтирование и отключение. Окружения рабочего стола используют именно этот сервис для монтирования устройств.

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

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

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 не вызовет у вас проблем. Даже если у вас не будет работать окружение рабочего стола и придется делать все вручную. Если остались еще вопросы, спрашивайте в комментариях.

 

Добавить комментарий

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