Scroll to navigation

MOUNT(8) Керування системою MOUNT(8)

НАЗВА

mount — змонтувати файлову систему

КОРОТКИЙ ОПИС

mount [-h|-V]

mount [-l] [-t тип_файлової_системи]

mount -a [-fFnrsvw] [-t тип_фс] [-O список_параметрів]

mount [-fnrsvw] [-o параметри] пристрій|точка_монтування

mount [-fnrsvw] [-t тип_фс] [-o параметри] точка_монтування_пристрою

mount --bind|--rbind|--move старий_каталог новий_каталог

mount --make-{shared|slave|private|unbindable|rshared|rslave|rprivate|runbindable} точка монтування

ОПИС

Всі файли, доступні в системі Unix, зібрані в одне велике дерево, ієрархію файлів, з коренем в /. Ці файли можуть розташовуватися на різних пристроях. Команда mount служить для приєднання файлової системи, знайденої на деяких пристроях, у велике дерево файлів. І навпаки, команда umount(8) знову їх від'єднує. Файлова система використовується, щоб контролювати, як дані зберігаються на пристрої або наданому у віртуальний спосіб через мережу або інші служби.

Стандартна форма команди mount є:

mount -t тип пристрій каталог

Наказує ядру приєднати файлову систему, знайдену на пристрій (що має тип тип) в каталозі каталог. Параметр -t тип є необов'язковим. Команда mount переважно сама може визначити файлову систему. Дозволи root типово необхідні, щоб змонтувати файлову систему. Див. розділ "Монтування для несуперкористувача" нижче щодо подальшої інформації. Попередній вміст (якщо він був) а також власник та режим доступу каталог стають невидимі, і поки система примонтована, шлях каталог вказує на кореневу файлову систему на пристрій.

Якщо надано лише каталог або пристрій, наприклад:

mount /каталог

тоді mount шукає точку монтування (а якщо її не знайдено, то пристрій) у файлі /etc/fstab. Можна використовувати параметри --target або --source, щоб уникнути неоднозначної інтерпретації цього аргументу. Наприклад:

mount --target /точка_монтування

Одну й ту ж файлову систему можна змонтувати кілька разів, а в деяких випадках (наприклад, мережеві файлові системи) одну й ту ж файлову систему можна кілька разів змонтувати до однієї точки монтування. Команда mount не реалізує жодної політики для керування цією поведінкою. Уся поведінка керується ядром і зазвичай залежить від драйвера файлової системи. Винятком є --all: у цьому випадку вже змонтовані файлові системи нехтуються (докладніше див. --all нижче).

Отримання списку змонтованого

Списковий режим підтримується лише для сумісності з попередніми версіями.

Для докладнішого та налаштовуваного виведення, особливо у власних скриптах, використовуйте findmnt(8). Зверніть увагу, що символи керування в назві точки монтування замінюються на «?».

Така команда виведе перелік усіх змонтованих файлових систем (типу тип):

mount [-l] [-t тип]

Параметр -l додає до цього списку мітки. Див. нижче.

Вказує пристрій і файлову систему

Більшість пристроїв позначаються назвою файлу (блокового спеціального пристрою), як і /dev/sda1, але можливе й інше. Наприклад, у випадку монтування NFS, device може мати вигляд knuth.cwi.nl:/dir.

Назви пристроїв розділів диска нестабільні; зміна конфігурації обладнання, а також додавання чи видалення пристрою може призвести до зміни назв. Тому дуже бажано використовувати ідентифікатори файлових систем або розділів, такі як UUID або LABEL. Наразі підтримуються такі ідентифікатори (теги):

Ідентифікатор файлової системи, зрозумілий людині. Див. також -L.
Універсальний унікальний ідентифікатор файлової системи. UUID зазвичай записують як серію шістнадцяткових цифр, розділених дефісами. Див. також -U.

Зверніть увагу, що mount(8) використовує UUID як рядки. UUID з рядка команди або з fstab(5) не буде перетворено до внутрішнього двійкового представлення. Представлення рядків UUID повинне базуватися на символах нижнього регістру.

Зручний для читання ідентифікатор розділу. Цей ідентифікатор є незалежним від файлової системи і його не змінюють дії mkfs і mkswap. Його підтримку передбачено, наприклад, для GUID Partition Tables (GPT).
Універсальний унікальний ідентифікатор розділу. Цей ідентифікатор є незалежним від файлової системи і його не змінюють дії mkfs і mkswap. Його підтримку передбачено, наприклад, для GUID Partition Tables (GPT).
Ідентифікатор апаратного блоку, згенерований udevd. Цей ідентифікатор зазвичай базується на WWN (унікальний ідентифікатор сховища) і призначає його виробник обладнання. Додаткову інформацію див. у ls /dev/disk/by-id, цей каталог і запуск udevd необхідні. Цей ідентифікатор не рекомендується для загального використання, оскільки не є строго визначеним і залежить від udev, правил udev та обладнання.

Команда lsblk --fs надає огляд файлових систем, міток та UUID на доступних блокових пристроях. Команда blkid -p <пристрій> надає детальну інформацію про файлову систему на вказаному пристрої.

Пам'ятайте, що унікальні UUID та міток не гарантована, особливо якщо ви переміщуєте, надаєте спільний доступ або копіюєте пристрій. Щоб переконатися, що UUID у вашій системі дійсно унікальні, скористайтесь lsblk -o +UUID,PARTUUID.

Рекомендовано використовувати у файлі /etc/fstab теги (наприклад, UUID=uuid), а не символьні посилання /dev/disk/by-{label,uuid,id,partuuid,partlabel} udev. Теги зручніші для читання, надійніші та портативніші. Команда mount(8) внутрішньо використовує символьні посилання udev, тому використання символьних посилань у /etc/fstab не має переваг перед тегами. Детальніше див. libblkid(3).

Файлова система proc не пов'язана зі спеціальним пристроєм, і під час її монтування замість специфікації пристрою може використовуватися довільне ключове слово, наприклад, proc. (Звичний вибір none не дуже вдалий: повідомлення mount про помилку `none вже змонтовано' може збити з пантелику.)

Файл /etc/fstab, /etc/mtab та /proc/mounts

Файл /etc/fstab (див. fstab(5)), може містити рядки, що описують, які пристрої переважно тут монтуються, за допомогою яких параметрів. Типове розташування файлу fstab(5) можна змінити параметром командного рядка --fstab шлях (див. нижче про подробиці).

Команда

mount -a [-t тип] [-O список_параметрів]

(зазвичай, задають у скрипті завантаження) спричиняє монтування усіх згаданих файлових систем в fstab (належного типу і/або таких, що мають або не мають належні параметри) так, як вказано, окрім тих, у рядку яких міститься ключове слово noauto. Додавання параметра -F призведе до розгалуження mount для паралельного монтування файлових систем.

Коли файлову систему для монтування згадують в fstab або mtab, в командному рядку достатньо вказати лише пристрій або лише точку монтування.

Програми mount і umount традиційно підтримували список поточних змонтованих файлових систем у файлі /etc/mtab. Підтримку звичайного класичного /etc/mtab типово повністю вимкнено під час компіляції, тому що в поточних системах Linux краще зробити /etc/mtab символьним посиланням на /proc/mounts. Звичайний файл mtab, який зберігається в просторі користувача, не може надійно працювати з просторами назв, контейнерами та іншими розширеними функціями Linux. Якщо ввімкнено звичайну підтримку mtab, то можна використовувати як файл, так і символьне посилання.

Якщо аргументів mount не надати, то друкується список змонтованих файлових систем.

Якщо ви хочете змінити параметри монтування з /etc/fstab, потрібно використати параметр -o:

mount пристрій|каталог -o параметри

а потім параметри монтування з командного рядка буде додано до списку параметрів із /etc/fstab. Цю типову поведінку можна змінити за допомогою параметра командного рядка --options-mode. Звичайна поведінка полягає в тому, що останній варіант перемагає, якщо є суперечливі.

Програма mount не читає файлу /etc/fstab, якщо вказано разом пристрій (або LABEL, UUID, ID, PARTUUID або PARTLABEL) і каталог. Наприклад, щоб встановити пристрій foo на /dir:

mount /dev/foo /каталог

За допомогою параметра командного рядка --options-source-force цю типову поведінку можна змінити, щоб завжди читати конфігурацію з fstab. Для користувачів, які не мають права root, mount завжди читає конфігурацію fstab.

Монтування без прав суперкористувача

Зазвичай тільки суперкористувач може монтувати файлові системи. Однак, коли fstab містить у рядку параметр user, будь-хто може змонтувати відповідну файлову систему.

Тому, якщо задано рядок

/dev/cdrom /cd iso9660 ro,user,noauto,unhide

будь-який користувач зможе монтувати знайдені на вставленому компакт-диску файлові системи iso9660 за допомогою такої команди:

mount /cd

Зауважте, що mount дуже суворо ставиться до користувачів, які не мають права root, і всі шляхи, зазначені в командному рядку, перевіряються перед аналізом fstab або виконанням допоміжної програми. Дуже бажано використовувати для визначення файлової системи дійсну точку монтування, інакше mount може вийти з ладу. Наприклад, поганою ідеєю є використовувати джерело NFS або CIFS у командному рядку.

