Lt304888.ru

Туристические услуги

Mount

13-10-2023

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

Содержание

Использование

mount /dev/cdrom /mnt/cdrom

Устройство /dev/cdrom монтируется в каталог /mnt/cdrom, если он существует. Начиная от момента монтирования и пока пользователь не отмонтирует файловую систему (или туда не будет смонтировано что-то иное) в каталоге /mnt/cdrom будет содержаться дерево каталогов устройства /dev/cdrom

Размонтирование командой umount

Для размонтирования достаточно указать точку монтирования или имя устройства.

umount /dev/cdrom

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

Для распространённого случая, когда USB-диски имеет файловую систему vfat и имена файлов с кодовой страницей № 866 (что характерно для систем, настроенных на русский язык), команда монтирования выглядит так:

mount -t vfat -o iocharset=utf8,codepage=866 /dev/sda1 /mnt/usb

В параметре iocharset следует указывать кодировку системной локали (наиболее распространенные: UTF-8, KOI-8-R(U) или CP1251); реально используемую кодировку можно определить выполнив команду locale. Также, для iocharset можно задать значение по умолчанию путём настройки ядра.

Полезными опциями при монтировании Flash-дисков являются sync и flush. Первая приводит к постоянному сбросу на диск буфера записи, так что данные не теряются при отсоединении flash-диска без размонтирования. Побочный эффект такого монтирования — значительное уменьшение в скорости записи. Вторая опция (доступна только в новых ядрах Linux) ведёт к сбросу буфера на диск после записи последнего файла. Это также способствует сохранению данных в случае удаления диска без размонтирования, но не приводит к падению скорости записи.

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

Если имеется образ диска в виде iso-файла, то для его монтирования нужно указать параметр -o loop и, обычно, тип файловой системы -t iso9660 (необязательно) (file.iso — это имя файла образа, а /mnt/iso — точка монтирования):

mount -o loop -t iso9660 file.iso /mnt/iso

Монтирование образов в форматах, отличных от iso потребует преобразования в iso-образ или использования эмулятора. Для преобразования можно использовать утилиты командой строки (см. ниже) или утилиту Монтирование образов дисков в Linux

Образы bin/cue

Монтирование сетевых дисков NFS

mount 172.22.2.1:/mnt/iso/ /mnt/iso/

Монтирование сетевых дисков SMB

Пример монтирования сетевых SMB-ресурсов :

mount -t smbfs -o username=user,password=pass //server/dir /mnt/localdir/
mount -t cifs -o username=user,password=pass //server/dir /mnt/localdir/

(Утилита smbfs заменилась в ядре linux на совместимую с ней cifs.) примечания:

  • "-t cifs" можно иногда не указывать , если имя монтируемого устойства вида "//server/dir"
mount //server/dir /mnt/localdir/ -o username=user,password=pass 
  • если для авторизации необходимо указать доменное имя пользователя,
то в параметрах команды mount оно указывается как "-o username=domain\\user"
однако при указании монтируемого ресурса в /etc/fstab имя пользователя указывается как "domain/user":
//server/dir /mnt/localdir/  cifs  user=domain/user,password=pass

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

curlftpfs -v -o iocharset=UTF-8 ftp://user:password@ftp.domain.ru/ /mnt/ftp

Монтирование удалённой папки через ssh

Модуль ядра Fuse (был принят в официальную ветку ядра начиная с 2.6), позволяет непривилегированным пользователям монтировать различные файловые системы.

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

  1. usermod -G -a fuse user

или

  1. adduser user fuse

или вручную отредактировав файл /etc/group. Ещё необходимо, чтобы загружен был модуль ядра fuse:

  1. modprobe fuse

После этого, можно смонтировать удалённую папку с помощью sshfs:
sshfs user@udalenniy_server:/tmp ~/udalennaya_papka

Для отмонтирования удалённой папки нужно ввести команду: fusermount -u ~/udalennaya_papka

Параметры монтирования

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

-t Тип файловой системы

Обычно при монтировании определяется автоматически или берётся из файла конфигурации (см. ниже). Но в отдельных случаях нужно указывать тип файловой системы явно. Например при монтировании DVD диска с файловой системой UDF.

mount /dev/cdrom /mnt/dvd -t udf

Если неправильно указать тип файловой системы, то команда mount выдаст сообщение об ошибке

