table of contents
- НАЗВА
- КОРОТКИЙ ОПИС
- ОПИС
- ПАРАМЕТРИ КОМАНДНОГО РЯДКА
- НЕЗАЛЕЖНІ ВІД ФАЙЛОВОЇ СИСТЕМИ ПАРАМЕТРИ МОНТУВАННЯ
- СПЕЦИФІЧНІ ДЛЯ ФАЙЛОВИХ СИСТЕМ ПАРАМЕТРИ МОНТУВАННЯ
- ПІДТРИМКА DM-VERITY
- ПІДТРИМКА ПЕТЛЬОВИХ ПРИСТРОЇВ
- СТАН ВИХОДУ
- ЗОВНІШНІ ДОПОМІЖНІ ЗАСОБИ
- СЕРЕДОВИЩЕ
- ФАЙЛИ
- ЖУРНАЛ
- ВАДИ
- АВТОРИ
- ТАКОЖ ПЕРЕГЛЯНЬТЕ
- ЯК НАДІСЛАТИ ЗВІТ ПРО ВАДИ
- ДОСТУП ДО ПРОГРАМИ
MOUNT(8) | Керування системою | MOUNT(8) |
НАЗВА¶
mount - змонтувати файлову систему
КОРОТКИЙ ОПИС¶
mount [-h|-V]
mount [-l] [-t fstype]
mount -a [-fFnrsvw] [-t fstype] [-O optlist]
mount [-fnrsvw] [-o options] device|mountpoint
mount [-fnrsvw] [-t fstype] [-o options] device mountpoint
mount --bind|--rbind|--move olddir newdir
mount --make-[shared|slave|private|unbindable|rshared|rslave|rprivate|runbindable] mountpoint
ОПИС¶
Всі файли, доступні в системі Unix, зібрані в одне велике дерево, ієрархію файлів, з коренем в /. Ці файли можуть розташовуватися на різних пристроях. Команда mount служить для приєднання файлової системи, знайденої на деяких пристроях, у велике дерево файлів. І навпаки, команда umount(8) знову їх від’єднує. Файлова система використовується, щоб контролювати, як дані зберігаються на пристрої або наданому у віртуальний спосіб через мережу або інші служби.
Стандартна форма команди mount є:
mount -t type device dir
Наказує ядру приєднати файлову систему, знайдену на пристрій (що має тип тип>) в каталозі _каталог>. Параметр -t _тип є необов’язковим. Команда mount переважно сама може визначити файлову систему. Дозволи root типово необхідні, щоб змонтувати файлову систему. Див. розділ "Монтування для несуперкористувача" нижче щодо подальшої інформації. Попередній вміст (якщо він був) а також власник та режим доступу каталог стають невидимі, і поки система примонтована, шлях каталог вказує на кореневу файлову систему на _пристрій>.
Якщо надано лише каталог або пристрій, наприклад:
mount /dir
тоді mount шукає точку монтування (а якщо її не знайдено, то пристрій) у файлі /etc/fstab. Можна використовувати параметри --target або --source, щоб уникнути неоднозначної інтерпретації цього аргументу. Наприклад:
mount --target /mountpoint
Одну й ту ж файлову систему можна змонтувати кілька разів, а в деяких випадках (наприклад, мережеві файлові системи) одну й ту ж файлову систему можна кілька разів змонтувати до однієї точки монтування. Команда mount не реалізує жодної політики для керування цією поведінкою. Уся поведінка керується ядром і зазвичай залежить від драйвера файлової системи. Винятком є --all: у цьому випадку вже змонтовані файлові системи нехтуються (докладніше див. --all нижче).
Отримання списку змонтованого¶
Списковий режим підтримується лише для сумісності з попередніми версіями.
Для докладнішого та налаштовуваного виведення, особливо у власних скриптах, використовуйте findmnt(8). Зверніть увагу, що символи керування в назві точки монтування замінюються на «?».
Така команда виведе перелік усіх змонтованих файлових систем (типу _тип>):
mount [-l] [-t type]
Параметр -l додає до цього списку мітки. Див. нижче.
Вказує пристрій і файлову систему¶
Більшість пристроїв позначаються назвою файлу (блокового спеціального пристрою), як і /dev/sda1, але можливе й інше. Наприклад, у випадку монтування NFS, пристрій може мати вигляд knuth.cwi.nl:/dir.
Назви пристроїв розділів диска нестабільні; зміна конфігурації обладнання, а також додавання чи видалення пристрою може призвести до зміни назв. Тому дуже бажано використовувати ідентифікатори файлових систем або розділів, такі як UUID або LABEL. Наразі підтримуються такі ідентифікатори (теги):
LABEL=мітка
UUID=uuid
Зверніть увагу, що mount використовує UUID як рядки. UUID з командного рядка або з fstab(5) не перетворюються у внутрішнє двійкове подання. В рядковому поданні UUID слід використовувати символи нижнього регістру.
PARTLABEL=мітка
PARTUUID=uuid
ID=ідентифікатор
Команда lsblk --fs надає огляд файлових систем, міток та UUID на доступних блокових пристроях. Команда blkid -p <пристрій> надає детальну інформацію про файлову систему на вказаному пристрої.
Пам’ятайте, що унікальні UUID та міток не гарантована, особливо якщо ви переміщуєте, надаєте спільний доступ або копіюєте пристрій. Щоб переконатися, що UUID у вашій системі дійсно унікальні, скористайтесь lsblk -o +UUID,PARTUUID.
Рекомендований підхід - вжити теги (наприклад UUID=uuid), а не символічні посилання udev /dev/disk/by-{label,uuid,id,partuuid,partlabel} у файлі /etc/fstab. Теги легше читати, є стійкими та переносними. Команда mount(8) внутрішньо використовує символічні посилання udev, тож використання символічних посилань в /etc/fstab не має переваг над тегами. Детальніше можна почитати в libblkid(3).
Файлова система proc не асоційована зі спецпристроєм, і коли її монтуємо, можна вжити довільне ключове слово - наприклад, proc - замість специфікації пристрою. (Звичайний вибір none є менш вдалим: повідомлення помилки «жодного ще не змонтовано» від mount може спантеличувати).
Файл /etc/fstab, /etc/mtab та /proc/mounts¶
Файл /etc/fstab (див. fstab(5)), може містити рядки, що описують, які пристрої переважно тут монтуються, за допомогою яких параметрів. Типове розташування файлу fstab(5) можна змінити параметром командного рядка --fstab path (див. нижче про подробиці).
Команда
mount -a [-t type] [-O optlist]
(зазвичай, задають у скрипті завантаження) спричиняє монтування усіх згаданих файлових систем в fstab (належного типу і/або таких, що мають або не мають належні параметри) так, як вказано, окрім тих, у рядку яких міститься ключове слово noauto. Додавання параметра -F призведе до розгалуження mount для паралельного монтування файлових систем.
Коли файлову систему для монтування згадують в fstab або mtab, в командному рядку достатньо вказати лише пристрій або лише точку монтування.
Програми mount і umount(8) традиційно підтримували список поточних змонтованих файлових систем у файлі /etc/mtab. Підтримку звичайного класичного /etc/mtab типово повністю вимкнено під час компіляції, тому що в поточних системах Linux краще зробити /etc/mtab символьним посиланням на /proc/mounts. Звичайний файл mtab, який зберігається в просторі користувача, не може надійно працювати з просторами назв, контейнерами та іншими розширеними функціями Linux. Якщо ввімкнено звичайну підтримку mtab, то можна використовувати як файл, так і символьне посилання.
Якщо аргументів mount не надати, то друкується список змонтованих файлових систем.
Якщо ви хочете змінити параметри монтування з /etc/fstab, потрібно використати параметр -o:
mount device|dir -o options
а потім параметри монтування з командного рядка буде додано до списку параметрів із /etc/fstab. Цю типову поведінку можна змінити за допомогою параметра командного рядка --options-mode. Звичайна поведінка полягає в тому, що останній варіант перемагає, якщо є суперечливі.
Програма mount не читає файла /etc/fstab, якщо вказано разом пристрій (або LABEL, UUID, ID, PARTUUID або PARTLABEL) і каталог. Наприклад, щоб встановити пристрій foo на /каталог:
mount /dev/foo /dir
За допомогою параметра командного рядка --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 подібний, з обмеженням: користувач має бути членом групи спеціального файлу.
The user mount option is accepted if no username is specified. If used in the format user=someone, the option is silently ignored and visible only for external mount helpers (/sbin/mount.<type>) for compatibility with some network filesystems.
Дія з монтування з прив’язуванням¶
Перемонтування частини файлової ієрархії у якесь інше місце. Виклик:
mount --bind olddir newdir
або за допомогою цього запису fstab:
/olddir /newdir none bind
Після цього виклику ті самі дані будуть доступними у двох місцях.
Варто зауважити, що «bind» не створює жодних другорядних або спеціальних вузлів у VFS ядра. «bind» є просто ще однією дією для приєднання файлових систем. Не зберігається жодної інформації про те, що саме "bind" приєднав файлову систему. olddir та newdir є незалежними та olddir можна демонтувати.
Можна також перемонтувати окремий файл (до окремого файла). Також можна використати монтування прив’язки, щоб створити точку монтування зі звичайного каталогу, наприклад:
mount --bind foo foo
Виклик монтування з прив’язкою долучає до ієрархії файлової системи лише (частину) окремої файлової системи, а не можливі підлеглі її монтування. Усю ієрархію, разом із підлеглими монтуваннями, може бути долучено на другому кроці за допомогою такої команди:
mount --rbind olddir newdir
Зауважте, що параметри монтування файлової системи, супровід яких здійснює ядро системи, лишаться тими самими, що і у початкової точки монтування. Параметри монтування простору користувача (наприклад _netdev) не буде скопійовано mount - їх слід явним чином вказати у параметрах рядка команди mount.
Починаючи з версії util-linux 2.27, mount надає змогу змінювати параметри монтування передаванням відповідних параметрів разом із --bind. Приклад:
mount -o bind,ro foo foo
Ця функція не підтримується ядром Linux; її виконано у просторі користувача за допомогою додаткових системних викликів mount(2). Це рішення не є атомарним.
Альтернативним (класичним) способом створення призначеного лише для читання монтування з прив’язкою є використання дії з перемонтування. Приклад:
mount --bind olddir newdir
mount -o remount,bind,ro olddir newdir
Зауважте, що придатна лише для читання прив’язка створить придатну лише до читання точку монтування (запис VFS), але суперблок початкової файлової системи залишиться придатним до запису, що означає, що старий_каталог буде придатним до запису, але новий_каталог буде придатним лише до читання.
It’s also possible to change nosuid, nodev, noexec, noatime, nodiratime, relatime and nosymfollow VFS entry flags via a "remount,bind" operation. The other flags (for example filesystem-specific flags) are silently ignored. The classic mount(2) system call does not allow to change mount options recursively (for example with -o rbind,ro). The recursive semantic is possible with a new mount_setattr(2) kernel system call and it’s supported since libmount from util-linux v2.39 by a new experimental "recursive" option argument (e.g. -o rbind,ro=recursive). For more details see the FILESYSTEM-INDEPENDENT MOUNT OPTIONS section.
Починаючи з util-linux 2.31, mount ігнорує прапорець bind з /etc/fstab при виконанні дії remount (якщо у рядку команди вказано -o remount). Це необхідно для повного контролю над параметрами монтування при перемонтуванні за допомогою командного рядка. У попередніх версіях завжди застосовувався прапорець прив’язування, і не можна було перевизначити параметри монтування без взаємодії із семантикою прив’язування. Ця поведінка mount не впливає на випадки, коли «remount,bind» вказано у файлі /etc/fstab.
Дія з пересування¶
Пересунути змонтовану ієрархію до іншого місця (атомарно). Виклик:
mount --move olddir newdir
Результатом буде те, що дані, які раніше можна було прочитати зі старого_каталогу>, будуть доступними з _нового_каталогу>. Фізичне розташування файлів змінено не буде. Зауважте, що _старий_каталог має бути точкою монтування.
Зауважте також, що пересування змонтованого каталогу, що перебуває у змонтованому каталозі спільного користування, є некоректним - підтримки такої дії не передбачено. Скористайтеся командою 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 does not read fstab(5) when a --make-* operation is requested. All necessary information has to be specified on the command line.
Зауважте, що ядро Linux не дозволяє зміни декількох прапорців поширення одним системним викликом mount(2), і прапорці не можна змішувати із іншими параметрами і діями з монтування.
Починаючи з util-linux 2.23, командою mount можна скористатися для внесення додаткових змін із поширенням (топологією) шляхом одного виклику 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 є такими:
-a, --all
Виконання належних функціональних можливостей залежить від /proc (для виявлення вже змонтованих файлових систем) та від /sys (для обробки міток файлової системи, зокрема UUID= або LABEL=) Наполегливо рекомендуємо змонтувати файлові системи /proc і /sys перед виконанням B або вказувати /proc і /sys на початку fstab.
Параметр --all можна вживати для дії перемонтування також. В цьому випадку всі фільтри (-t та -O) застосовуються до таблиці вже змонтованих систем.
З версії 2.35 можна використовувати параметр командного рядка -o, щоб змінити параметр з fstab (див. також --options-mode).
Зауважте, що не варто використовувати mount -a для перевірки fstab. Рекомендованим рішенням є findmnt --verify.
-B, --bind
-c, --no-canonicalize
Зауважте, що mount не передає цей параметр допоміжним засобам /sbin/mount.тип.
-F, --fork
-f, --fake
The /etc/mtab is no longer maintained in userspace, and starting from version 2.39, the mount operation can be a complex chain of operations with dependencies between the syscalls. The --fake option forces libmount to skip all mount source preparation, mount option analysis, and the actual mounting process.
The difference between fake and non-fake execution is huge. This is the reason why the --fake option has minimal significance for the current mount(8) implementation and it is maintained mostly for backward compatibility.
-i, --internal-only
-L, --label мітка
-l, --show-labels
-M, --move
-m, --mkdir[=режим]
--map-groups, --map-users inner:_outer_:_count_
--map-users /proc/PID/ns/user
-n, --no-mtab
-N, --namespace простір_назв
mount switches to the mount namespace when it reads /etc/fstab, writes /etc/mtab: (or writes to _/run/mount) and calls mount(2), otherwise it runs in the original mount namespace. This means that the target namespace does not have to contain any libraries or other requirements necessary to execute the mount(2) call.
Щоб дізнатися більше, див. mount_namespaces(7).
-O, --test-opts параметри
mount -a -O no_netdev
монтує всі файлові системи, крім тих, що мають параметр netdev, вказаний у полі параметрів у файлі /etc/fstab.
Відрізняється від -t в тому, що кожний параметр має збігатися точно; переднє no на початку одного параметра не заперечує решту.
Параметри -t та -O мають кумулятивний ефект; тобто команда
mount -a -t ext2 -O _netdev
монтує всі файлові системи ext2 з параметром _netdev, а не всі файлові системи, що є або ext2 або мають вказаний параметр _netdev.
-o, --options параметри
mount LABEL=mydisk -o noatime,nodev,nosuid
Note that the order of the options matters, as the last option wins if there are conflicting ones. The options from the command line also overwrite options from fstab by default.
Щоб дізнатися більше, див. розділи НЕЗАЛЕЖНІ ВІД ФАЙЛОВОЇ СИСТЕМИ ПАРАМЕТРИ МОНТУВАННЯ та СПЕЦИФІЧНІ ДЛЯ ФАЙЛОВИХ СИСТЕМ ПАРАМЕТРИ МОНТУВАННЯ.
--onlyonce
--options-mode _режим>
--options-source _джерело>
--options-source-force
-R, --rbind
-r, --read-only
Зауважте, що, залежно від типу файлової системи, стану і поведінки ядра, система може продовжити запис на пристрій. Наприклад, ext3 і ext4 відтворять журнал, якщо якусь дію з файлової системи не завершено. Щоб запобігти цьому типу доступу до запису, ви можете змонтувати файлову систему ext3 або ext4 з використанням параметрів монтування ro,noload або встановити для блокового пристрою режим лише запису, див. команду blockdev(8).
-s
--source пристрій
--target каталог
--target-prefix каталог
mount --all --target-prefix /chroot -o X-mount.mkdir
монтує усе з загальносистемного fstab до /chroot, буде створено усі пропущені точки монтування (через X-mount.mkdir). Див. також --fstab для використання альтернативного fstab.
-T, --fstab шлях
Зауважте, що mount(8) не передає параметр --fstab допоміжним засобам /sbin/mount.тип, що означає, що альтернативні файли fstab будуть невидимими для допоміжних засобів. Це не проблема для звичайних монтувань, але користувацькі (не від імені root) монтування завжди потребують fstab для перевірки прав доступу користувача.
-t, --types _тип_файлової_системи>
У програмах mount і umount передбачено підтримку підтипів файлових систем. Підтип визначається суфіксом 'subtype'. Наприклад, 'fuse.sshfs'. Рекомендується використовувати підтипи, ніж додавати префікс до джерела монтування (наприклад, 'sshfs#example.com' є застарілим).
Якщо параметр -t не задано або якщо вказано тип auto, mount спробує вгадати бажаний тип. Для визначення типу файлової системи mount використовує бібліотеку libblkid(3); якщо бібліотеці не вдасться знайти щось знайоме, 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 може бути скриптом оболонки, який налаштовує бажаний виклик.
-U, --uuid UUID
-v, --verbose
-w, --rw, --read-write
Синонім -o rw.
Зауважте, що зазначення параметра рядка команди -w наказує mount ніколи не намагатися монтувати захищені від запису пристрої або вже змонтовано у режимі лише читання файлові системи.
-h, --help
-V, --version
НЕЗАЛЕЖНІ ВІД ФАЙЛОВОЇ СИСТЕМИ ПАРАМЕТРИ МОНТУВАННЯ¶
Деякі з цих параметрів працюють, лише якщо їх вказано у файлі /etc/fstab.
Деякі з цих параметрів можна типово увімкнути або вимкнути у ядрі системи. Щоб перевірити поточне значення параметра, ознайомтеся із параметрами у /proc/mounts. Зауважте, що файлові системи також мають власні типові параметри монтування (див., наприклад, виведені командою tune2fs -l дані для файлових систем extN).
The options nosuid, noexec, nodiratime, relatime, noatime, strictatime, and nosymfollow are interpreted only by the abstract VFS kernel layer and applied to the mountpoint node rather than to the filesystem itself. Try:
findmnt -o ЦІЛЬ,ПАРАМЕТРИ-VFS,ПАРАМЕТРИ-ФС
to get a complete overview of filesystems and VFS options.
The read-only setting (ro or rw) is interpreted by VFS and the filesystem and depends on how the option is specified on the mount(8) command line. The default is to interpret it on the filesystem level. The operation "-o bind,remount,ro" is applied only to the VFS mountpoint, and operation "-o remount,ro" is applied to VFS and filesystem superblock. This semantic allows create a read-only mountpoint but keeps the filesystem writable from another mountpoint.
Since v2.39 libmount can use a new kernel mount interface to set the VFS options recursive. For backward compatibility, this feature is not enabled by default, although recursive operation (e.g. rbind) has been requested. The new option argument "recursive" could be specified, for example:
mount -orbind,ro=recursive,noexec=recursive,nosuid /foo /bar
recursively binds filesystems from /foo to /bar, /bar, and all submounts will be read-only and noexec, but only /bar itself will be "nosuid". The "recursive" optional argument for VFS mount options is an EXPERIMENTAL feature.
Наведені нижче параметри стосуються будь-якої файлової системи, яку монтує програма (але не для кожної файлової системи їх буде взято до уваги, - наприклад, параметр sync у поточній версії стосується лише файлових систем ext2, ext3, ext4, fat, vfat, ufs і xfs):
async
atime
noatime
auto
noauto
context=контекст, fscontext=контекст, defcontext=контекст, and rootcontext=контекст
Поширеним параметром для портативних носіїв даних є context="system_u:object_r:removable_t".
Параметр fscontext= працює для всіх файлових систем, незалежно від підтримки ними xattr. Параметр fscontext встановлює для загальної мітки файлової системи особливий контекст безпеки. Ця мітка файлової системи є окремою від міток на файлах. Вона представляє всю файлову систему для певних видів перевірок дозволів, наприклад, під час монтування або створення файлу. Окремі мітки файлів також можна отримати зі xattr на самих файлах. Параметр контексту фактично встановлює агрегований контекст, який надає fscontext, на додаток до надання однакової мітки для окремих файлів.
Типовий контекст безпеки для файлів без міток можна встановити за допомогою параметра defcontext=. Це замінить значення, встановлене для файлів без міток у політиці, і вимагає файлової системи, яка підтримує мітки xattr.
The rootcontext= option allows you to explicitly label the root inode of a FS being mounted before that FS or inode becomes visible to userspace. This was found to be useful for things like stateless Linux. The special value @target can be used to assign the current context of the target mountpoint location.
Зауважте, що ядро відхиляє будь-який запит на перемонтування, який містить параметр контексту, навіть якщо він не змінюється з поточного контексту.
Warning: the context value might contain commas, in which case the value has to be properly quoted, otherwise mount will interpret the comma as a separator between mount options. Don’t forget that the shell strips off quotes and thus double quoting is required. For example:
mount -t tmpfs none /mnt -o \ 'context="system_u:object_r:tmp_t:s0:c127,c456",noexec'
Щоб дізнатися більше, див. selinux(8).
defaults
Зауважте, що справжній набір усіх типових параметрів монтування залежить від ядра системи та типу файлової системи. Див. початок цього розділу, щоб дізнатися більше.
dev
nodev
diratime
nodiratime
dirsync
exec
noexec
group
iversion
noiversion
mand
nomand
_netdev
nofail
relatime
Починаючи Linux 2.6.30, типову поведінку ядра змінено на поведінку із цим увімкненим параметром (якщо не вказано noatime). Для отримання традиційної семантики слід вказати параметр strictatime. Крім того, починаючи з Linux 2.6.30, час останнього доступу до файла завжди оновлюється, якщо з моменту попереднього оновлення минула 1 доба.
norelatime
strictatime
nostrictatime
lazytime
Використання цього параметра монтування суттєво зменшує кількість записів до таблиці inode у робочих процесах, які виконують часті випадкові записи до попередньо розміщених у пам’яті файлів.
Часові позначки на диску буде оновлено, лише за таких умов:
nolazytime
suid
nosuid
silent
loud
owner
remount
Дія з повторного монтування разом із прапорцем bind має спеціальну семантику. Див. вище, розділ Монтування з пов’язуванням.
The default kernel behavior for VFS mount flags (nodev,nosuid,noexec,ro) is to reset all unspecified flags on remount. That’s why mount(8) tries to keep the current setting according to fstab or /proc/self/mountinfo. This default behavior is possible to change by --options-mode. The recursive change of the mount flags (supported since v2.39 on systems with mount_setattr(2) syscall), for example, mount -o remount,ro=recursive, do not use "reset-unspecified" behavior, and it works as a simple add/remove operation and unspecified flags are not modified.
У функціональній можливості повторного монтування реалізовано стандартний спосіб роботи команди mount із параметрами з fstab. Це означає, що mount не читатиме fstab (або mtab), лише якщо одразу вказано пристрій і _каталог>.
mount -o remount,rw /dev/foo /dir
Після цього виклику усі старі параметри монтування буде замінено, а довільні дані з fstab (або mtab) буде проігноровано, окрім параметра loop=, який буде створено на внутрішньому рівні і який буде супроводжуватися програмою mount.
mount -o remount,rw /dir
After this call, mount reads fstab and merges these options with the options from the command line (-o). If no mountpoint is found in fstab, then it defaults to mount options from /proc/self/mountinfo.
mount allows the use of --all to remount all already mounted filesystems which match a specified filter (-O and -t). For example:
mount --all -o remount,ro -t vfat
повторно монтує усі вже змонтовані файлові системи vfat у режимі лише читання. Кожну файлову системі буде повторно змонтовано із семантикою mount -o remount,ro /каталог. Це означає, що програма mount прочитає fstab або mtab і об’єднає ці параметри з параметрами з рядка команди.
ro
rw
sync
user
nouser
users
X-*
x-*
Зауважте, що до util-linux версії 2.30 параметри x-* не супроводжуються libmount і зберігаються у просторі користувача (функціональні можливості у поточній версії ті самі, що і для X-*), але через зростання кількості випадків (у initrd, systemd тощо) функціональні можливості було розширено для підтримання придатності наявних налаштувань fstab без змін.
X-mount.auto-fstypes=список
The list is a comma-separated list of the filesystem names. The automatic filesystem detection is triggered by the "auto" filesystem type or when the filesystem type is not specified.
The list follows how mount evaluates type patterns (see -t for more details). Only specified filesystem types are allowed, or all specified types are forbidden if the list is prefixed by "no".
For example, X-mount.auto-fstypes="ext4,btrfs" accepts only ext4 and btrfs, and X-mount.auto-fstypes="novfat,xfs" accepts all filesystems except vfat and xfs.
Note that comma is used as a separator between mount options, it means that auto-fstypes values have to be properly quoted, don’t forget that the shell strips off quotes and thus double quoting is required. For example:
mount -t auto
-o’X-mount.auto-fstypes="noext2,ext3"' /dev/sdc1 /mnt/test
X-mount.mkdir[=режим]
X-mount.subdir=каталог
Note that this feature will not work in session with an unshared private mount namespace (after unshare --mount) on old kernels or with mount(8) without support for file-descriptors-based mount kernel API. In this case, you need unshare --mount --propagation shared.
This feature is EXPERIMENTAL.
X-mount.owner=username|UID, X-mount.group=group|GID
X-mount.mode=режим
X-mount.idmap=id-type:id-mount:id-host:id-range [id-type:id-mount:id-host:id-range], X-mount.idmap=file
The ID-mapping must be specified using the syntax id-type:id-mount:id-host:id-range. Specifying u as the id-type prefix creates a UID-mapping, g creates a GID-mapping and omitting id-type or specifying b creates both a UID- and GID-mapping. The id-mount parameter indicates the starting ID in the new mount. The id-host parameter indicates the starting ID in the filesystem. The id-range parameter indicates how many IDs are to be mapped. It is possible to specify multiple ID-mappings. The individual ID-mappings must be separated by spaces.
For example, the ID-mapping X-mount.idmap=u:1000:0:1 g:1001:1:2 5000:1000:2 creates an idmapped mount where UID 0 is mapped to UID 1000, GID 1 is mapped to GUID 1001, GID 2 is mapped to GID 1002, UID and GID 1000 are mapped to 5000, and UID and GID 1001 are mapped to 5001 in the mount.
When an ID-mapping is specified directly a new user namespace will be allocated with the requested ID-mapping. The newly created user namespace will be attached to the mount.
The user namespace will then be attached to the mount and the ID-mapping of the user namespace will become the ID-mapping of the mount.
For example, X-mount.idmap=/proc/PID/ns/user will attach the user namespace of the process PID to the mount.
nosymfollow
СПЕЦИФІЧНІ ДЛЯ ФАЙЛОВИХ СИСТЕМ ПАРАМЕТРИ МОНТУВАННЯ¶
У цьому розділі наведено список параметрів, які є специфічними для певних файлових систем. Де це можливо, вам слід спочатку ознайомитися із специфічними для файлової системи сторінками підручників, щоб мати повнішу картину. Деякі є частиною списку з наведеної нижче таблиці.
Файлові системи | Сторінка підручника |
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=значення
ownmask=значення і othmask=значення
Параметри монтування affs¶
uid=значення і gid=значення
setuid=значення і setgid=значення
mode=значення
protect
usemp
verbose
prefix=рядок
volume=рядок
reserved=значення
root=значення
bs=значення
grpquota|noquota|quota|usrquota
Параметри монтування debugfs¶
Файлова система debugfs є фіктивною файловою системою, яку традиційно монтують до /sys/kernel/debug. На момент виходу ядра версії 3.4 debugfs використовує такі параметри:
uid=n, gid=n
mode=значення
Параметри монтування devpts¶
Файлова система devpts є фіктивною файловою системою, яку традиційно буде змонтовано до /dev/pts. Для отримання псевдотермінала процес відкриває /dev/ptmx; після цього номер псевдотермінала стане доступним процесу. Доступ до підлеглого засобу псевдотермінала можна здійснювати за адресою _/dev/pts/номер.
uid=значення і gid=значення
mode=значення
newinstance
Усі монтування devpts без цього параметра newinstance матимуть спільний набір індексів псевдотерміналів (тобто працюватимуть у застарілому режимі). Кожне монтування devpts з параметром newinstance матиме власний набір індексів псевдотерміналів.
Цей параметр, в основному, призначено для забезпечення підтримки контейнерів у ядрі Linux. Його реалізовано у ядрах Linux, починаючи з версії 2.6.29. Крім того, цей параметр монтування є чинним, лише якщо у налаштуваннях ядра увімкнено CONFIG_DEVPTS_MULTIPLE_INSTANCES.
Щоб ефективно скористатися цим параметром, /dev/ptmx має бути символічним посиланням на pts/ptmx. Див. Documentation/filesystems/devpts.txt у ієрархії початкового коду ядра Linux, щоб дізнатися більше.
ptmxmode=значення
Якщо реалізовано підтримку декількох екземплярів 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.)
blocksize={512|1024|2048}
uid=значення і gid=значення
umask=значення
dmask=значення
fmask=значення
allow_utime=значення
20
2
Типове значення буде встановлено на основі параметра «dmask». (Якщо каталог є придатним до запису, також можна скористатися utime(2). Приклад: ~dmask & 022)
Зазвичай, utime(2) перевіряє, чи є поточний процес власником файла, і чи має він можливість CAP_FOWNER. Втім, файлові системи FAT не мають UID/GID на диску, тому звичайна перевірка є надто негнучкою. За допомогою цього параметра ви можете оптимізувати її.
check=значення
r[elaxed]
n[ormal]
s[trict]
codepage=значення
conv=режим
cvf_format=модуль
cvf_option=параметр
debug
discard
dos1xfloppy
errors={panic|continue|remount-ro}
fat={12|16|32}
iocharset=значення
nfs={stale_rw|nostale_ro}
stale_rw: This option maintains an index (cache) of directory inodes which is used by the nfs-related code to improve look-ups. Full file operations (read/write) over NFS are supported but with cache eviction at NFS server, this could result in spurious ESTALE errors.
nostale_ro: This option bases the inode number and file handle on the on-disk location of a file in the FAT directory entry. This ensures that ESTALE will not be returned after a file is evicted from the inode cache. However, it means that operations such as rename, create and unlink could cause file handles that previously pointed at one file to point at a different file, potentially causing data corruption. For this reason, this option also mounts the filesystem readonly.
Для підтримання зворотної сумісності також є прийнятним -o nfs. Типовий варіантом є stale_rw.
tz=UTC
time_offset=хвилини
quiet
rodir
Якщо вам потрібен атрибут ATTR_RO як прапорець лише читання навіть для каталогів, встановіть цей параметр.
showexec
sys_immutable
flush
usefree
dots, nodots, dotsOK=[yes|no]
Параметри монтування hfs¶
creator=cccc, type=cccc
uid=n, gid=n
dir_umask=n, file_umask=n, umask=n
session=n
part=n
quiet
Параметри монтування hpfs¶
uid=значення і gid=значення
umask=значення
case={lower|asis}
conv=режим
nocheck
Параметри монтування iso9660¶
ISO 9660 - це стандарт, що описує структуру файлової системи, яка буде використовуватися на компакт-дисках. (Цей тип файлової системи також можна побачити на деяких DVD-дисках. Див. також файлову систему udf.)
Звичайні назви файлів iso9660 мають формат 8.3 (тобто обмеження довжини назви файлу нагадують DOS), і, крім того, всі символи пишуться у верхньому регістрі. Також немає полів для власника файлу, захисту, кількості посилань, надання блокових/символьних пристроїв тощо.
Rock Ridge - це розширення для iso9660, яке надає всі ці функції, подібні до UNIX. Загалом, для кожного запису каталогу є розширення, які надають всю додаткову інформацію, і за використання Rock Ridge файлова система не відрізняється від звичайної файлової системи UNIX (звичайно, за винятком того, що вона доступна лише для читання).
norock
nojoliet
check={r[elaxed]|s[trict]}
uid=значення і gid=значення
map={n[ormal]|o[ff]|a[corn]}
mode=значення
unhide
block={512|1024|2048}
conv=режим
cruft
session=x
sbsector=xxx
Подальші параметри такі ж, як і для vfat, і вказувати їх має сенс лише за використання дисків, закодованих за допомогою розширень Joliet від Microsoft).
iocharset=значення
utf8
Параметри монтування jfs¶
iocharset=назва
resize=значення
nointegrity
integrity
errors={continue|remount-ro|panic}
noquota|quota|usrquota|grpquota
Параметри монтування msdos¶
Див. параметри монтування для FAT. Якщо файлова система msdos виявляє неузгодженість, вона повідомляє про помилку та встановлює для файлової системи режим лише для читання. Файлову систему можна знову зробити придатною для запису, перемонтувавши її.
Параметри монтування ncpfs¶
Як і nfs, реалізація ncpfs очікує двійкового аргументу (struct ncp_mount_data) для системного виклику mount(2). Цей аргумент створено ncpmount(8), а поточна версія mount (2.12) нічого не знає про ncpfs.
Параметри монтування ntfs¶
iocharset=назва
nls=назва
utf8
uni_xlate={0|1|2}
posix=[0|1]
uid=значення, gid=значення і umask=значення
Параметри монтування overlay¶
Починаючи від Linux 3.18, накладна псевдофайлова система реалізує об’єднане монтування для інших файлових систем.
Накладна файлова система поєднує дві файлові системи - файлову систему верхню і файлову систему нижню. Якщо назва існує в обох файлових системах, об’єкт у верхній файловій системі буде видимим, а об’єкт у нижній файловій системі або прихованим, або, у випадку каталогів, об’єднаним із верхнім об’єктом.
Нижньою файловою системою може бути будь-яка файлова система, яку підтримує Linux, можливо, недоступна для запису. Нижня файлова система може бути навіть іншою накладною файловою системою. Верхня файлова система зазвичай доступна для запису, і, якщо так, вона має підтримувати створення розширених атрибутів trusted.* і надавати дійсний тип d_type у відповідях readdir, тому NFS для цього не підходить.
Накласти лише для читання можна дві файлові системи, доступні лише для читання, будь-якого типу. Параметри lowerdir і upperdir об’єднуються в спільний каталог за допомогою:
mount -t overlay overlay \
-olowerdir=/lower,upperdir=/upper,workdir=/work /merged
lowerdir=каталог
upperdir=каталог
workdir=каталог
userxattr
redirect_dir={on|off|follow|nofollow}
on
off
follow
nofollow
index={on|off}
uuid={on|off}
nfs_export={on|off}
Якщо доступною є можливість «nfs_export» виконання copy_up над будь-яким нижчим об’єктом призведе до створення запису покажчика у каталозі покажчика. Назва запису покажчика є шістнадцятковим представленням скопійованого початкового дескриптора файла. Для об’єкта, який не є каталогом, запис покажчика є жорстким посиланням на вищий inode. Для об’єкта каталогу запис покажчика має розширений атрибут «{trusted|user}.overlay.upper» із закодованим дескриптором файла inode вищого каталогу.
При кодуванні дескриптора файла з накладеного об’єкта файлової системи виконуються такі правила
Дескриптор закодованого файла-накладки включає
Цей формат кодування є ідентичним до засобів обробки формату кодування, які збережено у розширеному атрибуті «{trusted|user}.overlay.origin». При декодуванні засобу обробки файла-накладки буде виконано наступні кроки
Декодування дескриптора файла, який не є каталогом, може повернути від’єднаний dentry. copy_up цього від’єднаного dentry створить верхній запис покажчика без верхньої альтернативи.
Якщо у накладеній файловій системі є декілька нижніх шарів, каталог середнього шару може мати «переспрямування» на нижчий каталог. Оскільки «переспрямування» середнього шару не буде індексовано, дескриптором нижнього файла, який було закодовано з початкового каталогу «переспрямування», не можна скористатися для пошуку каталогу середнього або вищого шару. Так само, дескриптором нижнього файла, який було закодовано з нащадка початкового каталогу «переспрямування», не можна скористатися для відтворення шляху до з’єднаної накладки. Щоб усунути проблеми із каталогами, які не може бути декодовано з дескриптора нижнього файла, ці каталоги буде скопійовано на закодоване і закодовано як дескриптор верхнього файла. На накладеній файловій системі без верхнього шару це рішення не може бути використано. Експортування NFS при цих налаштуваннях потребує вимикання переходу за переспрямуваннями (наприклад, «redirect_dir=nofollow»).
У накладеній файловій системі не передбачено підтримки дескрипторів придатних до з’єднання файлів, які не є каталогами, тому експортування за допомогою налаштування exportfs subtree_check призводитиме до помилок під час спроби пошуку файлів у NFS.
Якщо увімкнено можливість експортування NFS, усі записи покажчика каталогу буде перевірено під час монтування, що переконатися, що дескриптори вищих файлів не є застарілими. Така перевірка може у деяких випадках призводити до значних затримок обробки.
Зауваження: параметри монтування index=off,nfs_export=on конфліктують між собою у режимі монтування для читання-запису і призводять до помилки.
xino={on|off|auto}
Докладний опис наслідків використання цього параметра наведено у <https://docs.kernel.org/filesystems/overlayfs.html>
metacopy={on|off}
Іншими словами, це відкладена дія з надкопіювання даних і дані буде надкопійовано, якщо виникне потреба у справжньому внесенні змін до даних.
volatile
Перевагою монтування із параметром «volatile» є те, що усі форми викликів синхронізації до вищої файлової системи буде пропущено.
In order to avoid a giving a false sense of safety, the syncfs (and fsync) semantics of volatile mounts are slightly different than that of the rest of VFS. If any writeback error occurs on the upperdir’s filesystem after a volatile mount takes place, all sync functions will return an error. Once this condition is reached, the filesystem will not recover, and every subsequent sync call will return an error, even if the upperdir has not experience a new error since the last sync call.
Якщо накладку змонтовано з параметром «volatile», буде створено каталог «$workdir/work/incompat/volatile». Під час наступного монтування накладка шукатиме цей каталог і відмовиться монтуватися, якщо його буде знайдено. Це потужний індикатор, що користувачеві слід відкинути старий вищий і робочий каталоги і створити нові. У дуже обмеженій кількості випадків, коли користувач знає, що роботу системи не було завершено аварійно і вміст вищого каталогу не зазнав змін, каталог «volatile» можна вилучити.
Параметри монтування reiserfs¶
Reiserfs є журнальованою файловою системою.
conv
hash={rupasov|tea|r5|detect}
rupasov
tea
r5
detect
hashed_relocation
no_unhashed_relocation
noborder
nolog
notail
replayonly
resize=число
user_xattr
acl
barrier=none / barrier=flush
Параметри монтування ubifs¶
UBIFS - файлова система для флеш-носіїв, які працюють на базі томів UBI. Зауважте, що підтримки atime не передбачено, і цей параметр завжди вимкнено.
Назву пристрою можна вказати як
ubiX_Y
ubiY
ubiX:НАЗВА
ubi:НАЗВА
Можна використовувати альтернативний роздільник ! замість :.
Можна скористатися одним з таких параметрів монтування:
bulk_read
no_bulk_read
chk_data_crc
no_chk_data_crc
compr={none|lzo|zlib}
Параметри монтування udf¶
UDF - скорочення від «Universal Disk Format» (універсальний формат дисків). Цю файлову систему стандартизовано OSTA, Optical Storage Technology Association (Асоціацією технології оптичного зберігання даних). Файлову систему часто використовують для DVD-ROM у формі гібриду із файловою системою UDF/ISO-9660. Втім, файловою системою цілком можна користуватися для дискових носіїв даних, флеш-носіїв та інших блокових пристроїв. Див. також iso9660.
uid=
gid=
umask=
mode=
dmode=
bs=
Щоб ознайомитися із іншими подробицями, прочитайте сторінку підручника mkudffs(8) 2.0+, див. розділи СУМІСНІСТЬ і РОЗМІР БЛОКУ.
unhide
undelete
adinicb
noadinicb
shortad
longad
nostrict
iocharset=
utf8
Параметри монтування для діагностики і відновлення після аварій¶
novrs
session=
anchor=
lastblock=
Невикористовувані застарілі параметри монтування, які можна ще зустріти, їх має бути вилучено¶
uid=ignore
gid=ignore
volume=
partition=
fileset=
rootdir=
Параметри монтування ufs¶
ufstype=значення
old
44bsd
ufs2
5xbsd
sun
sunx86
hp
nextstep
nextstep-cd
openstep
onerror=значення
panic
[lock|umount|repair]
Параметри монтування umsdos¶
Див. параметри монтування для msdos. Параметр dotsOK явним чином знищується umsdos.
Параметри монтування vfat¶
Перш за все, буде розпізнано параметри монтування для fat. Параметр dotsOK буде явним чином прибрано вибором vfat. Далі, є
uni_xlate
posix
nonumtail
utf8
shortname=режим
lower
win95
winnt
mixed
Параметри монтування usbfs¶
devuid=uid, devgid=gid і devmode=mode
busuid=uid, busgid=gid і busmode=mode
listuid=uid, listgid=gid і listmode=mode
ПІДТРИМКА DM-VERITY¶
Ціль device-mapper verity надає доступ до читання із прозорою перевіркою цілісності даних блокових пристроїв з використанням шифрувального програмного інтерфейсу ядра системи. Програма mount здатна відкривати пристрої dm-verity і виконувати перевірку цілісності даних до монтування файлової системи пристрою. Потребує libcryptsetup у libmount (можна з використанням dlopen(3)). Якщо у libcryptsetup передбачено підтримку видобування хеш-суми кореня вже змонтованого пристрою, наявні пристрої, якщо вони є відповідними, буде використано автоматично. Параметри монтування dm-verity:
verity.hashdevice=шлях
verity.roothash=шістнадцяткове-число
verity.roothashfile=шлях
verity.hashoffset=відоступ
verity.fecdevice=шлях
verity.fecoffset=відступ
verity.fecroots=значення
verity.roothashsig=шлях
verity.oncorruption=ignore|restart|panic
Передбачено підтримку з util-linux v2.35.
Наприклад, такі команди:
mksquashfs /etc /tmp/etc.raw veritysetup format /tmp/etc.raw /tmp/etc.verity --root-hash-file=/tmp/etc.roothash openssl smime -sign -in /tmp/etc.roothash -nocerts -inkey private.key \ -signer private.crt -noattr -binary -outform der -out /tmp/etc.roothash.p7s mount -o verity.hashdevice=/tmp/etc.verity,verity.roothashfile=/tmp/etc.roothash,\ verity.roothashsig=/tmp/etc.roothash.p7s /tmp/etc.raw /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 has the following exit status values (the bits can be ORed):
0
1
2
4
8
16
32
64
Команда mount -a повертає 0 (усі успішно), 32 (усі невдало) або 64 (деякі невдало, деякі успішно).
ЗОВНІШНІ ДОПОМІЖНІ ЗАСОБИ¶
Синтаксис зовнішніх допоміжних засобів монтування такий:
/sbin/mount.suffix spec dir [-sfnv] [-N namespace] [-o options] [-t type.subtype]
де суфікс - це тип файлової системи, а параметри -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.
СЕРЕДОВИЩЕ¶
LIBMOUNT_FORCE_MOUNT2={always|never|auto}
LIBMOUNT_FSTAB=<шлях>
LIBMOUNT_DEBUG=all
LIBBLKID_DEBUG=all
LOOPDEV_DEBUG=all
ФАЙЛИ¶
Див. також вище розділ "Файли /etc/fstab, /etc/mtab і /proc/mounts".
/etc/fstab
/run/mount
/etc/mtab
/etc/mtab~
/etc/mtab.tmp
/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>
ТАКОЖ ПЕРЕГЛЯНЬТЕ¶
mount(2), umount(2), filesystems(5), fstab(5), nfs(5), xfs(5), mount_namespaces(7), xattr(7), e2label(8), findmnt(8), losetup(8), lsblk(8), mke2fs(8), mountd(8), nfsd(8), swapon(8), tune2fs(8), umount(8), xfs_admin(8)
ЯК НАДІСЛАТИ ЗВІТ ПРО ВАДИ¶
Для звітування щодо вад скористайтеся системою стеження за вадами - <https://github.com/util-linux/util-linux/issues>.
ДОСТУП ДО ПРОГРАМИ¶
Програма mount є частиною пакунка util-linux, який можна отримати з архіву ядра Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.
2024-12-06 | util-linux 2.40.2 |