Починаючи від util-linux 2.35, mount не закривається, якщо дозволи користувача є недостатніми відповідно до правил внутрішніх правил безпеки libmount. Натомість скидаються дозволи suid і продовжується робота як звичайного користувача без права root. Ця поведінка підтримує використання, коли права root не потрібні (наприклад, об'єднання файлових систем, просторів назв користувача тощо).

Докладніше див. у fstab(5). Тільки користувач, який змонтував файлову систему, може знову її демонтувати. Щоб це міг зробити будь-який користувач, замість user у рядку fstab скористайтесь users. Параметр owner подібний до варіанту user, з тим обмеженням, що користувач має бути власником спеціального файлу. Це може бути корисно, наприклад, для /dev/fd, якщо скрипт входу робить користувача консолі власником цього пристрою. Варіант group подібний, з обмеженням: користувач має бути членом групи спеціального файлу.

Дія з монтування з прив'язуванням

Перемонтування частини файлової ієрархії у якесь інше місце. Виклик:


mount --bind старий_каталог новий_каталог

або за допомогою цього запису fstab:


/старий_каталог /новий_каталог none bind

Після цього виклику ті самі дані будуть доступними у двох місцях.

Варто зауважити, що «bind» не створює жодних другорядних або спеціальних вузлів у VFS ядра. «bind» є просто ще однією дією для приєднання файлових систем. Не зберігається жодної інформації про те, що саме "bind" приєднав файлову систему. olddir та newdir є незалежними та olddir можна демонтувати.

Можна також перемонтувати окремий файл (до окремого файла). Також можна використати монтування прив'язки, щоб створити точку монтування зі звичайного каталогу, наприклад:


mount --bind foo foo

Виклик монтування з прив'язкою долучає до ієрархії файлової системи лише (частину) окремої файлової системи, а не можливі підлеглі її монтування. Усю ієрархію, разом із підлеглими монтуваннями, може бути долучено на другому кроці за допомогою такої команди:


mount --rbind старий_каталог новий_каталог

Зауважте, що параметри монтування файлової системи, супровід яких здійснює ядро системи, лишаться тими самими, що і у початкової точки монтування. Параметри монтування простору користувача (наприклад _netdev) не буде скопійовано mount — їх слід явним чином вказати у параметрах рядка команди mount.

Починаючи з версії util-linux 2.27, mount(8) надає змогу змінювати параметри монтування передаванням відповідних параметрів разом із --bind. Приклад:


mount -o bind,ro foo foo

Ця функція не підтримується ядром Linux; її виконано у просторі користувача за допомогою додаткових системних викликів mount(2). Це рішення не є атомарним.

Альтернативним (класичним) способом створення призначеного лише для читання монтування з прив'язкою є використання дії з перемонтування. Приклад:


mount --bind старий_каталог новий_каталог
mount -o remount,bind,ro старий_каталог новий_каталог

Зауважте, що придатна лише для читання прив'язка створить придатну лише до читання точку монтування (запис VFS), але суперблок початкової файлової системи залишиться придатним до запису, що означає, що старий_каталог буде придатним до запису, але новий_каталог буде придатним лише до читання.

Можна також змінити прапорці запису VFS nosuid, nodev, noexec, noatime, nodiratime та relatime за допомогою дії «remount,bind». Інші прапорці (наприклад прапорці, специфічні для файлової системи) буде без повідомлень проігноровано. Не можна змінювати параметри монтування рекурсивно (наприклад за допомогою -o rbind,ro).

Починаючи з util-linux 2.31, mount ігнорує прапорець bind з /etc/fstab при виконанні дії remount (якщо у рядку команди вказано «-o remount»). Це необхідно для повного контролю над параметрами монтування при перемонтуванні за допомогою командного рядка. У попередніх версіях завжди застосовувався прапорець прив'язування, і не можна було перевизначити параметри монтування без взаємодії із семантикою прив'язування. Ця поведінка mount)8) не впливає на випадки, коли «remount,bind» вказано у файлі /etc/fstab.

Дія з пересування

Пересунути змонтовану ієрархію до іншого місця (атомарно). Виклик:


mount --move старий_каталог новий_каталог

Результатом буде те, що дані, які раніше можна було прочитати зі старого_каталогу, будуть доступними з нового_каталогу. Фізичне розташування файлів змінено не буде. Зауважте, що старий_каталог має бути точкою монтування.

Зауважте також, що пересування змонтованого каталогу, що перебуває у змонтованому каталозі спільного користування, є некоректним — підтримки такої дії не передбачено. Скористайтеся командою findmnt -o TARGET,PROPAGATION, щоб переглянути поточні прапорці поширення.

Дії зі спільним піддеревом

Починаючи з Linux 2.6.15, можна позначити монтування та його підлеглі монтування як спільні, приватні, підлеглі або не призначені для прив'язування. Для спільного монтування передбачено можливість створення дзеркал монтування так, щоб монтування і демонтування у будь-якому з дзеркал поширювалися на інші дзеркала. Підлегле монтування отримує поширення від основного, але не навпаки. Приватне монтування не має можливостей поширення. Не призначене для прив'язування монтування є приватним монтуванням, яке не можна клонувати за допомогою дії з прив'язування. Докладну семантику документовано у файлі Documentation/filesystems/sharedsubtree.txt початкових кодів ядра; див. також mount_namespaces(7).

Підтримувані дії:

mount --make-shared точка_монтування
mount --make-slave точка_монтування
mount --make-private точка_монтування
mount --make-unbindable точка_монтування

Наведені нижче команди надають змогу рекурсивно змінювати тип усіх монтування у вказаній точці монтування.

mount --make-rshared точка_монтування
mount --make-rslave точка_монтування
mount --make-rprivate точка_монтування
mount --make-runbindable точка_монтування

mount(8) не читає fstab(5), якщо надіслано запит на дію --make-*. Усі необхідні дані має бути вказано у рядку команди.

Зауважте, що ядро Linux не дозволяє зміни декількох прапорців поширення одним системним викликом mount(2), і прапорці не можна змішувати із іншими параметрами і діями з монтування.

Починаючи з util-linux 2.23, командою B можна скористатися для внесення додаткових змін із поширенням (топологією) шляхом одного виклику mount(8), а також виконання цієї дії разом із іншими діями з монтування. Ця можливість є експериментальною. Прапорці поширення застосовуються додатковими викликами mount(2), якщо попередні дії з монтування були успішними. Зауважте, що таке користування програмою не є атомарним. Вказувати прапорці поширення можна у fstab(5) як параметри монтування (private, slave, shared, unbindable, rprivate, rslave, rshared, runbindable).

Приклад:

mount --make-private --make-unbindable /dev/sda1 /foo

те саме, що і

mount /dev/sda1 /foo
mount --make-private /foo
mount --make-unbindable /foo

ПАРАМЕТРИ КОМАНДНОГО РЯДКА

Повний набір параметрів монтування, які використовуються викликом mount, визначається спочатку видобуванням параметрів монтування для файлової системи з таблиці fstab, потім застосуванням будь-яких параметрів, які вказано аргументом -o, і нарешті, застосуванням параметра -r або -w, якщо такий вказано.

Команда mount не передає усі параметри рядка команди допоміжним засобам монтування /sbin/mount.суфікс. Інтерфейс між mount і допоміжними засобами монтування описано нижче у розділі ЗОВНІШНІ ДОПОМІЖНІ ЗАСОБИ.

Доступні параметри рядка команди mount є такими:

