**mount** — утыліта каманднага радка ў UNIX-падобных сістэмах. Ужываецца для манціравання файлавых сістэм.

Ужыванне
--------

```
mount /dev/cdrom /mnt/cdrom
```

Прылада */dev/cdrom* манціруецца ў каталог */mnt/cdrom*, калі ён існуе.
Пачынаючы ад моманту манціравання і пакуль карыстальнік не адманціруе файлавую сістэму (або туды не будзе зманціравана нешта іншае) у каталогу */mnt/cdrom* будзе змяшчацца дрэва каталогаў прылады */dev/cdrom*

### Разманціраванне камандай umount

Для разманціравання дастаткова ўказаць пункт манціравання або імя прылады.

```
umount /dev/cdrom
```

### Манціраванне USB-дыскаў

Для тыповага выпадку, калі USB-дыск мае файлавую сістэму FAT32, каманда манціравання выглядае так:

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

Параметр codepage неабходны, каб імёны створаных файлаў карэктна адлюстроўваліся ў старых АС (напрыклад, DOS). Калі дыстрыбутыў выкарыстоўвае ў якасці кадзіроўкі сістэмнай лакалі не UTF-8, то яе неабходна ўказаць у параметры iocharset такім чынам:

```
mount -t vfat -o codepage=866,iocharset=koi8-r /dev/sda1 /mnt
```

Вызначыць тып сістэмнай кадзіроўкі можна выканаўшы каманду locale.

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

### Манціраванне NTFS дыскаў/падзелаў

```
mount -t ntfs -o noatime,users,rw,fmask=111,dmask=000,locale=be\_BY.UTF-8 /dev/sda1 /mnt/win\_xp 
```

### Манціраванне вобразаў дыскаў

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

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

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

#### Вобразы bin/cue

Для пераўтварэння вобраза bin/cue у iso-вобраз можна скарыстацца канвертарам bchunk:

```
bchunk image.bin image.cue image.iso
```

### Манціраванне сеткавых дыскаў 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 0 0
```

### Манціраванне FTP сервераў

```
curlftpfs -v -o iocharset=UTF-8  Архівавана 6 лютага 2019. /mnt/ftp
```

### Манціраванне аддаленага каталогу праз ssh

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

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

```
usermod -G -a fuse user
```

або

```
adduser user fuse
```

або ўручную адрэдагаваўшы файл /etc/group. Калі неабходна, прымусова падгрузіць модуль ядра fuse:

```
modprobe fuse
```

Пасля гэтага, можна зманціраваць аддалены каталог з дапамогай sshfs:   

```
sshfs user@addaleny\_server:/tmp ~/addalenaja\_tečka
```

Для адманціравання аддаленага каталога патрэбна ўвесці каманду:

```
fusermount -u ~/addalenaja\_tečka
```

Параметры манціравання
----------------------

Пры неабходнасці для выканання каманды 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)

Прыклад 1 (для ўзору, прыведзена манціраванне USB дыска):

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

Прыклад 2 (для ўзору, прыведзена манціраванне ntfs падзела з усталяванай Windows XP):

```
mount -t ntfs -o noatime,users,rw,fmask=111,dmask=000,locale=be\_BY.UTF-8 /dev/sda1 /mnt/win\_xp
```

Прыклад 3 (пераманціраваць прыладу з доступам на «чытанне і запіс» (rw))

```
mount -o remount,rw /dev/sda2
```

mount --bind
------------

Каманда mount з ключом --bind ці з кароткім ключом -B ужываецца ў сістэмах на ядры Linux (пачынаючы з 2.4.0) для стварэння сіноніма каталога ў дрэве файлавай сістэмы. Напрыклад, каманда:

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

дазваляе звяртацца да файлаў з /mnt/cdrom/Files праз шлях /var/ftp/cdrom, дзе /var/ftp/cdrom — нейкі ўжо існуючы (магчыма пусты) каталог (яго сапраўдны змест будзе недаступны да моманту разманціравання). Можна таксама замест асобнай опцыі --bind написаць -o bind, што будзе мець такі ж эфект. Таксама гэта дазваляе дадаць правіла ў файл /etc/fstab для манціравання пры старце сістэмы:

```
/olddir /newdir none bind
```

Перавагай дадзенага спосабу стварэння спасылак на каталогі над сімвальнымі спасылкамі з'яўляецца магчымасць абыходзіць абмежаванне доступу да файлавай сістэмы, якое ўзнікае перад працэсамі, што запушчаны ў асяроддзі chroot ці серверамі, якія выкарыстоўваюць прынцып chroot. Напрыклад, FTP-сервер proftpd робіць недаступнымі сімвальныя спасылкі, якія указваюць на файлы і каталогі па-за межамі вызначанага каталога.
Дзеянне каманды 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

Файл канфігурацыі
-----------------

Асноўны артыкул: **fstab**
Каб палегчыць працэдуру манціравання можна унесці ў файл канфігурацыі /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.

Гл. таксама
-----------

* Праграмы UNIX-падобных аперацыйных сістэм

Спасылкі
--------

* mount (8) (англ.) Linux man page
* mount (8) Страница руководства на русском

| ⛭Стандартныя праграмы UNIX (усе праграмы) |
| --- |
| Файлавыя сістэмы | chroot · dd · df · fdisk · fsck · mkisofs · mkswap · mount · umount · rehash |
| Файлы і каталогі | cat · chattr · cd · chmod · chown · chgrp · cksum · cmp · cp · diff · du · file · fuser · ln · ls · lsof · mkdir · mv · od · pwd · rm · rmdir · split · touch |
| Працэсы | at · cron · exit · kill · killall · nice · nohup · pgrep · pidof · pkill · ps · renice · sleep · time · top · wait · watch |
| Карыстальнікі | env · finger · id · last · logname · mesg · passwd · su · sudo · uptime · w · wall · who · whoami · write |
| Сетка | ftp · host · ifconfig · netcat · netstat · nmap · nslookup · ping · rlogin · SSH · traceroute · wget |
| Тэксты | AWK · comm · cut · ed · ex · expand · unexpand · fmt · head · iconv · join · less · more · paste · pr · sed · sort · tac · tail · tr · uniq · wc · xargs |
| Камандны радок | alias · basename · bash · bind · dirname · echo · expr · false · printf · test · true · unset |
| Пошук | find · grep · strings · whereis · which |
| Рознае | banner · bc · cal · date · help · lp · man · Xhistory · size · tee · uname · yes · reboot |