Как примонтировать «флешку» в 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. Для этого выполним команду:
Теперь дадим этому каталогу права доступа для простых пользователей:
Далее определим имя монтируемого устройства и тип файловой системы командой:
Устр-во Загрузочный 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 — разрешаем чтение и запись
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
Чтобы отмонтировать устройство выполните:
Для монтирования CD/DVD дисков нужно выполнить команду:
sudo mount -t iso9660 -o ro /dev/cdrom /cd
-t iso9660 — данный параметр указывает файловую систему iso9660
-o ro — разрешаем только чтение
/cd — точка монтирования, которую предварительно нужно создать командой:
Для монтирования образа диска ISO выполним команду:
sudo mount -t iso9660 -o loop ~/image.iso ~/iso
~/image.iso — образ ISO
~/iso — точка монтирования
-o loop — этот параметр указывает об использовании .iso файла
Надеюсь информация была полезной. На этом разрешите откланяться и удачи!
Монтирование носителя в линукс
Мы уже так привыкли к съемным носителям, что пользуемся ими не задумываясь как все работает. Вставил и забыл, интуитивно понятный интерфейс рабочего окружения так же способствует этому. Но что делать если у нас консоль в Линуксе, там все не так просто. Сегодня мы рассмотрим как добавить новый жесткий диск, или просто вставить флешку в системе Линукс, без какого либо графического интерфейса.
Disk /dev/sda: 8 GiB, 8589934592 bytes, 16777216 sectors
Disk model: VBOX HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dosDisk identifier: 0x7e363e97
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 14680063 14678016 7G 83 Linux
/dev/sda2 14682110 16775167 2093058 1022M 5 Extended
/dev/sda5 14682112 16775167 2093056 1022M 82 Linux swap / Solaris
Disk /dev/sdb: 7,2 GiB, 7747928064 bytes, 15132672 sectors
Disk model: USB DISK 2.0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dosDisk identifier: 0x9d635f3a
Device Boot Start End Sectors Size Id Type
/dev/sdb1 8064 15132671 15124608 7,2G c W95 FAT32 (LBA)
Монтируем нужный нам раздел в только созданную папку
Если мы знаем файловую систему, то лучше ее указать, сделать это можно с помощью флага -t
Так как монтирование происходит от имени супер пользователя, то отмонтировать ее может тоже только супер пользователь, можно это исправить указав опцию -o users
Для определенного пользователя нужно указать uid и gid, узнать их можно командой
Но при перезагрузке все пропадет, и если у нас не флешка, а например новый жесткий диск, для этого есть файл /etc/fstab. В нем мы и пропишем параметры монтирования жесткого диска. Первым делом надо создать раздел на диске, если его там нет
- далее вводим команду для создания нового раздела «n»
- если это основной раздел то вводим «p», если расширенный вводим «e»
- указываем номер раздела 1-4, по умолчанию 1
- далее первый сектор 2048–1048575999, по умолчанию 2048
- затем последний сектор
- завершаем создание разделов записью изменений на диск, командой «w»
Теперь надо отформатировать раздел
После форматирования система выведет информацию по новому разделу, в том числе UUID, но если файловая система у нас уже была UUID можно узнать командой
Все приготовления завершены, открываем /etc/fstab
Мы использовали опцию defaults, она создана для большинства ситуаций, а вот список всех опций
- sync – записывать на диск все изменения сразу после того, как они были выполнены, не использовать кэширование для записываемых данных. Может понадобится для извлечения флешки без размонтирования, но сильно снижает производительность;
- async – использовать кэш при записи данных, увеличивает производительность, используется по умолчанию;
- atime – сохранять время последнего доступа к файлу;
- noatime – не сохранять время последнего доступа, полезно для ssd и флешек;
- relatime – обновлять время доступа только при изменении файла, необходимо для работы многих программ;
- norelatime – отключить relatime;
- strictatime – обновлять время доступа всегда, отключает действие предыдущих опций;
- auto – автоматически монтировать при загрузке, действие по умолчанию;
- noauto – не монтировать при загрузке;
- defaults – использовать опции монтирования fstab по умолчанию – rw,suid,dev,exec,auto,nouser,async;
- dev – интерпретировать блочные устройства;
- nodev – не интерпретировать блочные устройства;
- diratime – аналогично atime только для каталогов;
- dirnoatime – аналогично noatime, для каталогов;
- exec – разрешить выполнять программы на этом разделе;
- noexec – запретить выполнять программы на этом разделе;
- group – разрешить другим пользователям кроме root монтировать этот раздел, если их группа совпадает с указанной, обычно используется вместе с noauto;
- nofail – не сообщать об ошибках;
- mand – разрешить блокирование файловой системы, нужно для некоторых антивирусов;
- nomand – запретить блокирование файловой системы;
- suid – разрешить выполнение программ с флагом suid от имени другого пользователя;
- nosuid – игнорировать флаг suid;
- owner – разрешить указанному пользователю монтировать устройство;
- ro – монтировать только для чтения;
- rw – монтировать для чтения и записи;
- users – разрешить монтирование любому пользователю;
- umask – установить права доступа к файлам и папкам на этом разделе;
- uid – задает владельца каталога, по умолчанию root;
- gid – задает группу владельца каталога.
После сохранения файла, достаточно выполнить команду
И все разделы указанные в файле /etc/fstab но не смонтированные на данный момент, будут смонтированы
Все статьи можно посмотреть на сайте или на Zen Yandex