Змонтувати усі файлові системи (вказаних типів), які згадано у fstab (окрім тих, у рядках яких міститься ключове слово noauto). Файлові системи буде змонтовано за порядком, у якому їх вказано у fstab. Команда mount порівняє джерело і призначення файлової системи (а також корінь файлової системи для монтувань із прив'язкою або btrfs) для виявлення вже змонтованих файлових систем. Під час виконання mount --all буде кешовано таблицю ядра із вже змонтованими файловими системами. Це означає, що буде змонтовано усі дубльовані у fstab записи.

Параметр --all можна вживати для дії перемонтування також. В цьому випадку всі фільтри (-t та -O) застосовуються до таблиці вже змонтованих систем.

З версії 2.35 можна використовувати параметр командного рядка -o, щоб змінити параметр з fstab (див. також --options-mode).

Зауважте, що не варто використовувати mount -a для перевірки fstab. Рекомендованим рішенням є findmnt --verify.

Повторно змонтувати піддерево кудись в інше місце (щоб його дані були доступними в обох місцях). Див. вище, розділ Монтування з пов'язуванням.
Не перетворювати шляхи до канонічної форми. Команда mount типово перетворює всі шляхи до канонічної форми (з командного рядка або fstab). Цей параметр можна вжити разом з прапорцем -f, для вже канонізованих абсолютних шляхів. Цей параметр призначається для помічників монтування, які викликають mount -i. Настійливо рекомендується не вживати цей параметр командного рядка для нормальних дій монтування.

Зауважте, що mount(8) не передає цей параметр допоміжним засобам /sbin/mount.тип.

(Використовують у поєднанні з -a.) Відгалужувати новий екземпляр mount для кожного пристрою. Таким чином, монтування на різних пристроях або різних серверах NFS виконуватимуться паралельно. Це пришвидшує обробку. Крім того, відлік часу очікування на дані NFS виконуватиметься паралельно. Недолік полягає у тому, що порядок дій з монтування буде невизначеним. Отже, ви не зможете користуватися цим параметром, якщо хочете змонтувати одразу /usr і /usr/spool.
Наказує програмі виконати усі дії, окрім самого системного виклику; якщо це ще не очевидно, просто «підробляє» монтування файлової системи. Цей параметр корисний у поєднанні із прапорцем -v для визначення, що саме програма mount намагатиметься зробити. Ним можна також скористатися для додавання записів для пристроїв, які було змонтовано раніше за допомогою параметра -n. Додавання параметра -f призводить до перевірки наявності запису у /etc/mtab. Програма видає помилку, якщо запис вже існує (створений звичайним, не фіктивним монтуванням, перевірку буде виконано ядром системи).
Не викликати допоміжний засіб /sbin/mount.файлова_система, навіть якщо він існує.
Змонтувати розділ, який має вказаний мітка.
Додати мітки у виведені під час монтування дані. Щоб це спрацювало, у mount мають бути права доступу на читання дискового пристрою (наприклад права доступу користувача root). Таку мітку можна встановити для ext2, ext3 або ext4 за допомогою допоміжної програми e2label(8), для XFS за допомогою xfs_admin(8), а для reiserfs за допомогою reiserfstune(8).
Пересунути піддерево в інше місце. Див. вище, підрозділ Дія з пересування.
Монтувати без запису в /etc/mtab. Це потрібно, наприклад, коли /etc є на файловій системі лише для читання.
Виконати дію монтування у просторі назв монтування, вказаному ns. ns є або PID процесу, що працює в тому просторі назв або спеціальний файл, що представляє той простір.

mount(8) перемикає до простору назв монтування, коли читає /etc/fstab, записує /etc/mtab (або записує /run/mount) і викликає mount(2), інакше воно працює в початковому просторі назв монтування. Це означає, що простір назв призначення не мусить містити будь-яких бібліотек або інших вимог, потрібних для виконання системного виклику mount(2).

Щоб дізнатися більше, див. mount_namespaces(7).

Обмежити набір файлових систем, для яких застосовуємо параметр -a. У цьому відношення це як параметр -t, окрім того, що -O є марним без -a. Наприклад, команда

mount -a -O no_netdev

монтує всі файлові системи, крім тих, що мають параметр _netdev, вказаний у полі параметрів у файлі /etc/fstab.

Відрізняється від -t в тому, що кожний параметр має збігатися точно; переднє no на початку одного параметра не заперечує решту.

Параметри -t та -O мають кумулятивний ефект; тобто команда

mount -a -t ext2 -O _netdev

монтує всі файлові системи ext2 з параметром _netdev, а не всі файлові системи, що є або ext2 або мають вказаний параметр _netdev.
Використати вказані параметри монтування. Аргумент параметри є список відокремлених комами параметрів. Приклад:

mount LABEL=mydisk -o noatime,nodev,nosuid

Щоб дізнатися більше, див. розділи НЕЗАЛЕЖНІ ВІД ФАЙЛОВОЇ СИСТЕМИ ПАРАМЕТРИ МОНТУВАННЯ та СПЕЦИФІЧНІ ДЛЯ ФАЙЛОВИХ СИСТЕМ ПАРАМЕТРИ МОНТУВАННЯ.

Керує тим, як поєднуються параметри з fstab/mtab з параметрами з рядка команди. Значенням режим може бути ignore (ігнорувати), append (дописати після), prepend (дописати перед) або replace (замінити). Наприклад, append означає, що параметри з fstab буде дописано до параметрів з рядка команди. Типовим значенням є prepend — воно означає, що параметри командного рядка буде застосовано після параметрів fstab. Зауважте, що останній вказаний параметр має пріоритет у випадках конфліктів.

Джерело типових параметрів. Аргументом джерело є список відокремлених комами значень fstab, mtab і disable. Значення disable вимикає fstab і mtab і вимикає --options-source-force. Типовим є значення fstab,mtab.

Використовувати параметри з fstab/mtab, навіть якщо не задано ні пристрій, ні каталог.

Повторно змонтувати піддерево і усі можливі підмонтування кудись в інше місце (щоб його дані були доступними в обох місцях). Див. вище, підрозділ Монтування з пов'язуванням.
Монтувати файлову систему у режимі тільки читання. Те саме, що і -o ro.

Зауважте, що, залежно від типу файлової системи, стану і поведінки ядра, система може продовжити запис на пристрій. Наприклад, ext3 і ext4 відтворять журнал, якщо якусь дію з файлової системи не завершено. Щоб запобігти цьому типу доступу до запису, ви можете змонтувати файлову систему ext3 або ext4 з використанням параметрів монтування ro,noload або встановити для блокового пристрою режим лише запису, див. команду blockdev(8).

Не зважати на некоректні параметри монтування, замість аварійного завершення роботи. У результаті параметри монтування, підтримку яких не передбачено у типі файлової системи, буде проігноровано. Підтримку цього параметра передбачено не для усіх файлових систем. У поточній версії підтримку передбачено лише для допоміжного засобу монтування mount.nfs.
Якщо задано лише один аргумент команди mount, аргумент може бути оброблено як ціль (точку монтування) або джерело (пристрій). За допомогою цього параметра можна явним чином, що аргумент є джерелом монтування.
Якщо задано лише один аргумент команди mount, аргумент може бути оброблено як ціль (точку монтування) або джерело (пристрій). За допомогою цього параметра можна явним чином, що аргумент є ціллю монтування.
Дописати вказаний каталог перед усіма цілями монтування. Цим параметром можна скористатися для відповідності fstab, але дії з монтування буде виконано в іншому місці. Приклад:

mount --all --target-prefix /chroot -o X-mount.mkdir

монтує усе з загальносистемного fstab до /chroot, буде створено усі пропущені точки монтування (через X-mount.mkdir). Див. також --fstab для використання альтернативного fstab.
Вказує альтернативний файл fstab. Якщо шлях є каталогом, файли у каталозі буде упорядковано strverscmp(3); файли, назви яких починаються з «.» або не мають суфікса .fstab, буде проігноровано. Параметр можна вказати декілька разів. Цей параметр, здебільшого, було створено для скриптів initramfs або chroot, де вказано додаткові налаштування поза стандартними налаштуваннями системи.

Зауважте, що mount(8) не передає параметр --fstab допоміжним засобам /sbin/mount.тип, що означає, що альтернативні файли fstab будуть невидимими для допоміжних засобів. Це не проблема для звичайних монтувань, але користувацькі (не від імені root) монтування завжди потребують fstab для перевірки прав доступу користувача.

Аргумент після -t буде використано для того, щоб вказати тип файлової системи. Перелік підтримуваних у поточній версії файлових систем залежить від запущеного ядра. Див. /proc/filesystems та /lib/modules/$(uname -r)/kernel/fs, які надають повний список файлових систем. Найпоширенішими є ext2, ext3, ext4, xfs, btrfs, vfat, sysfs, proc, nfs та cifs.

У програмах mount і umount передбачено підтримку підтипів файлових систем. Підтип визначається суфіксом 'subtype'. Наприклад, 'fuse.sshfs'. Рекомендується використовувати підтипи, ніж додавати префікс до джерела монтування (наприклад, 'sshfs#example.com' є застарілим).

Якщо параметр -t не задано або якщо вказано тип auto, B спробує вгадати бажаний тип. Для визначення типу файлової системи mount використовує blkid; якщо бібліотеці не вдасться знайти щось знайоме, mount спробує прочитати файл /etc/filesystems або, якщо файла не існує, /proc/filesystems. Буде виконано спробу скористатися усіма типами файлових системи зі списку, окрім тих, які позначено міткою «nodev» (наприклад, devpts, proc і nfs). Якщо /etc/filesystems завершується рядком із одинарним *, після цього mount прочитає /proc/filesystems. Під час виконання спроб усі типи файлових систем буде змонтовано з параметром монтування silent.

Тип auto може бути корисним для змонтованих користувачем дискет. Створення файла /etc/filesystems може бути корисним для зміни порядку зондування (наприклад, щоб спробу скористатися vfat було виконано перед спробою скористатися msdos або ext3 мала вищий пріоритет, ніж ext2), або якщо ви користуєтеся автоматичним завантаженням модулів ядра.

Для параметра -t, а також для запису в /etc/fstab декілька типів можна вказати у форматі списку значень, які відокремлено комами. До списку типів файлових систем параметра -t можна дописати префікс no, щоб вказати типи файлових систем, для яких не слід виконувати дій. Префікс no не діятиме, що його вказати для запису в /etc/fstab.

З параметром no можна скористатися префіксом no. Наприклад, команда

mount -a -t nomsdos,smbfs

змонтує усі файлові системи, окрім тих, типом яких є msdos або smbfs.

Для більшості типів програмі mount достатньо видати простий системний виклик mount(2) — ніякого докладного знання типу файлової системи не потрібно. Втім, для декількох типів (зокрема nfs, nfs4, cifs, smbfs, ncpfs) потрібен контекстний код. Для файлових систем nfs, nfs4, cifs, smbfs і ncpfs передбачено окрему програму для монтування. Щоб усі типи можна було обробляти в універсальний спосіб, mount виконуватиме програму /sbin/mount.тип (якщо така існує), коли програмі буде вказано тип тип. Оскільки різні версії програми smbmount використовують різні способи виклику, /sbin/mount.smbfs може бути скриптом оболонки, який налаштовує бажаний виклик.

Змонтувати розділ, який має вказаний uuid.
Режим докладних повідомлень.
Змонтувати файлову систему у режимі читання-запису. Режим читання-запису є типовим для ядра, а типовою поведінкою mount є спроба змонтувати у режимі лише читання, якщо попередній системний виклик mount() із прапорцями читання-запису на захищених від запису пристроях файлових систем зазнав невдачі.

Синонім -o rw.

Зауважте, що зазначення параметра рядка команди -w наказує mount ніколи не намагатися монтувати захищені від запису пристрої або вже змонтовано у режимі лише читання файлові системи.

Вивести дані щодо версії і завершити роботу.
Вивести текст довідки і завершити роботу.

НЕЗАЛЕЖНІ ВІД ФАЙЛОВОЇ СИСТЕМИ ПАРАМЕТРИ МОНТУВАННЯ

Деякі з цих параметрів працюють, лише якщо їх вказано у файлі /etc/fstab.

Деякі з цих параметрів можна типово увімкнути або вимкнути у ядрі системи. Щоб перевірити поточне значення параметра, ознайомтеся із параметрами у /proc/mounts. Зауважте, що файлові системи також мають власні типові параметри монтування (див., наприклад, виведені командою tune2fs -l дані для файлових систем extN).

Наведені нижче параметри стосуються будь-якої файлової системи, яку монтує програма (але не для кожної файлової системи їх буде взято до уваги, — наприклад, параметр sync у поточній версії стосується лише файлових систем ext2, ext3, ext4, fat, vfat, ufs і xfs):

Усе введення-виведення файлової системи має бути виконано асинхронно. (Див. також параметр sync.)
Не використовувати можливість noatime, використавши для керування часом доступу до inode типові параметри ядра системи. Див. також описи параметрів монтування relatime і strictatime.
Не поновлювати час доступу до inode цієї файлової системи (наприклад, для прискорення серверів новин і швидшого доступу до повідомлень). Це працює для усіх типів inode (і для каталогів), тому неявним чином встановлюється nodiratime.
Може бути змонтовано за допомогою параметра -a.
Може бути змонтований тільки явно (тобто параметр -a не монтує систему автоматично).
і rootcontext=контекст Параметр context= є корисним для монтування файлових систем, у яких не передбачено підтримки розширених атрибутів, зокрема дискет та дисків, які форматовано з використанням VFAT, або систем, які, зазвичай, не працюють із SELinux, зокрема форматованих у ext3 або ext4 з робочої станції без SELinux. Ви можете скористатися context= для файлових систем, яким ви не довіряєте, зокрема дискет. Цей параметр також корисний для забезпечення сумісності із файловими системами, у яких передбачено підтримку xattr, у ядрах до 2.4.<x>. Навіть якщо підтримку xattr передбачено, ви можете заощадити час на встановлення міток для кожного файла, призначивши усьому диску один контекст захисту.

Поширеним параметром для портативних носіїв даних є context="system_u:object_r:removable_t".

Двома іншими параметрами є fscontext= і defcontext=. Обидва є взаємно виключними із параметром context=. Це означає, що ви можете використовувати fscontext і defcontext разом, але жоден з цих параметрів не можна використовувати разом із context.

Параметр fscontext= працює для всіх файлових систем, незалежно від підтримки ними xattr. Параметр fscontext встановлює для загальної мітки файлової системи особливий контекст безпеки. Ця мітка файлової системи є окремою від міток на файлах. Вона представляє всю файлову систему для певних видів перевірок дозволів, наприклад, під час монтування або створення файлу. Окремі мітки файлів також можна отримати зі xattr на самих файлах. Параметр контексту фактично встановлює агрегований контекст, який надає fscontext, на додаток до надання однакової мітки для окремих файлів.

Типовий контекст безпеки для файлів без міток можна встановити за допомогою параметра defcontext=. Це замінить значення, встановлене для файлів без міток у політиці, і вимагає файлової системи, яка підтримує мітки xattr.

Параметр rootcontext= дозволяє явно позначити кореневий індекс монтованої файлової системи до того, як ця файлова система або inode стануть видимими в просторі користувача. Це виявилося корисним для таких речей, як Stateless Linux.

Зауважте, що ядро ​​відхиляє будь-який запит на перемонтування, який містить параметр контексту, навіть якщо він не змінюється з поточного контексту.

Попередження: значення контекст може містити коми. У цьому випадку значення має бути належним чином екрановано (взято у лапки), інакше, mount(8) вважатиме кому роздільником між параметрами монтування. Не забувайте, що командна оболонка прибирає екранування, а тому потрібне подвійне екранування. Приклад:

mount -t tmpfs none /mnt -o \
  'context="system_u:object_r:tmp_t:s0:c127,c456",noexec'

Щоб дізнатися більше, див. selinux(8).

Використовувати типові параметри: rw, suid, dev, exec, auto, nouser та async.

Зауважте, що справжній набір усіх типових параметрів монтування залежить від ядра системи та типу файлової системи. Див. початок цього розділу, щоб дізнатися більше.

Інтерпретувати символ або блокувати спеціальні пристрої у файловій системі.
Не інтерпретувати символ або блокувати спеціальні пристрої у файловій системі.
Оновлювати часи доступу до inode каталогів у цій файловій системі. Це типова поведінка. (Цей параметр буде проігноровано, якщо встановлено noatime.)
Не оновлювати часи доступу до inode каталогів у цій файловій системі. (Цей параметр буде встановлено неявним чином, якщо встановлено noatime.)
Усі оновлення каталогів у файловій системі має бути виконано синхронно. Це стосується таких системних викликів: creat, link, unlink, symlink, mkdir, rmdir, mknod і rename.
Дозволити виконання двійкових файлів.
Не дозволяти безпосереднє виконання будь-яких двійкових файлів на змонтованій файловій системі.
Дозволити звичайному користувачеві монтувати файлову систему, якщо одна із груп користувача збігається із групою пристрою. Цей параметр неявним чином встановлює параметри nosuid і nodev (якщо їх не перевизначено наступними параметрами, як у рядку параметрів group,dev,suid).
У відповідь на кожну зміну inode буде збільшено значення поля i_version.
Не збільшувати поле inode i_version.
Дозволити обов'язкові блокування на цій файловій системі. Див. fcntl(2).
Не дозволяти обов'язкові блокування на цій файловій системі.
_netdev
Файлова система зберігається на пристрої, для роботи якого потрібен доступ до мережі (використовують для запобігання спробам системи змонтувати ці файлові системи, доки у системі не буде увімкнено мережу).
Не звітувати про помилки для цього пристрою, якщо він не існує.
Оновлювати часи доступу до inode відносно часу внесення змін. Час доступу буде оновлено, лише якщо час попереднього доступу передував поточному часу внесення змін. (Подібний до noatime, але не порушує роботу mutt або інших програм, які потребують даних щодо того, чи виконувалося читання файла з моменту, коли до файла востаннє було внесено зміни.)

Починаючи Linux 2.6.30, типову поведінку ядра змінено на поведінку із цим увімкненим параметром (якщо не вказано noatime). Для отримання традиційної семантики слід вказати параметр strictatime. Крім того, починаючи з Linux 2.6.30, час останнього доступу до файла завжди оновлюється, якщо з моменту попереднього оновлення минула 1 доба.

Не використовувати можливість relatime. Див. також параметр монтування strictatime.
Дозволяє явним чином надіслати запит щодо повних оновлень atime. Це робить можливим для ядра типово використовувати relatime або noatime, але попри це надавати змогу перевизначати це у просторі користувача. Щоб дізнатися про типові параметри монтування файлової системи, див. /proc/mounts.
Використовувати типову поведінку ядра для оновлень часу доступу до inode.
Оновлювати часи (atime, mtime, ctime) лише у версії inode в оперативній пам'яті.

Використання цього параметра монтування суттєво зменшує кількість записів до таблиці inode у робочих процесах, які виконують часті випадкові записи до попередньо розміщених у пам'яті файлів.

Часові позначки на диску буде оновлено, лише за таких умов:

  • inode потребує оновлення через деякі зміни, які не пов'язано із часовими позначками файла
  • програма використовує fsync(2), syncfs(2) або sync(2)
  • невилучений inode буде викинуто з оперативної пам'яті
  • минуло понад 24 годин з часу, коли inode було записано на диск.

Не використовувати можливість lazytime.
Брати до уваги біти set-user-ID і set-group-ID або можливості файла при виконання програм з цієї файлової системи.
Не брати до уваги біти set-user-ID і set-group-ID або можливості файла при виконання програм з цієї файлової системи.
Увімкнути прапорець обробки без повідомлень (silent).
Вимкнути прапорець обробки без повідомлень (silent).
Дозволити звичайному користувачеві монтувати файлову систему, якщо цей користувач є власником пристрою. Цей параметр неявним чином встановлює параметри nosuid і nodev (якщо їх не перевизначено наступними параметрами, як у рядку параметрів owner,dev,suid).
Спробувати повторно змонтувати вже змонтовану файлову систему. Цим, зазвичай, користуються для зміни прапорців монтування файлової системи, особливо для того, щоб зробити призначену лише для читання файлову систему придатною до запису. Не змінює пристрою чи точки монтування.

Дія з повторного монтування разом із прапорцем bind має спеціальну семантику. Див. вище, розділ Монтування з пов'язуванням.

У функціональній можливості повторного монтування реалізовано стандартний спосіб роботи команди mount із параметрами з fstab. Це означає, що mount не читатиме fstab (або mtab), лише якщо одразу вказано пристрій і каталог.


mount -o remount,rw /dev/foo /dir

Після цього виклику усі старі параметри монтування буде замінено, а довільні дані з fstab (або mtab) буде проігноровано, окрім параметра loop=, який буде створено на внутрішньому рівні і який буде супроводжуватися програмою mount.


mount -o remount,rw /dir

Після цього виклику mount читає fstab і об'єднує ці параметри з параметрами з рядка команди (-o). Якщо в fstab не буде знайдено точки монтування, буде дозволено повторне монтування без визначення джерела.

mount уможливлює використання --all для повторного монтування усіх вже змонтованих файлових систем, які відповідають вказаному фільтру (-O і -t). Приклад:


mount --all -o remount,ro -t vfat

повторно монтує усі вже змонтовані файлові системи vfat у режимі лише читання. Кожну файлову системі буде повторно змонтовано із семантикою «mount -o remount,ro /каталог». Це означає, що програма mount прочитає fstab або mtab і об'єднає ці параметри з параметрами з рядка команди.

Монтувати файлову систему у режимі тільки читання.
Змонтувати файлову систему у режимі читання-запису.
Всі операції вводу/виводу файлової системи повинні виконуватися синхронно. У цьому випадку для носіїв із обмеженою кількістю циклів запису (наприклад, деяких флеш-накопичувачів) sync може спричинити скорочення строку роботи.
Дозволити монтувати файлову систему звичайному користувачеві. Ім'я користувача, який монтує систему, буде записано до файла mtab (або до приватного файла libmount у /run/mount у системах без звичайного mtab) так, щоб саме цей користувача міг знову демонтувати файлову систему. Цей параметр неявним чином встановлює параметри noexec, nosuid і nodev (якщо їх не буде перевизначено наступними параметрами, як у рядку параметрів user,exec,dev,suid).
Заборонити звичайному користувачеві монтувати файлову систему. Це типова поведінка, яка не встановлює неявним чином ніяких додаткових параметрів.
Дозволити будь-якому користувачеві монтувати і демонтувати файлову систему, навіть якщо її було змонтовано якимось іншим звичайним користувачем. Цей параметр неявним чином встановлює параметри noexec, nosuid і nodev (якщо його не перевизначено наступними параметрами, як у рядку параметрів users,exec,dev,suid).
Усі параметри із префіксом «X-» вважатимуться коментарями або специфічними для програми параметрами простору користувача. Ці параметри не зберігаються у просторі користувача (наприклад, файлі mtab), не надсилатиметься до допоміжних засобів mount.тип і не передаватимуться системному виклику mount(2). Рекомендованим форматом є X-назва_програми.параметр.
Те саме, що і параметри X-*, але із постійним збереженням у просторі користувача. Це означає, що параметри також доступні для umount або інших програм. Зауважте, що супровід параметрів монтування у просторі користувача є непростим завданням, оскільки потрібно користуватися заснованими на libmount інструментами, і немає гарантії, що параметри будуть завжди доступними (наприклад, після дії з пересування монтування або у просторі назв без спільного користування даними).

Зауважте, що до util-linux версії 2.30 параметри x-* не супроводжуються libmount і зберігаються у просторі користувача (функціональні можливості у поточній версії ті самі, що і для X-*), але через зростання кількості випадків (у initrd, systemd тощо) функціональні можливості було розширено для підтримання придатності наявних налаштувань fstab без змін.

Дозволити створення каталогу призначення (точки монтування), якщо його ще не існує Додатковий аргумент режим визначає режим доступу до файлової системи, який буде використано у mkdir(2), у вісімковій формі запису. Типовим режимом є 0755. Підтримку цієї функціональної можливості передбачено лише для користувача root або запуску B без прав доступу suid. Підтримку цього параметра також передбачено у формі x-mount.mkdir, але ця форма вважається застарілою з версії 2.30.
Не переходити за символічними посиланням при визначенні шляхів. Попри це, символічні посилання можна буде створювати, а readlink(1), readlink(2), realpath(1) і realpath(3) працюватимуть належним чином.

СПЕЦИФІЧНІ ДЛЯ ФАЙЛОВИХ СИСТЕМ ПАРАМЕТРИ МОНТУВАННЯ

У цьому розділі наведено список параметрів, які є специфічними для певних файлових систем. Де це можливо, вам слід спочатку ознайомитися із специфічними для файлової системи сторінками підручників, щоб мати повнішу картину. Деякі є частиною списку з наведеної нижче таблиці.

Файлові системи Сторінка підручника
btrfs btrfs(5)
cifs mount.cifs(8)
ext2, ext3, ext4 ext4(5)
fuse fuse(8)
nfs nfs(5)
tmpfs tmpfs(5)
xfs xfs(5)

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

Вказані нижче параметри є застосовними лише для деяких файлових систем. Ми впорядкували ці параметри за файловими системами. Усі параметри слід вказувати після прапорця -o.

Перелік підтримуваних параметрів залежить певним чином від використаного ядра системи. Докладніші відомості можна отримати зі специфічних для файлової системи файлів у каталозі початкових кодів ядра Documentation/filesystems.

Параметри монтування adfs

Встановити власника і групу файлів у файловій системі (типові значення: uid=gid=0).
Встановити маску прав доступу для прав доступу «власника» і «інших» ADFS, відповідно (типові значення: 0700 і 0077, відповідно). Див. також /usr/src/linux/Documentation/filesystems/adfs.rst.

Параметри монтування affs

Встановити власника і групу кореня файлової системи (типові значення: uid=gid=0, але з параметром uid або gid без вказаного значення буде використано UID і GID поточного процесу).
Встановити власника і групу усіх файлів.
Встановити режим для усіх файлів значення & 0777, незалежно від початкових прав доступу. Додати права доступу для пошуку у каталогах, на які є право читання. Значення слід вказувати у вісімковій формі.
Не дозволяти вносити зміни до бітів захисту у файловій системі.
Встановити для UID і GID кореня файлової системи значення UID і GID точки монтування при першій синхронізації або демонтуванні, а потім спорожнити значення цього параметра. Дивно…
Виводити інформаційне повідомлення для кожного успішного монтування.
Префікс, який буде використано перед назвою тому, при переході за посиланням.
Префікс (не більше 30 у довжину), який буде використано перед «/» при переході за символічним посиланням.
(Типове значення: 2.) Кількість невикористаних блоків на початку пристрою.
Задати явним чином розташування кореневого блоку.
Задати розмір блоку. Дозволені значення: 512, 1024, 2048, 4096.
Ці параметри буде прийнято, але буде проігноровано. (Втім, інструменти обробки квот можуть реагувати на такі рядки у /etc/fstab.)

Параметри монтування debugfs

Файлова система debugfs є фіктивною файловою системою, яку традиційно монтують до /sys/kernel/debug. На момент виходу ядра версії 3.4 debugfs використовує такі параметри:

Встановити власника і групу точки монтування.
Встановити режим доступу до точки монтування.

Параметри монтування devpts

Файлова система devpts є фіктивною файловою системою, яку традиційно буде змонтовано до /dev/pts. Для отримання псевдотермінала процес відкриває /dev/ptmx; після цього номер псевдотермінала стане доступним процесу. Доступ до підлеглого засобу псевдотермінала можна здійснювати за адресою /dev/pts/<номер>.

Встановлює власника або групу створених псевдотерміналів у вказані значення. Якщо значень не вказано, для власника і групи буде використано значення UID і GID процесу, який створив псевдотермінал. Наприклад, якщо є група tty з GID 5, gid=5 призведе до того, що створені псевдотермінали належатимуть цій групі tty.
Встановити для режиму доступу до створених псевдотерміналів вказане значення. Типовим є значення 0600. Значення mode=620 і gid=5 зробить «mesg y» типовим для нових псевдотерміналів.
Створити конфіденційний екземпляр файлової системи devpts, такий, що індекси псевдотерміналів, які буде отримано у цьому новому екземплярі, будуть незалежними від індексів, які створено в інших екземплярах devpts.

Усі монтування devpts без цього параметра newinstance матимуть спільний набір індексів псевдотерміналів (тобто працюватимуть у застарілому режимі). Кожне монтування devpts з параметром newinstance матиме власний набір індексів псевдотерміналів.

Цей параметр, в основному, призначено для забезпечення підтримки контейнерів у ядрі Linux. Його реалізовано у ядрах Linux, починаючи з версії 2.6.29. Крім того, цей параметр монтування є чинним, лише якщо у налаштуваннях ядра увімкнено CONFIG_DEVPTS_MULTIPLE_INSTANCES.

Щоб ефективно скористатися цим параметром, /dev/ptmx має бути символічним посиланням на pts/ptmx. Див. Documentation/filesystems/devpts.txt у ієрархії початкового коду ядра Linux, щоб дізнатися більше.

Встановити режим доступу для нових вузлів пристроїв ptmx у файловій системі devpts.

Якщо реалізовано підтримку декількох екземплярів devpts (див. параметр newinstance вище), кожен екземпляр має конфіденційний вузол ptmx у корені файлової системи devpts (типово, /dev/pts/ptmx).

Для сумісності із застарілими версіями ядра системи типовим режимом доступу до нового вузла ptmx є 0000. ptmxmode=значення визначає корисніший режим доступу до вузла ptmx. Наполегливо рекомендуємо, якщо вказано параметр newinstance.

Цей параметр реалізовано лише у ядрах Linux, починаючи з версії 2.6.29. Крім того, цей параметр є чинним, лише якщо у налаштуваннях ядра увімкнено CONFIG_DEVPTS_MULTIPLE_INSTANCES.

Параметри монтування fat

(Зауваження: fat не є окремою файловою системою, а лише частиною файлових систем msdos, umsdos і vfat.)

Встановити розмір блоку (типове значення — 512). Цей параметр є застарілим.
Встановити власника і групу усіх файлів. (Типове значення: UID і GID поточного процесу.)
Встановити umask (бітову маску прав доступу, яких немає). Типовим значенням є umask поточного процесу. Значення слід задавати у вісімковій формі.
Встановити umask, який буде застосовано лише до каталогів. Типовим значенням є umask поточного процесу. Значення слід задавати у вісімковій формі.
Встановити umask, який буде застосовано лише до звичайних файлів. Типовим значенням є umask поточного процесу. Значення слід задавати у вісімковій формі.
Цей параметр керує перевіркою прав доступу mtime/atime.
20
Якщо поточний процес належить групі ідентифікатора групи файла, ви можете змінити часову позначку.
2
Часову позначку можуть змінювати інші користувачі.

Типове значення буде встановлено на основі параметра «dmask». (Якщо каталог є придатним до запису, також можна скористатися utime(2). Приклад: ~dmask & 022)

Зазвичай, utime(2) перевіряє, чи є поточний процес власником файла, і чи має він можливість CAP_FOWNER. Втім, файлові системи FAT не мають UID/GID на диску, тому звичайна перевірка є надто негнучкою. За допомогою цього параметра ви можете оптимізувати її.

Можна вибрати один з трьох рівнів:
Прийнятними є літери верхнього і нижнього регістру, вони є еквівалентними. Довгі частини назв буде обрізано (наприклад, дужедовганазва.щосьтам стане дужедовга.щось), можна використовувати початкові і вбудовані пробіли в усіх частинах (назві і суфіксі назви).
Подібний до «relaxed», але не можна використовувати багато спеціальних символів (*, ?, <, пробіли тощо). Це типовий варіант.
Подібний до «normal», але не можна використовувати назви, які містять довгі частин або спеціальні символи, які інколи використовують у Linux, але які є неприйнятними у MS-DOS (+, = тощо).
Встановлює кодову сторінку для перетворення символів коротких назв у файлових системах FAT і VFAT. Типово, буде використано кодову сторінку 437.
Цей параметр є застарілим і може призвести до помилки, або цей параметр буде проігноровано.
Наказує драйверу використовувати модуль CVF (Compressed Volume File, файл стиснутого тому) cvf__модуль замість автоматичного виявлення. Якщо у ядрі передбачено підтримку kmod, параметр cvf_format=xxx також керує завантаженням модуля CVF на вимогу. Цей параметр є застарілим.
Параметр, який буде передано до модуля CVF. Цей параметр є застарілим.
Увімкнути прапорець debug. Буде виведено рядок версії та список параметрів файлової системи (ці дані також буде виведено, якщо буде виявлено несумісність параметрів).
Якщо встановлено, наказує відкинути/виконати TRIM для команд, які буде видано блоковому пристрою, при вивільненні блоків. Це корисно для пристроїв SSD і розріджених/thinly-provisioned LUN.
Якщо встановлено, використовувати резервні типові налаштування блоку параметрів BIOS, які визначено за розміром резервного пристрою. Ці статичні параметри відповідають типовим параметрам, які передбачено у DOS 1.x для дискет 160 КіБ, 180 КіБ, 320 КіБ і 360 КіБ та образів дискет.
Вказати поведінку FAT у відповідь на критичні помилки: паніка, продовжити без реакції або перемонтувати розділ у режимі лише читання (типова поведінка).
Вказати 12-, 16- або 32-бітовий FAT. Має вищий пріоритет за типову автоматичну процедуру виявлення типу FAT. Будьте обережні!
Набір символів, яким слід скористатися при перетворенні між 8-бітовими символами і 16-бітовими символами Unicode. Типовим є iso8859-1. Довгі назви файлів зберігатимуться на диску у форматі Unicode.
Вмикайте, лише якщо ви хочете експортувати файлову систему FAT на основі NFS.

stale_rw: використання цього параметра призводить до підтримання покажчика (кешу) inode каталогів, який буде використано пов'язаним із NFS кодом для удосконалення пошуку. Передбачено підтримку повного набору дій з файлами (читання/запис), але із заміщенням кешу на сервері NFS, це може призвести до паразитних помилок ESTALE.

nostale_ro: використання цього варіанта призводить до того, що номер inode та дескриптор файла буде засновано на розташування файла на диску у записі каталогу FAT. Це забезпечить те, що ESTALE не буде повернуто, після того, як файл буде заміщено з кешу inode. Втім, це означає, що дії, подібні до перейменування, створення та скасування символічних посилань, можуть спричинити те, що дескриптори файлів, які раніше вказували на один файл, вказуватимуть на інший, що може призвести до пошкодження даних. З цієї причини використання цього варіанта також призводить до монтування файлової системи у режимі лише читання.

Для підтримання зворотної сумісності також є прийнятним «-o nfs». Типовий варіантом є stale_rw.

Цей параметр вимикає перетворення часових позначок між місцевим часом (який використовує Windows для FAT) та UTC (який на внутрішньому рівні використовує Linux). Це, зокрема, корисно при монтуванні пристроїв (наприклад, цифрових фотоапаратів), які працюють з UTC, щоб уникнути проблем із визначенням місцевого часу.
Встановити зсув для перетворення часових позначок з місцевого часу, який використано у FAT, до UTC. Тобто, значення хвилини буде віднято від усіх часових позначок, щоб перетворити його на час UTC, який використовують на внутрішньому рівні у Linux. Це корисно, якщо часовий пояс, який встановлено у ядрі за допомогою settimeofday(2), не збігається із часовим поясом, який використано у файловій системі. Зауважте, що цей параметр все одно не дає належних часових позначок в усіх випадках, якщо використано літній час — часові позначки за різних параметрів літнього часу можуть відрізнятися на годину.
Увімкнути прапорець мовчазного режиму. Спроби зміни власника або режиму доступу до файлів не повертатимуть повідомлень про помилки, хоча і будуть невдалими. Будьте обережні!
У FAT є атрибут ATTR_RO (лише читання). У Windows ATTR_RO для каталогу буде просто проігноровано. Цей атрибут використовують лише програми як прапорець (наприклад, його встановлюють для нетипово налаштованої теки).

Якщо вам потрібен атрибут ATTR_RO як прапорець лише читання навіть для каталогів, встановіть цей параметр.

Якщо встановлено, біти прав доступу на виконання файлів можна буде використовувати, лише якщо суфіксом назви файла є .EXE, .COM або .BAT. Типово, не встановлено.
Якщо встановлено, атрибут ATTR_SYS у FAT буде оброблено як прапорець IMMUTABLE у Linux. Типово, не встановлено.
Якщо встановлено, файлова система намагатиметься скидати дані на диск раніше, ніж звичайно. Типово, не встановлено.
Використати значення «вільні кластери», що зберігається у FSINFO. Воно використовуватиметься для визначення кількості вільних кластерів без сканування диска. Але типово воно не використовується, оскільки останнім часом у деяких випадках Windows не оновлює його правильно. Якщо ви впевнені, що значення «вільні кластери» у FSINFO правильне, за допомогою цього параметра можна уникнути сканування диска.
Різні помилкові спроби нав'язати домовленості Unix або DOS до файлової системи FAT.

Параметри монтування hfs

Встановити значення creator/type, як показано у пошуку MacOS, що використовуються для створення нових файлів. Типові значення: «????».
Встановити власника і групу усіх файлів. (Типове значення: UID і GID поточного процесу.)
Встановити umask для всіх каталогів, усіх звичайних файлів або всіх файлів і каталогів. Типово, використовується umask поточного процесу.
Вибрати сеанс CDROM для монтування. Типово, це рішення покладається за драйвер CDROM. Цей параметр не спрацює з будь-яким іншим базовим пристроєм, крім CDROM.
Вибрати номер розділу n на пристрої. Має сенс лише для CDROM. Типово таблиця розділів взагалі не аналізується.
Не скаржитися на некоректні параметри монтування.

Параметри монтування hpfs

Встановити власника і групу усіх файлів. (Типове значення: UID і GID поточного процесу.)
Встановити umask (бітову маску прав доступу, яких немає). Типовим значенням є umask поточного процесу. Значення слід задавати у вісімковій формі.
Перетворити всі назви файлів у нижній регістр або залишити їх. (Типово: case=lower.)
Цей параметр застарілий може призвести до помилки, або буде знехтуваний.
Не переривати монтування, якщо не вдасться пройти певні перевірки узгодженості.

Параметри монтування iso9660

ISO 9660 — це стандарт, що описує структуру файлової системи, яка буде використовуватися на компакт-дисках. (Цей тип файлової системи також можна побачити на деяких DVD-дисках. Див. також файлову систему udf.)

Звичайні назви файлів iso9660 мають формат 8.3 (тобто обмеження довжини назви файлу нагадують DOS), і, крім того, всі символи пишуться у верхньому регістрі. Також немає полів для власника файлу, захисту, кількості посилань, надання блокових/символьних пристроїв тощо.

Rock Ridge — це розширення для iso9660, яке надає всі ці функції, подібні до UNIX. Загалом, для кожного запису каталогу є розширення, які надають всю додаткову інформацію, і за використання Rock Ridge файлова система не відрізняється від звичайної файлової системи UNIX (звичайно, за винятком того, що вона доступна лише для читання).

Вимкнути використання розширення Rock Ridge, навіть якщо воно є доступним. Порівняйте з map.
Вимкнути використання розширення Microsoft Joliet, навіть якщо воно є доступним. Порівняйте з map.
За допомогою check=relaxed перед початком пошуку назва файлу перетворюється в нижній регістр. Це, ймовірно, має значення лише разом із norock і map=normal. (Типово: check=strict.)
Надати всім файлам у файловій системі вказаний ідентифікатор користувача або групи, можливо, замінивши інформацію, знайдену в розширеннях Rock Ridge. (Типово: uid=0,gid=0.)
Для томів, які не належать до Rock Ridge, звичайне перетворення назв відображає ASCII з верхнього в нижній регістр, відкидає кінцевий «;1» і перетворює «;» на «.». Якщо map=off, то назва не перетворюється. Див. norock. (Типово: map=normal.) map=acorn схоже на map=normal, але також застосовує, за наявності, розширення Acorn.
Для томів, які не належать до Rock Ridge, надайте всім файлам зазначений режим. (Типово: дозвіл на читання та виконання для всіх.) Для вісімкових значень режиму потрібен початковий 0.
Також показувати приховані та пов'язані файли. (Якщо звичайні файли та пов'язані чи приховані файли мають однакові назви, це може зробити звичайні файли недоступними.)
Встановити вказане значення розміру блока. (Типово: block=1024.)
Цей параметр застарілий може призвести до помилки, або буде знехтуваний.
Якщо старший байт довжини файлу містить сміття, встановіть цей параметр монтування, щоб нехтувати старші біти довжини файлу. Це означає, що розмір файлу не може перевищувати 16 МБ.
Вибрати номер сеансу для багатосеансового компакт-диска.
Сеанс починається з сектора xxx.