mount: wrong fs type, bad option, bad superblock on /dev/cdrom,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

и посоветует посмотреть в конец файла системных сообщений.

Unable to identify CD-ROM format.

В случае успешного монтирования обычно сообщается что компакт диск монтируется (по умолчанию) в режиме «только для чтения».

mount: block device /dev/cdrom is write-protected, mounting read-only

-o Атрибуты доступа

  • Доступ «только для чтения» (ro) или на «чтение и запись» (rw)
  • Разрешение или запрещение запуска программ (noexec)

Пример (для образца, взято монтирование USB диска):

mount -t vfat -o rw,noexec,iocharset=utf8,codepage=866 /dev/sda1 /mnt/usb  

mount --bind

Команда mount с ключом --bind применяется в системах на ядре Linux (начиная с 2.4) для создания синонима каталога в дереве файловой системы. К примеру, команда:

mount --bind /mnt/cdrom/Files /var/ftp/cdrom

позволит обращаться к файлам из /mnt/cdrom/Files через путь /var/ftp/cdrom, где /var/ftp/cdrom — некий уже существующий (возможно, пустой) каталог (его настоящее содержимое будет недоступно до момента размонтирования).

Преимуществом данного способа создания ссылок на каталоги над символьными ссылками является возможность обходить ограничения доступа к файловой системе, возникающие перед процессами, запущенными в среде chroot или серверами, применяющими принцип chroot. Например, FTP-сервер proftp делает недоступными символьные ссылки, указывающие на файлы и каталоги вне определённого каталога. Действие команды mount --bind напоминает DOS-овский subst.

Список смонтированных файловых систем

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

/dev/md/5 on / type reiserfs (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
/dev/md/4 on /files type xfs (rw,noatime)
/dev/sda3 on /mnt/a type ext3 (rw,noatime)
/dev/sdd2 on /mnt/docs type reiserfs (rw,noatime)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
usbfs on /proc/bus/usb type usbfs (rw,noexec,nosuid,devmode=0664,devgid=85)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
nfsd on /proc/fs/nfs type nfsd (rw,noexec,nosuid,nodev)
//ax2/i on /mnt/smb type smbfs (0)
172.22.2.1:/files on /mnt/files type nfs (rw,addr=172.22.2.1)

В этом примере показывается много смонтированных файловых систем (ФС).

  • в первой строке сообщается, что в качестве корневой ФС выступает RAID-массив, с ФС типа reiserfs и параметрами монтирования: доступ на чтение и запись (rw) и указанием не обновлять атрибут времени последнего доступа (noatime)
  • sysfs, udev, devpts — это стандартные (для систем Linux) виртуальные ФС
  • /dev/sda3 — это раздел SATA диска
  • usbfs — это виртуальная файловая система для работы с USB устройствами
  • //ax2/i — это путь к сетевому диску SMB
  • 172.22.2.1:/files — путь к сетевому диску NFS, находящемся на сервере с IP-адресом 172.22.2.1

Файл конфигурации

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

# <fs>                  <mountpoint>    <type>          <opts>          <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
#/dev/BOOT              /boot           ext2            noauto,noatime  1 2
/dev/sda5               /               reiserfs        noatime         0 1
/dev/sda1               none            swap            sw              0 0
/dev/cdrom              /mnt/cdrom      iso9660         noauto,ro       0 0
#/dev/fd0               /mnt/floppy     auto            noauto          0 0

# NOTE: The next line is critical for boot!
proc                    /proc           proc            defaults        0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_unlink).
# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will
#  use almost no memory if not populated with files)
shm                     /dev/shm        tmpfs           nodev,nosuid,noexec     0 0

В дальнейшем можно будет указывать в команде mount только имя устройства или точку монтирования — все дополнительные параметры будут браться из файла конфигурации. Например, применительно к данной конфигурации, команда mount /mnt/cdrom будет эквивалентна выполнению команды

mount /dev/cdrom /mnt/cdrom -t iso9660 -o noauto,ro

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

См. также

Ссылки

  • mount (8) (англ.) Linux man page
  • mount (8) Страница руководства на русском
  • FileDisk и HttpDisk Аналог Mount для Windows систем

Mount.

© 2020–2023 lt304888.ru, Россия, Волжский, ул. Больничная 49, +7 (8443) 85-29-01