Подальші параметри такі ж, як і для vfat, і вказувати їх має сенс лише за використання дисків, закодованих за допомогою розширень Joliet від Microsoft).

Набір символів для перетворення 16-бітових символів Unicode на компакт-диску у 8-бітові символи. Типово встановлено iso8859-1.
Перетворити 16-бітові символи Unicode на компакт-диску в UTF-8.

Параметри монтування jfs

Набір символів для перетворення з Unicode в ASCII. Типовим є не виконувати перетворення. Для перетворення в UTF8 використовуйте iocharset=utf8. Для цього у файлі .config ядра потрібно встановити CONFIG_NLS_UTF8.
Змінити обсягу до значення блоків. JFS підтримує лише збільшення обсягу, а не його скорочення. Цей параметр діє лише під час перемонтування, коли том підключено для читання-запису. Ключове слово resize без значення збільшить обсяг до повного розміру розділу.
Не записувати в журнал. Цей параметр переважно використовують для підвищення продуктивності під час відновлення тому з резервного носія. Якщо система ненормально завершує роботу, то цілісність тому не гарантується.
Типове. Занести зміни метаданих у журнал. Використовуйте цей параметр, щоб перемонтувати том, де раніше було вказано параметр nointegrity, для відновлення звичайної поведінки.
Визначає поведінку при виникненні помилки. (Або нехтувати помилки та просто позначити файлову систему як помилкову та продовжити, або перемонтувати файлову систему лише для читання, або панічно зупинити систему.)
Ці параметри буде прийнято, але проігноровано.

Параметри монтування msdos

Див. параметри монтування для FAT. Якщо файлова система msdos виявляє неузгодженість, вона повідомляє про помилку та встановлює для файлової системи режим лише для читання. Файлову систему можна знову зробити придатною для запису, перемонтувавши її.

Параметри монтування ncpfs

Як і nfs, реалізація ncpfs очікує двійкового аргументу (struct ncp_mount_data) для системного виклику mount. Цей аргумент створено ncpmount(8), а поточна версія mount (2.12) нічого не знає про ncpfs.

Параметри монтування ntfs

Набір символів для використання під час повернення назв файлів. На відміну від VFAT, NTFS пригнічує назви, які містять символи, що не конвертуються. Застаріле.
Нова назва параметра, який раніше мав назву iocharset.
Скористатися UTF-8 для перетворення назв файлів.
0 (або «no» чи «false») - не використовувати escape-послідовностей для невідомих символів Unicode. 1 (або «yes» чи «true») або 2 - використовувати 4-байтові escape-послідовності у стилі vfat, які починаються з ":". 2 означає кодування з першим молодшим байтом, а 1 - кодування з першим старшим байтом.
Якщо ввімкнено (posix=1), файлова система розрізняє верхній і нижній регістр. Псевдоніми 8.3 представлено як жорсткі посилання, а не приховані. Цей варіант застарів.
Встановити дозвіл на файл у файловій системі. Значення umask подається у вісімковій системі. Типово файли належать користувачу root і не доступні для читання кимось іншим.

Параметри монтування overlay

Починаючи від Linux 3.18, накладна псевдофайлова система реалізує об'єднане монтування для інших файлових систем.

Накладна файлова система поєднує дві файлові системи - файлову систему верхню і файлову систему нижню. Якщо назва існує в обох файлових системах, об'єкт у верхній файловій системі буде видимим, а об'єкт у нижній файловій системі або прихованим, або, у випадку каталогів, об'єднаним із верхнім об'єктом.

Нижньою файловою системою може бути будь-яка файлова система, яку підтримує Linux, можливо, недоступна для запису. Нижня файлова система може бути навіть іншою накладною файловою системою. Верхня файлова система зазвичай доступна для запису, і, якщо так, вона має підтримувати створення розширених атрибутів trusted.* і надавати дійсний тип d_type у відповідях readdir, тому NFS для цього не підходить.

Накласти лише для читання можна дві файлові системи, доступні лише для читання, будь-якого типу. Параметри lowerdir і upperdir об'єднуються в спільний каталог за допомогою:


mount -t overlay  overlay  \
-olowerdir=/lower,upperdir=/upper,workdir=/work  /merged

Будь-яка файлова система, не обов'язково доступна для запису.
Верхній каталог, зазвичай міститься у файловій системі, доступній для запису.
Робочий каталог, має бути порожнім каталогом у тій самій файловій системі, що й upperdir.

Параметри монтування reiserfs

Reiserfs є журнальованою файловою системою.

Наказує версії 3.6 програмного забезпечення reiserfs змонтувати файлову систему 3.5 з використанням формату 3.6 для новостворених об'єктів. Ця файлова система стане несумісною із інструментами reiserfs 3.5.
Вибрати функцію обчислення хеш-сум, якою reiserfs користуватиметься для пошуку файлів у каталогах.
Хеш, який винайдено Юрієм Ю. Рупасовим. Він є швидким і зберігає локальність, відображаючи лексикографічно близькі назви файлів у близькі значення хеш-сум. Не слід користуватися цим параметром, оскільки він спричиняє високу ймовірність збігів хеш-збігів.
Функція Девіса-Меєра, яку реалізовано Джеремі Фітцгардінгом. У ній використано біти, які змінюють хеш-суму у назві. Має високий рівень псевдовипадковості, а отже, низьку ймовірність збігів хеш-сум за рахунок певного навантаження на процесор. Може бути використано, якщо виникають помилки EHASHCOLLISION у хеш-сумах r5.
Змінена версія хеш-сум Рупасова. Є типовою і є найкращим вибором, якщо у системі немає величезних каталогів і незвичних шаблонів назв файлів.
Наказує mount виявити хеш-функцію, яку використано, шляхом інспектування файлової системи, монтування якої виконується, і записати ці дані до суперблоку reiserfs. Корисний лише під час першого монтування файлової системи у застарілому форматі.
Коригує поведінку засобу розміщення блоків. Може збільшити швидкодію у певних випадках.
Коригує поведінку засобу розміщення блоків. Може збільшити швидкодію у певних випадках.
Вимкнути алгоритм розміщення на межі, який винайдено Юрієм Ю. Рупасовим. Може у певних ситуаціях підвищити швидкодію.
Вимкнути журналювання. Це дещо підвищить швидкодію у певних ситуаціях ціною втрати можливості reiserfs щодо швидкого відновлення після аварій. Навіть якщо цей параметр буде увімкнено, reiserfs все одно виконуватиме усі дії з журналювання, окрім самого запису до своєї області журналювання. Реалізація nolog усе ще триває.
Типово, reiserfs зберігає малі файли і «хвостики файлів» безпосередньо у своїй ієрархії. Це призводить до помилок у деяких допоміжних програмах, зокрема LILO(8). За допомогою цього параметра можна вимкнути пакування файлів до ієрархії.
Відтворити операції, які записано до журналу, але не монтувати саму файлову систему. В основному, для використання у reiserfsck.
Параметр повторного монтування, який уможливлює інтерактивне розширення розділів reiserfs. Наказує reiserfs припускати, що у пристрої число блоків. Цей параметр розроблено для пристроїв, які перебувають під керуванням логічними томами (LVM). Передбачено спеціальну допоміжну програму resizer, яку можна отримати з ftp://ftp.namesys.com/pub/reiserfsprogs.
Увімкнути розширені атрибути користувача. Див. сторінку підручника attr(1).
Увімкнути списки керування доступом (ACL) POSIX. Див. сторінку підручника acl(5).
Вимикає або вмикає використання бар'єрів для запису у коді ведення журналу. barrier=none вимикає, barrier=flush вмикає (типовий варіант). Реалізація можливості потребує також підтримки бар'єрів у стосі введення-виведення. Якщо у reiserfs станеться помилка під час бар'єрного запису, файлова система знову вимкне бар'єри з повідомленням-попередженням. Бар'єри запису примусово встановлюють належне упорядкування внесків до журналу на диску, що робить безпечним кешування запису на тимчасові диски за рахунок певної втрати швидкості. Якщо ваші диски у певний спосіб забезпечено живленням від акумуляторів, вимикання бар'єрів може без втрати убезпечення зберігання даних дещо підвищити швидкодію.

Параметри монтування ubifs

UBIFS — файлова система для флеш-носіїв, які працюють на базі томів UBI. Зауважте, що підтримки atime не передбачено, і цей параметр завжди вимкнено.

Назву пристрою можна вказати як

ubiX_Y — номер пристрою UBI X, номер тому Y
Номер пристрою UBI 0, номер тому Y
Номер пристрою UBI X, том із назвою НАЗВА
Номер пристрою UBI 0, том із назвою НАЗВА

Можна використовувати альтернативний роздільник ! замість :.

Можна скористатися одним з таких параметрів монтування:
Увімкнути пакетне читання. Випереджальне читання VFS вимкнено, оскільки воно уповільнює роботу файлової системи. Пакетне читання є внутрішньою оптимізацією. Читання з деяких флеш-накопичувачів може бути швидшим, якщо дані буде прочитано у один прохід, а не з використанням декількох запитів щодо читання. Наприклад, OneNAND може виконувати дію «читання під час завантаження», якщо читає декілька сторінок NAND одразу.
Не виконувати пакетного читання. Це типова поведінка.
Перевірити контрольні суми CRC-32 даних. Це типова поведінка.
Не перевіряти контрольні суми CRC-32 даних. Із цим параметром файлова система не перевірятиме контрольні суми CRC-32 даних, але виконуватиме перевірку на внутрішні дані індексування. Цей параметр стосується лише читання, а не записування. Під час записування даних обчислення CRC-32 відбуватиметься завжди.
Вибрати типовий засіб стискання, який буде використано при записуванні нових файлів. Стиснуті файли все ще можна буде прочитати, якщо змонтувати файлову систему із параметром none.

Параметри монтування udf

UDF — скорочення від «Universal Disk Format» (універсальний формат дисків). Цю файлову систему стандартизовано OSTA, Optical Storage Technology Association (Асоціацією технології оптичного зберігання даних). Файлову систему часто використовують для DVD-ROM у формі гібриду із файловою системою UDF/ISO-9660. Втім, файловою системою цілком можна користуватися для дискових носіїв даних, флеш-носіїв та інших блокових пристроїв. Див. також iso9660.

Зробити власником усіх файлів у файловій системі вказаного користувача. Окремо від (а, зазвичай, на додачу до) uid=<користувач>, можна вказати uid=forget. У результаті UDF не зберігатиме uid на носії даних. Фактично, записаний uid є 32-бітовим переповненням uid -1, як його визначено у стандарті UDF. Значення можна вказувати або як <користувач>, де слід використати чинну назву облікового запису користувача, або у формі відповідного десяткового ідентифікатора користувача, або у формі спеціального рядка «forget».
Зробити власницею усіх файлів у файловій системі вказану групу. Окремо від (а, зазвичай, на додачу до) gid=<група>, можна вказати gid=forget. У результаті UDF не зберігатиме gid на носії даних. Фактично, записаний gid є 32-бітовим переповненням gid -1, як його визначено у стандарті UDF. Значення можна вказувати або як <група>, де слід використати чинну назву групи, або у формі відповідного десяткового ідентифікатора групи, або у формі спеціального рядка «forget».
Замаскувати вказані права доступу для усіх inode, які прочитано з файлової системи. Значення слід вказувати у вісімковому форматі.
Якщо встановлено mode=, права доступу до усіх inode, які не є inode каталогів, які прочитано з файлової системи, буде встановлено для заданого mode. Значення слід вказувати у вісімковому форматі.
Якщо встановлено dmode=, права доступу до усіх inode каталогів, які прочитано з файлової системи, буде встановлено для заданого dmode. Значення слід вказувати у вісімковому форматі.
Встановити розмір блоку. Типовим значенням до версії ядра 2.6.30 було 2048. Починаючи з версії 2.6.30 і до версії 4.11, це був розмір блоку логічного пристрою із резервним значенням 2048. Починаючи з версії 4.11, це розмір логічного блоку із резервним значенням, яке дорівнює будь-якому розміру блоку від розміру блоку логічного пристрою до 4096.

Щоб ознайомитися із іншими подробицями, прочитайте сторінку підручника mkudffs(8) 2.0+, розділи СУМІСНІСТЬ і РОЗМІР БЛОКУ.

Показувати приховані за інших умов файли.
Показувати вилучені файли у списках.
Вбудовувати дані до inode. (типова поведінка)
Не вбудовувати дані до inode.
Скористатися скороченими дескрипторами адрес UDF.
Використовувати довгі дескриптори адрес UDF. (типова поведінка)
Скасувати строгу узгодженість.
Встановити набір символів NLS. Це потребує збирання ядра з параметром CONFIG_UDF_NLS.
Встановити кодування UTF-8.

Параметри монтування для діагностики і відновлення після аварій

Ігнорувати послідовність розпізнавання томів (VRS) і спробувати виконати монтування попри все.
Вибрати номер сеансу для багатосеансового оптичного носія даних. (типове значення=номер останнього сеансу)
Перевизначити стандартне місце прив'язки. (типове значення= 256)
Встановити останній блок файлової системи.

Невикористовувані застарілі параметри монтування, які можна ще зустріти, їх має бути вилучено

Буде проігноровано, користуйтеся uid=<користувач>.
Буде проігноровано, користуйтеся gid=<група>.
Не реалізовано, буде проігноровано.
Не реалізовано, буде проігноровано.
Не реалізовано, буде проігноровано.
Не реалізовано, буде проігноровано.

Параметри монтування ufs

UFS є файловою системою, яку широко використовують у різних операційних системах. Проблемою є різниця у реалізаціях. Можливості деяких реалізацій не документовано, тому важко розпізнати тип ufs автоматично. Ось чому користувачеві слід вказати тип ufs параметром монтування. Можливими значеннями є такі:
Старий формат ufs, є типовим, лише читання (Не забудьте вказати параметр -r.)
44bsd
Для файлових систем, які створено BSD-подібною системою (NetBSD, FreeBSD, OpenBSD).
Використовується у підтримуваних FreeBSD 5.x для читання-запису.
5xbsd
Синонім до ufs2.
Для файлових систем, які створено SunOS або Solaris у Sparc.
Для файлових систем, які створено Solaris у x86.
Для файлових систем, які створено HP-UX, лише читання.
Для файлових систем, які створено NeXTStep (на станції NeXT) (у поточній версії лише читання).
Для CDROM-ів NextStep (block_size == 2048), лише читання.
Для файлових систем, які створено OpenStep (у поточній версії лише читання). Той самий тим файлової системи також використовує Mac OS X.

Встановити поведінку у відповідь на помилку:
Якщо трапилася помилка, ініціювати паніку ядра системи.
[lock|umount|repair]
У поточній версії ці параметри не виконують ніяких функцій. Якщо буде виявлено помилку, програма лише виведе повідомлення до консолі.

Параметри монтування umsdos

Див. параметри монтування для msdos. Параметр dotsOK явним чином знищується umsdos.

Параметри монтування vfat

Перш за все, буде розпізнано параметри монтування для fat. Параметр dotsOK буде явним чином прибрано вибором vfat. Далі, є

Перетворити непридатні до обробки символи Unicode на спеціальні екрановані послідовності символів. Це надасть вам змогу створювати резервні копії і відновлювати з них назви файлів, які створено із будь-якими символами Unicode. Без цього параметра, якщо перетворення неможливе, для символів буде використано «?». Символом екранування є «:», оскільки інші символи у файловій системі vfat будуть некоректними. Екрановані послідовності, які буде використано, з позначенням символу Unicode літерою u: «:», (u & 0x3f), ((u>>6) & 0x3f), (u>>12).
Дозволити два файли із назвами, які відрізняються лише регістром символів. Цей параметр є застарілим.
Спочатку спробувати створити коротку назву без номера у послідовності, перш ніж спробувати назва~номер.суфікс.
UTF8 — безпечне щодо файлових системи 8-бітове кодування Unicode, яке використовує консоль. Його можна увімкнути для файлової системи за допомогою цього параметра або вимкнути за допомогою utf8=0, utf8=no або utf8=false. Якщо встановлено «uni_xlate», UTF8 буде вимкнено.
Визначає поведінку при створенні і показу назв файлів, які відповідають критерію «8.3 символів». Якщо існує довга назва файла, перевагу при показі буде завжди віддано цій назві. Передбачено чотири режими:
Примусово перетворювати літери короткої назви на малі при показі; зберігати довгу назву, якщо не усі символи короткої назви є літерами верхнього регістру.
Примусово перетворювати літери короткої назви на великі при показі; зберігати довгу назву, якщо не усі символи короткої назви є літерами верхнього регістру.
Показувати коротку назву без змін; зберігати довгу назву, якщо не усі символи короткої назви є літерами нижнього або верхнього регістру.
Показувати коротку назву без змін; зберігати довгу назву, якщо не усі символи короткої назви є літерами верхнього регістру. Цей режим є типовим, починаючи з Linux 2.6.32.

Параметри монтування usbfs

Встановити власника і групу файлів пристроїв у файловій системі usbfs (типові значення: uid=gid=0, mode=0644). Режим слід вказувати у вісімковій формі.
Встановити власника і групу каталогів шин у файловій системі usbfs (типові значення: uid=gid=0, mode=0555). Режим слід вказувати у вісімковій формі.
Встановити власника і групу, а також режим файлових пристроїв (типові значення: uid=gid=0, mode=0444). Режим слід вказувати у вісімковій формі.

ПІДТРИМКА DM-VERITY (експериментальна)

Ціль device-mapper verity надає доступ до читання із прозорою перевіркою цілісності даних блокових пристроїв з використанням шифрувального програмного інтерфейсу ядра системи. Програма mount здатна відкривати пристрої dm-verity і виконувати перевірку цілісності даних до монтування файлової системи пристрою. Потребує libcryptsetup у libmount (можна з використанням dlopen). Якщо у libcryptsetup передбачено підтримку видобування хеш-суми кореня вже змонтованого пристрою, наявні пристрої, якщо вони є відповідними, буде використано автоматично. Параметри монтування dm-verity:

Шлях до пристрою ієрархії хеш-сум, який пов'язано із початковим томом, який слід передати dm-verity.
Хеш кореня verityhashdevice у шістнадцятковому кодуванні. Є взаємно виключним із verity.roothashfile.
Шлях до файла, який містить хеш-суму кореня verityhashdevice у шістнадцятковому кодуванні. Є взаємно виключним із verity.roothash.
Якщо пристрій дерева хеш-сум вбудовано до початкового тому, для отримання dm-verity ієрархії буде використано відступ (типове значення: 0).
Шлях до пристрою Forward Error Correction (FEC), який пов'язано із початковим томом, який слід передати dm-verity. Не обов'язковий. Потребує ядра, яке зібрано з CONFIG_DM_VERITY_FEC.
Якщо пристрій FEC вбудовано до початкового тому, для отримання dm-verity області FEC буде використано відступ (типове значення: 0). Необов'язковий.
Байти парності для FEC (типове значення: 2). Необов'язковий.
Шлях до підпису pkcs7 шістнадцяткового рядка хеш-суми кореня файлової системи Потребує crypt_activate_by_signed_key() з cryptsetup і ядра, яке зібрано із CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG. Для повторного використання пристрою підписи має бути або використано усіма монтуваннями пристрою, або не використано жодним. Необов'язковий.

Передбачено підтримку з util-linux v2.35.

Наприклад, такі команди:

mksquashfs /etc /tmp/etc.squashfs
dd if=/dev/zero of=/tmp/etc.hash bs=1M count=10
veritysetup format /tmp/etc.squashfs /tmp/etc.hash
openssl smime -sign -in <hash> -nocerts -inkey private.key \
-signer private.crt -noattr -binary -outform der -out /tmp/etc.p7
mount -o verity.hashdevice=/tmp/etc.hash,verity.roothash=<hash>,\
verity.roothashsig=/tmp/etc.p7 /tmp/etc.squashfs /mnt

створять образ squashfs з каталогу /etc, пристрій хешів істинності та змонтують перевірений образ файлової системи до /mnt. Ядро перевірить, чи кореневий хеш підписано ключем зі сховища ключів ядра, якщо використано roothashsig.

ПІДТРИМКА ПЕТЛЬОВИХ ПРИСТРОЇВ

Одним із подальших можливих типів є монтування через петльовий пристрій. Наприклад, команда

mount /tmp/disk.img /mnt -t vfat -o loop=/dev/loop3

налаштує петльовий пристрій /dev/loop3, який відповідає файлу /tmp/disk.img, а потім змонтує цей пристрій до /mnt.

Якщо петльовий пристрій не вказано явним чином (а задано лише параметр «-o loop), mount спробує знайти невикористаний петльовий пристрій і скористатися ним. Приклад

mount /tmp/disk.img /mnt -o loop

Команда mount автоматично створює петльовий пристрій зі звичайного файла, якщо не вказано тип файлової системи або файлова система є відомою libblkid. Приклад:

mount /tmp/disk.img /mnt

mount -t ext4 /tmp/disk.img /mnt

Для цього типу монтування передбачено три параметри, а саме, loop, offset і sizelimit, які насправді є параметрами losetup(8). (Ці параметри можна використати для доповнення специфічних для типу файлової системи параметрів.)

Починаючи від Linux 2.6.25 підтримується автоматичне знищення петльових пристроїв, тобто, будь-який петльовий пристрій, виділений за допомогою mount, буде вивільнено за допомогою umount незалежно від /etc/mtab.

Петльовий пристрій також можна вивільнити вручну, скориставшись losetup -d або umount -d.

Починаючи від util-linux версії 2.29, mount повторно використовує петльовий пристрій, а не ініціалізує новий пристрій, якщо для певного петльового пристрою вже використовується той самий резервний файл з таким самим зміщенням і обмеженням розміру. Це необхідно, щоб уникнути пошкодження файлової системи.

СТАН ВИХОДУ

Для mount передбачено такі значення стану виходу (біти станів може бути поєднано логічним АБО):

0
успіх
1
некоректний виклик або права доступу
2
помилка системи (не вистачає пам'яті, не вдалося створити відгалуження, не лишилося петльових пристроїв)
4
внутрішня вада mount
8
перервано користувачем
16
проблеми із записуванням або блокуванням /etc/mtab
32
спроба монтування завершилася невдало
64
успіх деяких монтувань

Команда mount -a повертає 0 (усі успішно), 32 (усі невдало) або 64 (деякі невдало, деякі успішно).

ЗОВНІШНІ ДОПОМІЖНІ ЗАСОБИ

Синтаксис зовнішніх допоміжних засобів монтування такий:


/sbin/mount.суфікс spec dir [-sfnv] [-N простір_назв] [-o параметри] [-t тип.підтип]

де суфікс - це тип файлової системи, а параметри -sfnvoN мають таке ж значення, що й звичайні параметри монтування. Параметр -t використовується для файлових систем із підтримкою підтипів (наприклад, /sbin/mount.fuse -t fuse.sshfs).

Команда mount не передає параметрів монтування unbindable, runbindable, private, rprivate, slave, rslave, shared, rshared, auto, noauto, comment, x-*, loop, offset і sizelimit допоміжним засобам mount.<суфікс>. Усі інші параметри використовуються в списку, розділеному комами, як аргумент для параметра -o.

СЕРЕДОВИЩЕ

замінює типове розташування файлу fstab (нехтується для suid)
замінює типове розташування файлу mtab (нехтується для suid)
вмикає показ діагностичних повідомлень libmount
вмикає показ діагностичних повідомлень libblkid
вмикає показ діагностичних повідомлень налаштування петльового пристрою

ФАЙЛИ

Див. також вище розділ "Файли /etc/fstab, /etc/mtab і /proc/mounts".

/etc/fstab
таблиця файлових систем
/run/mount
приватний каталог libmount на час виконання
/etc/mtab
таблиця змонтованих файлових систем або символьне посилання на /proc/mounts
/etc/mtab~
файл блокування (не використовується в системах із символьним посиланням mtab)
/etc/mtab.tmp
тимчасовий файл (не використовується в системах із символьним посиланням mtab)
/etc/filesystems
список типів файлових систем, якими можна скористатися

ЖУРНАЛ

Команда mount існувала у AT&T UNIX версії 5.

ВАДИ

Пошкоджена файлова система може призвести до збою.

Деякі файлові системи Linux не підтримують -o sync і -o dirsync (файлові системи ext2, ext3, ext4, fat і vfat підтримують синхронні оновлення (як у BSD), якщо їх змонтовано з параметром sync).

-o remount може бути не в змозі змінити параметри монтування (всі специфічні для ext2fs параметри, крім sb, можна змінити за допомогою перемонтування, наприклад, але не можна змінити gid або umask для fatfs).

Можливо, файли /etc/mtab та /proc/mounts не збігаються в системах зі звичайним файлом mtab. Перший файл заснований лише на параметрах команди mount, але вміст другого файлу також залежить від ядра та інших налаштувань (наприклад, на віддаленому сервері NFS — у деяких випадках команда mount може повідомляти ненадійну інформацію про точку монтування NFS, а файл /proc/mount зазвичай містить більш надійну інформацію.) Це ще одна причина замінити файл mtab символьним посиланням на файл /proc/mounts.

Перевірка у файлових системах NFS файлів, на які посилаються дескриптори файлів (тобто сімейства функцій fcntl і ioctl), може призвести до невідповідних результатів через відсутність перевірки узгодженості в ядрі, навіть якщо використовується параметр монтування noac.

Параметр loop із використаними параметрами offset або sizelimit може спричинити помилку за використання старих ядер, якщо команда mount не може підтвердити, що розмір блокового пристрою налаштовано відповідно до запиту. Цю ситуацію можна обійти за допомогою ручного введення команди losetup перед викликом mount для налаштованого петльового пристрою.

АВТОРИ

Karel Zak <kzak@redhat.com>

ДИВ. ТАКОЖ

lsblk(1), mount(2), umount(2), filesystems(5), fstab(5), nfs(5), xfs(5), mount_namespaces(7) xattr(7) e2label(8), findmnt(8), losetup(8), mke2fs(8), mountd(8), nfsd(8), swapon(8), tune2fs(8), umount(8), xfs_admin(8)

ДОСТУПНІСТЬ

Програма mount є частиною пакунка util-linux і доступна за адресою https://www.kernel.org/pub/linux/utils/util-linux/.

ПЕРЕКЛАД

Український переклад цієї сторінки посібника виконано Andriy Rysin <arysin@gmail.com>, lxlalexlxl <lxlalexlxl@ukr.net> і Yuri Chornoivan <yurchor@ukr.net>

Цей переклад є безкоштовною документацією; будь ласка, ознайомтеся з умовами GNU General Public License Version 3. НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ.

Якщо ви знайшли помилки у перекладі цієї сторінки підручника, будь ласка, надішліть електронний лист до списку листування перекладачів: trans-uk@lists.fedoraproject.org.

Серпень 2015 року util-linux