1MOUNT(8) System Administration MOUNT(8)
2
3
4
6 mount - mount a filesystem
7
9 mount [-h|-V]
10
11 mount [-l] [-t fstype]
12
13 mount -a [-fFnrsvw] [-t fstype] [-O optlist]
14
15 mount [-fnrsvw] [-o options] device|mountpoint
16
17 mount [-fnrsvw] [-t fstype] [-o options] device mountpoint
18
19 mount --bind|--rbind|--move olddir newdir
20
21 mount
22 --make-[shared|slave|private|unbindable|rshared|rslave|rprivate|runbindable]
23 mountpoint
24
26 All files accessible in a Unix system are arranged in one big tree, the
27 file hierarchy, rooted at /. These files can be spread out over several
28 devices. The mount command serves to attach the filesystem found on
29 some device to the big file tree. Conversely, the umount(8) command
30 will detach it again. The filesystem is used to control how data is
31 stored on the device or provided in a virtual way by network or other
32 services.
33
34 The standard form of the mount command is:
35
36 mount -t type device dir
37
38 This tells the kernel to attach the filesystem found on device (which
39 is of type type) at the directory dir. The option -t type is optional.
40 The mount command is usually able to detect a filesystem. The root
41 permissions are necessary to mount a filesystem by default. See section
42 "Non-superuser mounts" below for more details. The previous contents
43 (if any) and owner and mode of dir become invisible, and as long as
44 this filesystem remains mounted, the pathname dir refers to the root of
45 the filesystem on device.
46
47 If only the directory or the device is given, for example:
48
49 mount /dir
50
51 then mount looks for a mountpoint (and if not found then for a device)
52 in the /etc/fstab file. It’s possible to use the --target or --source
53 options to avoid ambiguous interpretation of the given argument. For
54 example:
55
56 mount --target /mountpoint
57
58 The same filesystem may be mounted more than once, and in some cases
59 (e.g., network filesystems) the same filesystem may be mounted on the
60 same mountpoint multiple times. The mount command does not implement
61 any policy to control this behavior. All behavior is controlled by the
62 kernel and it is usually specific to the filesystem driver. The
63 exception is --all, in this case already mounted filesystems are
64 ignored (see --all below for more details).
65
66 Listing the mounts
67 The listing mode is maintained for backward compatibility only.
68
69 For more robust and customizable output use findmnt(8), especially in
70 your scripts. Note that control characters in the mountpoint name are
71 replaced with '?'.
72
73 The following command lists all mounted filesystems (of type type):
74
75 mount [-l] [-t type]
76
77 The option -l adds labels to this listing. See below.
78
79 Indicating the device and filesystem
80 Most devices are indicated by a filename (of a block special device),
81 like /dev/sda1, but there are other possibilities. For example, in the
82 case of an NFS mount, device may look like knuth.cwi.nl:/dir.
83
84 The device names of disk partitions are unstable; hardware
85 reconfiguration, and adding or removing a device can cause changes in
86 names. This is the reason why it’s strongly recommended to use
87 filesystem or partition identifiers like UUID or LABEL. Currently
88 supported identifiers (tags):
89
90 LABEL=label
91 Human readable filesystem identifier. See also -L.
92
93 UUID=uuid
94 Filesystem universally unique identifier. The format of the UUID is
95 usually a series of hex digits separated by hyphens. See also -U.
96
97 Note that mount uses UUIDs as strings. The UUIDs from the command
98 line or from fstab(5) are not converted to internal binary
99 representation. The string representation of the UUID should be
100 based on lower case characters.
101
102 PARTLABEL=label
103 Human readable partition identifier. This identifier is independent
104 on filesystem and does not change by mkfs or mkswap operations.
105 It’s supported for example for GUID Partition Tables (GPT).
106
107 PARTUUID=uuid
108 Partition universally unique identifier. This identifier is
109 independent on filesystem and does not change by mkfs or mkswap
110 operations. It’s supported for example for GUID Partition Tables
111 (GPT).
112
113 ID=id
114 Hardware block device ID as generated by udevd. This identifier is
115 usually based on WWN (unique storage identifier) and assigned by
116 the hardware manufacturer. See ls /dev/disk/by-id for more details,
117 this directory and running udevd is required. This identifier is
118 not recommended for generic use as the identifier is not strictly
119 defined and it depends on udev, udev rules and hardware.
120
121 The command lsblk --fs provides an overview of filesystems, LABELs and
122 UUIDs on available block devices. The command blkid -p <device>
123 provides details about a filesystem on the specified device.
124
125 Don’t forget that there is no guarantee that UUIDs and labels are
126 really unique, especially if you move, share or copy the device. Use
127 lsblk -o +UUID,PARTUUID to verify that the UUIDs are really unique in
128 your system.
129
130 The recommended setup is to use tags (e.g. UUID=uuid) rather than
131 /dev/disk/by-{label,uuid,id,partuuid,partlabel} udev symlinks in the
132 /etc/fstab file. Tags are more readable, robust and portable. The
133 mount(8) command internally uses udev symlinks, so the use of symlinks
134 in /etc/fstab has no advantage over tags. For more details see
135 libblkid(3).
136
137 The proc filesystem is not associated with a special device, and when
138 mounting it, an arbitrary keyword - for example, proc - can be used
139 instead of a device specification. (The customary choice none is less
140 fortunate: the error message 'none already mounted' from mount can be
141 confusing.)
142
143 The files /etc/fstab, /etc/mtab and /proc/mounts
144 The file /etc/fstab (see fstab(5)), may contain lines describing what
145 devices are usually mounted where, using which options. The default
146 location of the fstab(5) file can be overridden with the --fstab path
147 command-line option (see below for more details).
148
149 The command
150
151 mount -a [-t type] [-O optlist]
152
153 (usually given in a bootscript) causes all filesystems mentioned in
154 fstab (of the proper type and/or having or not having the proper
155 options) to be mounted as indicated, except for those whose line
156 contains the noauto keyword. Adding the -F option will make mount fork,
157 so that the filesystems are mounted in parallel.
158
159 When mounting a filesystem mentioned in fstab or mtab, it suffices to
160 specify on the command line only the device, or only the mount point.
161
162 The programs mount and umount(8) traditionally maintained a list of
163 currently mounted filesystems in the file /etc/mtab. The support for
164 regular classic /etc/mtab is completely disabled at compile time by
165 default, because on current Linux systems it is better to make
166 /etc/mtab a symlink to /proc/mounts instead. The regular mtab file
167 maintained in userspace cannot reliably work with namespaces,
168 containers and other advanced Linux features. If the regular mtab
169 support is enabled, then it’s possible to use the file as well as the
170 symlink.
171
172 If no arguments are given to mount, the list of mounted filesystems is
173 printed.
174
175 If you want to override mount options from /etc/fstab, you have to use
176 the -o option:
177
178 mount device|dir -o options
179
180 and then the mount options from the command line will be appended to
181 the list of options from /etc/fstab. This default behaviour can be
182 changed using the --options-mode command-line option. The usual
183 behavior is that the last option wins if there are conflicting ones.
184
185 The mount program does not read the /etc/fstab file if both device (or
186 LABEL, UUID, ID, PARTUUID or PARTLABEL) and dir are specified. For
187 example, to mount device foo at /dir:
188
189 mount /dev/foo /dir
190
191 This default behaviour can be changed by using the
192 --options-source-force command-line option to always read configuration
193 from fstab. For non-root users mount always reads the fstab
194 configuration.
195
196 Non-superuser mounts
197 Normally, only the superuser can mount filesystems. However, when fstab
198 contains the user option on a line, anybody can mount the corresponding
199 filesystem.
200
201 Thus, given a line
202
203 /dev/cdrom /cd iso9660 ro,user,noauto,unhide
204
205 any user can mount the iso9660 filesystem found on an inserted CDROM
206 using the command:
207
208 mount /cd
209
210 Note that mount is very strict about non-root users and all paths
211 specified on command line are verified before fstab is parsed or a
212 helper program is executed. It’s strongly recommended to use a valid
213 mountpoint to specify filesystem, otherwise mount may fail. For example
214 it’s a bad idea to use NFS or CIFS source on command line.
215
216 Since util-linux 2.35, mount does not exit when user permissions are
217 inadequate according to libmount’s internal security rules. Instead, it
218 drops suid permissions and continues as regular non-root user. This
219 behavior supports use-cases where root permissions are not necessary
220 (e.g., fuse filesystems, user namespaces, etc).
221
222 For more details, see fstab(5). Only the user that mounted a filesystem
223 can unmount it again. If any user should be able to unmount it, then
224 use users instead of user in the fstab line. The owner option is
225 similar to the user option, with the restriction that the user must be
226 the owner of the special file. This may be useful e.g. for /dev/fd if a
227 login script makes the console user owner of this device. The group
228 option is similar, with the restriction that the user must be a member
229 of the group of the special file.
230
231 The user mount option is accepted if no username is specified. If used
232 in the format user=someone, the option is silently ignored and visible
233 only for external mount helpers (/sbin/mount.<type>) for compatibility
234 with some network filesystems.
235
236 Bind mount operation
237 Remount part of the file hierarchy somewhere else. The call is:
238
239 mount --bind olddir newdir
240
241 or by using this fstab entry:
242
243 /olddir /newdir none bind
244
245 After this call the same contents are accessible in two places.
246
247 It is important to understand that "bind" does not create any
248 second-class or special node in the kernel VFS. The "bind" is just
249 another operation to attach a filesystem. There is nowhere stored
250 information that the filesystem has been attached by a "bind"
251 operation. The olddir and newdir are independent and the olddir may be
252 unmounted.
253
254 One can also remount a single file (on a single file). It’s also
255 possible to use a bind mount to create a mountpoint from a regular
256 directory, for example:
257
258 mount --bind foo foo
259
260 The bind mount call attaches only (part of) a single filesystem, not
261 possible submounts. The entire file hierarchy including submounts can
262 be attached a second place by using:
263
264 mount --rbind olddir newdir
265
266 Note that the filesystem mount options maintained by the kernel will
267 remain the same as those on the original mount point. The userspace
268 mount options (e.g., _netdev) will not be copied by mount and it’s
269 necessary to explicitly specify the options on the mount command line.
270
271 Since util-linux 2.27 mount permits changing the mount options by
272 passing the relevant options along with --bind. For example:
273
274 mount -o bind,ro foo foo
275
276 This feature is not supported by the Linux kernel; it is implemented in
277 userspace by an additional mount(2) remounting system call. This
278 solution is not atomic.
279
280 The alternative (classic) way to create a read-only bind mount is to
281 use the remount operation, for example:
282
283 mount --bind olddir newdir
284
285 mount -o remount,bind,ro olddir newdir
286
287 Note that a read-only bind will create a read-only mountpoint (VFS
288 entry), but the original filesystem superblock will still be writable,
289 meaning that the olddir will be writable, but the newdir will be
290 read-only.
291
292 It’s also possible to change nosuid, nodev, noexec, noatime,
293 nodiratime, relatime and nosymfollow VFS entry flags via a
294 "remount,bind" operation. The other flags (for example
295 filesystem-specific flags) are silently ignored. The classic mount(2)
296 system call does not allow to change mount options recursively (for
297 example with -o rbind,ro). The recursive semantic is possible with a
298 new mount_setattr(2) kernel system call and it’s supported since
299 libmount from util-linux v2.39 by a new experimental "recursive" option
300 argument (e.g. -o rbind,ro=recursive). For more details see the
301 FILESYSTEM-INDEPENDENT MOUNT OPTIONS section.
302
303 Since util-linux 2.31, mount ignores the bind flag from /etc/fstab on a
304 remount operation (if -o remount is specified on command line). This is
305 necessary to fully control mount options on remount by command line. In
306 previous versions the bind flag has been always applied and it was
307 impossible to re-define mount options without interaction with the bind
308 semantic. This mount behavior does not affect situations when
309 "remount,bind" is specified in the /etc/fstab file.
310
311 The move operation
312 Move a mounted tree to another place (atomically). The call is:
313
314 mount --move olddir newdir
315
316 This will cause the contents which previously appeared under olddir to
317 now be accessible under newdir. The physical location of the files is
318 not changed. Note that olddir has to be a mountpoint.
319
320 Note also that moving a mount residing under a shared mount is invalid
321 and unsupported. Use findmnt -o TARGET,PROPAGATION to see the current
322 propagation flags.
323
324 Shared subtree operations
325 Since Linux 2.6.15 it is possible to mark a mount and its submounts as
326 shared, private, slave or unbindable. A shared mount provides the
327 ability to create mirrors of that mount such that mounts and unmounts
328 within any of the mirrors propagate to the other mirror. A slave mount
329 receives propagation from its master, but not vice versa. A private
330 mount carries no propagation abilities. An unbindable mount is a
331 private mount which cannot be cloned through a bind operation. The
332 detailed semantics are documented in
333 Documentation/filesystems/sharedsubtree.txt file in the kernel source
334 tree; see also mount_namespaces(7).
335
336 Supported operations are:
337
338 mount --make-shared mountpoint
339 mount --make-slave mountpoint
340 mount --make-private mountpoint
341 mount --make-unbindable mountpoint
342
343 The following commands allow one to recursively change the type of all
344 the mounts under a given mountpoint.
345
346 mount --make-rshared mountpoint
347 mount --make-rslave mountpoint
348 mount --make-rprivate mountpoint
349 mount --make-runbindable mountpoint
350
351 mount does not read fstab(5) when a --make-* operation is requested.
352 All necessary information has to be specified on the command line.
353
354 Note that the Linux kernel does not allow changing multiple propagation
355 flags with a single mount(2) system call, and the flags cannot be mixed
356 with other mount options and operations.
357
358 Since util-linux 2.23 the mount command can be used to do more
359 propagation (topology) changes by one mount(8) call and do it also
360 together with other mount operations. The propagation flags are applied
361 by additional mount(2) system calls when the preceding mount operations
362 were successful. Note that this use case is not atomic. It is possible
363 to specify the propagation flags in fstab(5) as mount options (private,
364 slave, shared, unbindable, rprivate, rslave, rshared, runbindable).
365
366 For example:
367
368 mount --make-private --make-unbindable /dev/sda1 /foo
369
370 is the same as:
371
372 mount /dev/sda1 /foo
373 mount --make-private /foo
374 mount --make-unbindable /foo
375
377 The full set of mount options used by an invocation of mount is
378 determined by first extracting the mount options for the filesystem
379 from the fstab table, then applying any options specified by the -o
380 argument, and finally applying a -r or -w option, when present.
381
382 The mount command does not pass all command-line options to the
383 /sbin/mount.suffix mount helpers. The interface between mount and the
384 mount helpers is described below in the EXTERNAL HELPERS section.
385
386 Command-line options available for the mount command are:
387
388 -a, --all
389 Mount all filesystems (of the given types) mentioned in fstab
390 (except for those whose line contains the noauto keyword). The
391 filesystems are mounted following their order in fstab. The mount
392 command compares filesystem source, target (and fs root for bind
393 mount or btrfs) to detect already mounted filesystems. The kernel
394 table with already mounted filesystems is cached during mount
395 --all. This means that all duplicated fstab entries will be
396 mounted.
397
398 The correct functionality depends on /proc (to detect already
399 mounted filesystems) and on /sys (to evaluate filesystem tags like
400 UUID= or LABEL=). It’s strongly recommended to mount /proc and /sys
401 filesystems before mount -a is executed, or keep /proc and /sys at
402 the beginning of fstab.
403
404 The option --all is possible to use for remount operation too. In
405 this case all filters (-t and -O) are applied to the table of
406 already mounted filesystems.
407
408 Since version 2.35 it is possible to use the command line option -o
409 to alter mount options from fstab (see also --options-mode).
410
411 Note that it is a bad practice to use mount -a for fstab checking.
412 The recommended solution is findmnt --verify.
413
414 -B, --bind
415 Remount a subtree somewhere else (so that its contents are
416 available in both places). See above, under Bind mount operation.
417
418 -c, --no-canonicalize
419 Don’t canonicalize paths. The mount command canonicalizes all paths
420 (from the command line or fstab) by default. This option can be
421 used together with the -f flag for already canonicalized absolute
422 paths. The option is designed for mount helpers which call mount
423 -i. It is strongly recommended to not use this command-line option
424 for normal mount operations.
425
426 Note that mount does not pass this option to the /sbin/mount.type
427 helpers.
428
429 -F, --fork
430 (Used in conjunction with -a.) Fork off a new incarnation of mount
431 for each device. This will do the mounts on different devices or
432 different NFS servers in parallel. This has the advantage that it
433 is faster; also NFS timeouts proceed in parallel. A disadvantage is
434 that the order of the mount operations is undefined. Thus, you
435 cannot use this option if you want to mount both /usr and
436 /usr/spool.
437
438 -f, --fake
439 Causes everything to be done except for the mount-related system
440 calls. The --fake option was originally designed to write an entry
441 to /etc/mtab without actually mounting.
442
443 The /etc/mtab is no longer maintained in userspace, and starting
444 from version 2.39, the mount operation can be a complex chain of
445 operations with dependencies between the syscalls. The --fake
446 option forces libmount to skip all mount source preparation, mount
447 option analysis, and the actual mounting process.
448
449 The difference between fake and non-fake execution is huge. This is
450 the reason why the --fake option has minimal significance for the
451 current mount(8) implementation and it is maintained mostly for
452 backward compatibility.
453
454 -i, --internal-only
455 Don’t call the /sbin/mount.filesystem helper even if it exists.
456
457 -L, --label label
458 Mount the partition that has the specified label.
459
460 -l, --show-labels
461 Add the labels in the mount output. mount must have permission to
462 read the disk device (e.g. be set-user-ID root) for this to work.
463 One can set such a label for ext2, ext3 or ext4 using the
464 e2label(8) utility, or for XFS using xfs_admin(8), or for reiserfs
465 using reiserfstune(8).
466
467 -M, --move
468 Move a subtree to some other place. See above, the subsection The
469 move operation.
470
471 -m, --mkdir[=mode]
472 Allow to make a target directory (mountpoint) if it does not exist
473 yet. Alias to "-o X-mount.mkdir[=mode]", the default mode is 0755.
474 For more details see X-mount.mkdir below.
475
476 -n, --no-mtab
477 Mount without writing in /etc/mtab. This is necessary for example
478 when /etc is on a read-only filesystem.
479
480 -N, --namespace ns
481 Perform the mount operation in the mount namespace specified by ns.
482 ns is either PID of process running in that namespace or special
483 file representing that namespace.
484
485 mount switches to the mount namespace when it reads /etc/fstab,
486 writes /etc/mtab: (or writes to _/run/mount) and calls mount(2),
487 otherwise it runs in the original mount namespace. This means that
488 the target namespace does not have to contain any libraries or
489 other requirements necessary to execute the mount(2) call.
490
491 See mount_namespaces(7) for more information.
492
493 -O, --test-opts opts
494 Limit the set of filesystems to which the -a option applies. In
495 this regard it is like the -t option except that -O is useless
496 without -a. For example, the command
497
498 mount -a -O no_netdev
499
500 mounts all filesystems except those which have the option netdev
501 specified in the options field in the /etc/fstab file.
502
503 It is different from -t in that each option is matched exactly; a
504 leading no at the beginning of one option does not negate the rest.
505
506 The -t and -O options are cumulative in effect; that is, the
507 command
508
509 mount -a -t ext2 -O _netdev
510
511 mounts all ext2 filesystems with the _netdev option, not all
512 filesystems that are either ext2 or have the _netdev option
513 specified.
514
515 -o, --options opts
516 Use the specified mount options. The opts argument is a
517 comma-separated list. For example:
518
519 mount LABEL=mydisk -o noatime,nodev,nosuid
520
521 Note that the order of the options matters, as the last option wins
522 if there are conflicting ones. The options from the command line
523 also overwrite options from fstab by default.
524
525 For more details, see the FILESYSTEM-INDEPENDENT MOUNT OPTIONS and
526 FILESYSTEM-SPECIFIC MOUNT OPTIONS sections.
527
528 --onlyonce
529 Forces mount command to check if the filesystem is already mounted.
530 This behavior is the default for --all; otherwise, it depends on
531 the kernel filesystem driver. Some filesystems may be mounted more
532 than once on the same mount point (e.g. tmpfs).
533
534 --options-mode mode
535 Controls how to combine options from fstab/mtab with options from
536 the command line. mode can be one of ignore, append, prepend or
537 replace. For example, append means that options from fstab are
538 appended to options from the command line. The default value is
539 prepend — it means command line options are evaluated after fstab
540 options. Note that the last option wins if there are conflicting
541 ones.
542
543 --options-source source
544 Source of default options. source is a comma-separated list of
545 fstab, mtab and disable. disable disables fstab and mtab and
546 enables --options-source-force. The default value is fstab,mtab.
547
548 --options-source-force
549 Use options from fstab/mtab even if both device and dir are
550 specified.
551
552 -R, --rbind
553 Remount a subtree and all possible submounts somewhere else (so
554 that its contents are available in both places). See above, the
555 subsection Bind mount operation.
556
557 -r, --read-only
558 Mount the filesystem read-only. A synonym is -o ro.
559
560 Note that, depending on the filesystem type, state and kernel
561 behavior, the system may still write to the device. For example,
562 ext3 and ext4 will replay the journal if the filesystem is dirty.
563 To prevent this kind of write access, you may want to mount an ext3
564 or ext4 filesystem with the ro,noload mount options or set the
565 block device itself to read-only mode, see the blockdev(8) command.
566
567 -s
568 Tolerate sloppy mount options rather than failing. This will ignore
569 mount options not supported by a filesystem type. Not all
570 filesystems support this option. Currently it’s supported by the
571 mount.nfs mount helper only.
572
573 --source device
574 If only one argument for the mount command is given, then the
575 argument might be interpreted as the target (mountpoint) or source
576 (device). This option allows you to explicitly define that the
577 argument is the mount source.
578
579 --target directory
580 If only one argument for the mount command is given, then the
581 argument might be interpreted as the target (mountpoint) or source
582 (device). This option allows you to explicitly define that the
583 argument is the mount target.
584
585 --target-prefix directory
586 Prepend the specified directory to all mount targets. This option
587 can be used to follow fstab, but mount operations are done in
588 another place, for example:
589
590 mount --all --target-prefix /chroot -o X-mount.mkdir
591
592 mounts all from system fstab to /chroot, all missing mountpoint are
593 created (due to X-mount.mkdir). See also --fstab to use an
594 alternative fstab.
595
596 -T, --fstab path
597 Specifies an alternative fstab file. If path is a directory, then
598 the files in the directory are sorted by strverscmp(3); files that
599 start with "." or without an .fstab extension are ignored. The
600 option can be specified more than once. This option is mostly
601 designed for initramfs or chroot scripts where additional
602 configuration is specified beyond standard system configuration.
603
604 Note that mount does not pass the option --fstab to the
605 /sbin/mount.type helpers, meaning that the alternative fstab files
606 will be invisible for the helpers. This is no problem for normal
607 mounts, but user (non-root) mounts always require fstab to verify
608 the user’s rights.
609
610 -t, --types fstype
611 The argument following the -t is used to indicate the filesystem
612 type. The filesystem types which are currently supported depend on
613 the running kernel. See /proc/filesystems and /lib/modules/$(uname
614 -r)/kernel/fs for a complete list of the filesystems. The most
615 common are ext2, ext3, ext4, xfs, btrfs, vfat, sysfs, proc, nfs and
616 cifs.
617
618 The programs mount and umount(8) support filesystem subtypes. The
619 subtype is defined by a '.subtype' suffix. For example
620 'fuse.sshfs'. It’s recommended to use subtype notation rather than
621 add any prefix to the mount source (for example 'sshfs#example.com'
622 is deprecated).
623
624 If no -t option is given, or if the auto type is specified, mount
625 will try to guess the desired type. mount uses the libblkid(3)
626 library for guessing the filesystem type; if that does not turn up
627 anything that looks familiar, mount will try to read the file
628 /etc/filesystems, or, if that does not exist, /proc/filesystems.
629 All of the filesystem types listed there will be tried, except for
630 those that are labeled "nodev" (e.g. devpts, proc and nfs). If
631 /etc/filesystems ends in a line with a single *, mount will read
632 /proc/filesystems afterwards. While trying, all filesystem types
633 will be mounted with the mount option silent.
634
635 The auto type may be useful for user-mounted floppies. Creating a
636 file /etc/filesystems can be useful to change the probe order
637 (e.g., to try vfat before msdos or ext3 before ext2) or if you use
638 a kernel module autoloader.
639
640 More than one type may be specified in a comma-separated list, for
641 the -t option as well as in an /etc/fstab entry. The list of
642 filesystem types for the -t option can be prefixed with no to
643 specify the filesystem types on which no action should be taken.
644 The prefix no has no effect when specified in an /etc/fstab entry.
645
646 The prefix no can be meaningful with the -a option. For example,
647 the command
648
649 mount -a -t nomsdos,smbfs
650
651 mounts all filesystems except those of type msdos and smbfs.
652
653 For most types all the mount program has to do is issue a simple
654 mount(2) system call, and no detailed knowledge of the filesystem
655 type is required. For a few types however (like nfs, nfs4, cifs,
656 smbfs, ncpfs) an ad hoc code is necessary. The nfs, nfs4, cifs,
657 smbfs, and ncpfs filesystems have a separate mount program. In
658 order to make it possible to treat all types in a uniform way,
659 mount will execute the program /sbin/mount.type (if that exists)
660 when called with type type. Since different versions of the
661 smbmount program have different calling conventions,
662 /sbin/mount.smbfs may have to be a shell script that sets up the
663 desired call.
664
665 -U, --uuid uuid
666 Mount the partition that has the specified uuid.
667
668 -v, --verbose
669 Verbose mode.
670
671 -w, --rw, --read-write
672 Mount the filesystem read/write. Read-write is the kernel default
673 and the mount default is to try read-only if the previous mount(2)
674 syscall with read-write flags on write-protected devices failed.
675
676 A synonym is -o rw.
677
678 Note that specifying -w on the command line forces mount to never
679 try read-only mount on write-protected devices or already mounted
680 read-only filesystems.
681
682 -h, --help
683 Display help text and exit.
684
685 -V, --version
686 Print version and exit.
687
689 Some of these options are only useful when they appear in the
690 /etc/fstab file.
691
692 Some of these options could be enabled or disabled by default in the
693 system kernel. To check the current setting see the options in
694 /proc/mounts. Note that filesystems also have per-filesystem specific
695 default mount options (see for example tune2fs -l output for extN
696 filesystems).
697
698 The options nosuid, noexec, nodiratime, relatime, noatime, strictatime,
699 and nosymfollow are interpreted only by the abstract VFS kernel layer
700 and applied to the mountpoint node rather than to the filesystem
701 itself. Try:
702
703 findmnt -o TARGET,VFS-OPTIONS,FS-OPTIONS
704
705 to get a complete overview of filesystems and VFS options.
706
707 The read-only setting (ro or rw) is interpreted by VFS and the
708 filesystem and depends on how the option is specified on the mount(8)
709 command line. The default is to interpret it on the filesystem level.
710 The operation "-o bind,remount,ro" is applied only to the VFS
711 mountpoint, and operation "-o remount,ro" is applied to VFS and
712 filesystem superblock. This semantic allows create a read-only
713 mountpoint but keeps the filesystem writable from another mountpoint.
714
715 Since v2.39 libmount can use a new kernel mount interface to set the
716 VFS options recursive. For backward compatibility, this feature is not
717 enabled by default, although recursive operation (e.g. rbind) has been
718 requested. The new option argument "recursive" could be specified, for
719 example:
720
721 mount -orbind,ro=recursive,noexec=recursive,nosuid /foo /bar
722
723 recursively binds filesystems from /foo to /bar, /bar, and all
724 submounts will be read-only and noexec, but only /bar itself will be
725 "nosuid". The "recursive" optional argument for VFS mount options is an
726 EXPERIMENTAL feature.
727
728 The following options apply to any filesystem that is being mounted
729 (but not every filesystem actually honors them - e.g., the sync option
730 today has an effect only for ext2, ext3, ext4, fat, vfat, ufs and xfs):
731
732 async
733 All I/O to the filesystem should be done asynchronously. (See also
734 the sync option.)
735
736 atime
737 Do not use the noatime feature, so the inode access time is
738 controlled by kernel defaults. See also the descriptions of the
739 relatime and strictatime mount options.
740
741 noatime
742 Do not update inode access times on this filesystem (e.g. for
743 faster access on the news spool to speed up news servers). This
744 works for all inode types (directories too), so it implies
745 nodiratime.
746
747 auto
748 Can be mounted with the -a option.
749
750 noauto
751 Can only be mounted explicitly (i.e., the -a option will not cause
752 the filesystem to be mounted).
753
754 context=context, fscontext=context, defcontext=context, and
755 rootcontext=context
756 The context= option is useful when mounting filesystems that do not
757 support extended attributes, such as a floppy or hard disk
758 formatted with VFAT, or systems that are not normally running under
759 SELinux, such as an ext3 or ext4 formatted disk from a non-SELinux
760 workstation. You can also use context= on filesystems you do not
761 trust, such as a floppy. It also helps in compatibility with
762 xattr-supporting filesystems on earlier 2.4.<x> kernel versions.
763 Even where xattrs are supported, you can save time not having to
764 label every file by assigning the entire disk one security context.
765
766 A commonly used option for removable media is
767 context="system_u:object_r:removable_t.
768
769 The fscontext= option works for all filesystems, regardless of
770 their xattr support. The fscontext option sets the overarching
771 filesystem label to a specific security context. This filesystem
772 label is separate from the individual labels on the files. It
773 represents the entire filesystem for certain kinds of permission
774 checks, such as during mount or file creation. Individual file
775 labels are still obtained from the xattrs on the files themselves.
776 The context option actually sets the aggregate context that
777 fscontext provides, in addition to supplying the same label for
778 individual files.
779
780 You can set the default security context for unlabeled files using
781 defcontext= option. This overrides the value set for unlabeled
782 files in the policy and requires a filesystem that supports xattr
783 labeling.
784
785 The rootcontext= option allows you to explicitly label the root
786 inode of a FS being mounted before that FS or inode becomes visible
787 to userspace. This was found to be useful for things like stateless
788 Linux. The special value @target can be used to assign the current
789 context of the target mountpoint location.
790
791 Note that the kernel rejects any remount request that includes the
792 context option, even when unchanged from the current context.
793
794 Warning: the context value might contain commas, in which case the
795 value has to be properly quoted, otherwise mount will interpret the
796 comma as a separator between mount options. Don’t forget that the
797 shell strips off quotes and thus double quoting is required. For
798 example:
799
800 mount -t tmpfs none /mnt -o \
801 'context="system_u:object_r:tmp_t:s0:c127,c456",noexec'
802
803 For more details, see selinux(8).
804
805 defaults
806 Use the default options: rw, suid, dev, exec, auto, nouser, and
807 async.
808
809 Note that the real set of all default mount options depends on the
810 kernel and filesystem type. See the beginning of this section for
811 more details.
812
813 dev
814 Interpret character or block special devices on the filesystem.
815
816 nodev
817 Do not interpret character or block special devices on the
818 filesystem.
819
820 diratime
821 Update directory inode access times on this filesystem. This is the
822 default. (This option is ignored when noatime is set.)
823
824 nodiratime
825 Do not update directory inode access times on this filesystem.
826 (This option is implied when noatime is set.)
827
828 dirsync
829 All directory updates within the filesystem should be done
830 synchronously. This affects the following system calls: creat(2),
831 link(2), unlink(2), symlink(2), mkdir(2), rmdir(2), mknod(2) and
832 rename(2).
833
834 exec
835 Permit execution of binaries and other executable files.
836
837 noexec
838 Do not permit direct execution of any binaries on the mounted
839 filesystem.
840
841 group
842 Allow an ordinary user to mount the filesystem if one of that
843 user’s groups matches the group of the device. This option implies
844 the options nosuid and nodev (unless overridden by subsequent
845 options, as in the option line group,dev,suid).
846
847 iversion
848 Every time the inode is modified, the i_version field will be
849 incremented.
850
851 noiversion
852 Do not increment the i_version inode field.
853
854 mand
855 Allow mandatory locks on this filesystem. See fcntl(2). This option
856 was deprecated in Linux 5.15.
857
858 nomand
859 Do not allow mandatory locks on this filesystem.
860
861 _netdev
862 The filesystem resides on a device that requires network access
863 (used to prevent the system from attempting to mount these
864 filesystems until the network has been enabled on the system).
865
866 nofail
867 Do not report errors for this device if it does not exist.
868
869 relatime
870 Update inode access times relative to modify or change time. Access
871 time is only updated if the previous access time was earlier than
872 or equal to the current modify or change time. (Similar to noatime,
873 but it doesn’t break mutt(1) or other applications that need to
874 know if a file has been read since the last time it was modified.)
875
876 Since Linux 2.6.30, the kernel defaults to the behavior provided by
877 this option (unless noatime was specified), and the strictatime
878 option is required to obtain traditional semantics. In addition,
879 since Linux 2.6.30, the file’s last access time is always updated
880 if it is more than 1 day old.
881
882 norelatime
883 Do not use the relatime feature. See also the strictatime mount
884 option.
885
886 strictatime
887 Allows to explicitly request full atime updates. This makes it
888 possible for the kernel to default to relatime or noatime but still
889 allow userspace to override it. For more details about the default
890 system mount options see /proc/mounts.
891
892 nostrictatime
893 Use the kernel’s default behavior for inode access time updates.
894
895 lazytime
896 Only update times (atime, mtime, ctime) on the in-memory version of
897 the file inode.
898
899 This mount option significantly reduces writes to the inode table
900 for workloads that perform frequent random writes to preallocated
901 files.
902
903 The on-disk timestamps are updated only when:
904
905 • the inode needs to be updated for some change unrelated to file
906 timestamps
907
908 • the application employs fsync(2), syncfs(2), or sync(2)
909
910 • an undeleted inode is evicted from memory
911
912 • more than 24 hours have passed since the inode was written to
913 disk.
914
915 nolazytime
916 Do not use the lazytime feature.
917
918 suid
919 Honor set-user-ID and set-group-ID bits or file capabilities when
920 executing programs from this filesystem.
921
922 nosuid
923 Do not honor set-user-ID and set-group-ID bits or file capabilities
924 when executing programs from this filesystem. In addition, SELinux
925 domain transitions require permission nosuid_transition, which in
926 turn needs also policy capability nnp_nosuid_transition.
927
928 silent
929 Turn on the silent flag.
930
931 loud
932 Turn off the silent flag.
933
934 owner
935 Allow an ordinary user to mount the filesystem if that user is the
936 owner of the device. This option implies the options nosuid and
937 nodev (unless overridden by subsequent options, as in the option
938 line owner,dev,suid).
939
940 remount
941 Attempt to remount an already-mounted filesystem. This is commonly
942 used to change the mount flags for a filesystem, especially to make
943 a readonly filesystem writable. It does not change device or mount
944 point.
945
946 The remount operation together with the bind flag has special
947 semantics. See above, the subsection Bind mount operation.
948
949 The default kernel behavior for VFS mount flags
950 (nodev,nosuid,noexec,ro) is to reset all unspecified flags on
951 remount. That’s why mount(8) tries to keep the current setting
952 according to fstab or /proc/self/mountinfo. This default behavior
953 is possible to change by --options-mode. The recursive change of
954 the mount flags (supported since v2.39 on systems with
955 mount_setattr(2) syscall), for example, mount -o
956 remount,ro=recursive, do not use "reset-unspecified" behavior, and
957 it works as a simple add/remove operation and unspecified flags are
958 not modified.
959
960 The remount functionality follows the standard way the mount
961 command works with options from fstab. This means that mount does
962 not read fstab (or mtab) only when both device and dir are
963 specified.
964
965 mount -o remount,rw /dev/foo /dir
966
967 After this call all old mount options are replaced and arbitrary
968 stuff from fstab (or mtab) is ignored, except the loop= option
969 which is internally generated and maintained by the mount command.
970
971 mount -o remount,rw /dir
972
973 After this call, mount reads fstab and merges these options with
974 the options from the command line (-o). If no mountpoint is found
975 in fstab, then it defaults to mount options from
976 /proc/self/mountinfo.
977
978 mount allows the use of --all to remount all already mounted
979 filesystems which match a specified filter (-O and -t). For
980 example:
981
982 mount --all -o remount,ro -t vfat
983
984 remounts all already mounted vfat filesystems in read-only mode.
985 Each of the filesystems is remounted by mount -o remount,ro /dir
986 semantic. This means the mount command reads fstab or mtab and
987 merges these options with the options from the command line.
988
989 ro
990 Mount the filesystem read-only.
991
992 rw
993 Mount the filesystem read-write.
994
995 sync
996 All I/O to the filesystem should be done synchronously. In the case
997 of media with a limited number of write cycles (e.g. some flash
998 drives), sync may cause life-cycle shortening.
999
1000 user
1001 Allow an ordinary user to mount the filesystem. The name of the
1002 mounting user is written to the mtab file (or to the private
1003 libmount file in /run/mount on systems without a regular mtab) so
1004 that this same user can unmount the filesystem again. This option
1005 implies the options noexec, nosuid, and nodev (unless overridden by
1006 subsequent options, as in the option line user,exec,dev,suid).
1007
1008 nouser
1009 Forbid an ordinary user to mount the filesystem. This is the
1010 default; it does not imply any other options.
1011
1012 users
1013 Allow any user to mount and to unmount the filesystem, even when
1014 some other ordinary user mounted it. This option implies the
1015 options noexec, nosuid, and nodev (unless overridden by subsequent
1016 options, as in the option line users,exec,dev,suid).
1017
1018 X-*
1019 All options prefixed with "X-" are interpreted as comments or as
1020 userspace application-specific options. These options are not
1021 stored in user space (e.g., mtab file), nor sent to the mount.type
1022 helpers nor to the mount(2) system call. The suggested format is
1023 X-appname.option.
1024
1025 x-*
1026 The same as X-* options, but stored permanently in user space. This
1027 means the options are also available for umount(8) or other
1028 operations. Note that maintaining mount options in user space is
1029 tricky, because it’s necessary use libmount-based tools and there
1030 is no guarantee that the options will be always available (for
1031 example after a move mount operation or in unshared namespace).
1032
1033 Note that before util-linux v2.30 the x-* options have not been
1034 maintained by libmount and stored in user space (functionality was
1035 the same as for X-* now), but due to the growing number of
1036 use-cases (in initrd, systemd etc.) the functionality has been
1037 extended to keep existing fstab configurations usable without a
1038 change.
1039
1040 X-mount.auto-fstypes=list
1041 Specifies allowed or forbidden filesystem types for automatic
1042 filesystem detection.
1043
1044 The list is a comma-separated list of the filesystem names. The
1045 automatic filesystem detection is triggered by the "auto"
1046 filesystem type or when the filesystem type is not specified.
1047
1048 Thy list follows how mount evaluates type patterns (see -t for more
1049 details). Only specified filesystem types are allowed, or all
1050 specified types are forbidden if the list is prefixed by "no".
1051
1052 For example, X-mount.auto-fstypes="ext4,btrfs" accepts only ext4
1053 and btrfs, and X-mount.auto-fstypes="novfat,xfs" accepts all
1054 filesystems except vfat and xfs.
1055
1056 Note that comma is used as a separator between mount options, it
1057 means that auto-fstypes values have to be properly quoted, don’t
1058 forget that the shell strips off quotes and thus double quoting is
1059 required. For example:
1060
1061 mount -t auto -o’X-mount.auto-fstypes="noext2,ext3"'
1062 /dev/sdc1 /mnt/test
1063
1064 X-mount.mkdir[=mode]
1065 Allow to make a target directory (mountpoint) if it does not exist
1066 yet. The optional argument mode specifies the filesystem access
1067 mode used for mkdir(2) in octal notation. The default mode is 0755.
1068 This functionality is supported only for root users or when mount
1069 is executed without suid permissions. The option is also supported
1070 as x-mount.mkdir, but this notation is deprecated since v2.30. See
1071 also --mkdir command line option.
1072
1073 X-mount.subdir=directory
1074 Allow mounting sub-directory from a filesystem instead of the root
1075 directory. For now, this feature is implemented by temporary
1076 filesystem root directory mount in unshared namespace and then bind
1077 the sub-directory to the final mount point and umount the root of
1078 the filesystem. The sub-directory mount shows up atomically for the
1079 rest of the system although it is implemented by multiple mount(2)
1080 syscalls.
1081
1082 Note that this feature will not work in session with an unshared
1083 private mount namespace (after unshare --mount) on old kernels or
1084 with mount(8) without support for file-descriptors-based mount
1085 kernel API. In this case, you need unshare --mount --propagation
1086 shared.
1087
1088 This feature is EXPERIMENTAL.
1089
1090 X-mount.owner=username|UID, X-mount.group=group|GID
1091 Set mountpoint's ownership after mounting. Names resolved in the
1092 target mount namespace, see -N.
1093
1094 X-mount.mode=mode
1095 Set mountpoint's mode after mounting.
1096
1097 X-mount.idmap=id-type:id-mount:id-host:id-range
1098 [id-type:id-mount:id-host:id-range], X-mount.idmap=file
1099 Use this option to create an idmapped mount. An idmapped mount
1100 allows to change ownership of all files located under a mount
1101 according to the ID-mapping associated with a user namespace. The
1102 ownership change is tied to the lifetime and localized to the
1103 relevant mount. The relevant ID-mapping can be specified in two
1104 ways:
1105
1106 • A user can specify the ID-mapping directly.
1107
1108 The ID-mapping must be specified using the syntax
1109 id-type:id-mount:id-host:id-range. Specifying u as the id-type
1110 prefix creates a UID-mapping, g creates a GID-mapping and
1111 omitting id-type or specifying b creates both a UID- and
1112 GID-mapping. The id-mount parameter indicates the starting ID
1113 in the new mount. The id-host parameter indicates the starting
1114 ID in the filesystem. The id-range parameter indicates how many
1115 IDs are to be mapped. It is possible to specify multiple
1116 ID-mappings. The individual ID-mappings must be separated by
1117 spaces.
1118
1119 For example, the ID-mapping X-mount.idmap=u:1000:0:1 g:1001:1:2
1120 5000:1000:2 creates an idmapped mount where UID 0 is mapped to
1121 UID 1000, GID 1 is mapped to GUID 1001, GID 2 is mapped to GID
1122 1002, UID and GID 1000 are mapped to 5000, and UID and GID 1001
1123 are mapped to 5001 in the mount.
1124
1125 When an ID-mapping is specified directly a new user namespace
1126 will be allocated with the requested ID-mapping. The newly
1127 created user namespace will be attached to the mount.
1128
1129 • A user can specify a user namespace file.
1130
1131 The user namespace will then be attached to the mount and the
1132 ID-mapping of the user namespace will become the ID-mapping of
1133 the mount.
1134
1135 For example, X-mount.idmap=/proc/PID/ns/user will attach the
1136 user namespace of the process PID to the mount.
1137
1138 nosymfollow
1139 Do not follow symlinks when resolving paths. Symlinks can still be
1140 created, and readlink(1), readlink(2), realpath(1), and realpath(3)
1141 all still work properly.
1142
1144 This section lists options that are specific to particular filesystems.
1145 Where possible, you should first consult filesystem-specific manual
1146 pages for details. Some of those pages are listed in the following
1147 table.
1148
1149 ┌─────────────────┬───────────────┐
1150 │ │ │
1151 │Filesystem(s) │ Manual page │
1152 ├─────────────────┼───────────────┤
1153 │ │ │
1154 │btrfs │ btrfs(5) │
1155 ├─────────────────┼───────────────┤
1156 │ │ │
1157 │cifs │ mount.cifs(8) │
1158 ├─────────────────┼───────────────┤
1159 │ │ │
1160 │ext2, ext3, ext4 │ ext4(5) │
1161 ├─────────────────┼───────────────┤
1162 │ │ │
1163 │fuse │ fuse(8) │
1164 ├─────────────────┼───────────────┤
1165 │ │ │
1166 │nfs │ nfs(5) │
1167 ├─────────────────┼───────────────┤
1168 │ │ │
1169 │tmpfs │ tmpfs(5) │
1170 ├─────────────────┼───────────────┤
1171 │ │ │
1172 │xfs │ xfs(5) │
1173 └─────────────────┴───────────────┘
1174
1175 Note that some of the pages listed above might be available only after
1176 you install the respective userland tools.
1177
1178 The following options apply only to certain filesystems. We sort them
1179 by filesystem. All options follow the -o flag.
1180
1181 What options are supported depends a bit on the running kernel. Further
1182 information may be available in filesystem-specific files in the kernel
1183 source subdirectory Documentation/filesystems.
1184
1185 Mount options for adfs
1186 uid=value and gid=value
1187 Set the owner and group of the files in the filesystem (default:
1188 uid=gid=0).
1189
1190 ownmask=value and othmask=value
1191 Set the permission mask for ADFS 'owner' permissions and 'other'
1192 permissions, respectively (default: 0700 and 0077, respectively).
1193 See also /usr/src/linux/Documentation/filesystems/adfs.rst.
1194
1195 Mount options for affs
1196 uid=value and gid=value
1197 Set the owner and group of the root of the filesystem (default:
1198 uid=gid=0, but with option uid or gid without specified value, the
1199 UID and GID of the current process are taken).
1200
1201 setuid=value and setgid=value
1202 Set the owner and group of all files.
1203
1204 mode=value
1205 Set the mode of all files to value & 0777 disregarding the original
1206 permissions. Add search permission to directories that have read
1207 permission. The value is given in octal.
1208
1209 protect
1210 Do not allow any changes to the protection bits on the filesystem.
1211
1212 usemp
1213 Set UID and GID of the root of the filesystem to the UID and GID of
1214 the mount point upon the first sync or umount, and then clear this
1215 option. Strange...
1216
1217 verbose
1218 Print an informational message for each successful mount.
1219
1220 prefix=string
1221 Prefix used before volume name, when following a link.
1222
1223 volume=string
1224 Prefix (of length at most 30) used before '/' when following a
1225 symbolic link.
1226
1227 reserved=value
1228 (Default: 2.) Number of unused blocks at the start of the device.
1229
1230 root=value
1231 Give explicitly the location of the root block.
1232
1233 bs=value
1234 Give blocksize. Allowed values are 512, 1024, 2048, 4096.
1235
1236 grpquota|noquota|quota|usrquota
1237 These options are accepted but ignored. (However, quota utilities
1238 may react to such strings in /etc/fstab.)
1239
1240 Mount options for debugfs
1241 The debugfs filesystem is a pseudo filesystem, traditionally mounted on
1242 /sys/kernel/debug. As of kernel version 3.4, debugfs has the following
1243 options:
1244
1245 uid=n, gid=n
1246 Set the owner and group of the mountpoint.
1247
1248 mode=value
1249 Sets the mode of the mountpoint.
1250
1251 Mount options for devpts
1252 The devpts filesystem is a pseudo filesystem, traditionally mounted on
1253 /dev/pts. In order to acquire a pseudo terminal, a process opens
1254 /dev/ptmx; the number of the pseudo terminal is then made available to
1255 the process and the pseudo terminal slave can be accessed as
1256 /dev/pts/<number>.
1257
1258 uid=value and gid=value
1259 This sets the owner or the group of newly created pseudo terminals
1260 to the specified values. When nothing is specified, they will be
1261 set to the UID and GID of the creating process. For example, if
1262 there is a tty group with GID 5, then gid=5 will cause newly
1263 created pseudo terminals to belong to the tty group.
1264
1265 mode=value
1266 Set the mode of newly created pseudo terminals to the specified
1267 value. The default is 0600. A value of mode=620 and gid=5 makes
1268 "mesg y" the default on newly created pseudo terminals.
1269
1270 newinstance
1271 Create a private instance of the devpts filesystem, such that
1272 indices of pseudo terminals allocated in this new instance are
1273 independent of indices created in other instances of devpts.
1274
1275 All mounts of devpts without this newinstance option share the same
1276 set of pseudo terminal indices (i.e., legacy mode). Each mount of
1277 devpts with the newinstance option has a private set of pseudo
1278 terminal indices.
1279
1280 This option is mainly used to support containers in the Linux
1281 kernel. It is implemented in Linux kernel versions starting with
1282 2.6.29. Further, this mount option is valid only if
1283 CONFIG_DEVPTS_MULTIPLE_INSTANCES is enabled in the kernel
1284 configuration.
1285
1286 To use this option effectively, /dev/ptmx must be a symbolic link
1287 to pts/ptmx. See Documentation/filesystems/devpts.txt in the Linux
1288 kernel source tree for details.
1289
1290 ptmxmode=value
1291 Set the mode for the new ptmx device node in the devpts filesystem.
1292
1293 With the support for multiple instances of devpts (see newinstance
1294 option above), each instance has a private ptmx node in the root of
1295 the devpts filesystem (typically /dev/pts/ptmx).
1296
1297 For compatibility with older versions of the kernel, the default
1298 mode of the new ptmx node is 0000. ptmxmode=value specifies a more
1299 useful mode for the ptmx node and is highly recommended when the
1300 newinstance option is specified.
1301
1302 This option is only implemented in Linux kernel versions starting
1303 with 2.6.29. Further, this option is valid only if
1304 CONFIG_DEVPTS_MULTIPLE_INSTANCES is enabled in the kernel
1305 configuration.
1306
1307 Mount options for fat
1308 (Note: fat is not a separate filesystem, but a common part of the
1309 msdos, umsdos and vfat filesystems.)
1310
1311 blocksize={512|1024|2048}
1312 Set blocksize (default 512). This option is obsolete.
1313
1314 uid=value and gid=value
1315 Set the owner and group of all files. (Default: the UID and GID of
1316 the current process.)
1317
1318 umask=value
1319 Set the umask (the bitmask of the permissions that are not
1320 present). The default is the umask of the current process. The
1321 value is given in octal.
1322
1323 dmask=value
1324 Set the umask applied to directories only. The default is the umask
1325 of the current process. The value is given in octal.
1326
1327 fmask=value
1328 Set the umask applied to regular files only. The default is the
1329 umask of the current process. The value is given in octal.
1330
1331 allow_utime=value
1332 This option controls the permission check of mtime/atime.
1333
1334 20
1335 If current process is in group of file’s group ID, you can
1336 change timestamp.
1337
1338 2
1339 Other users can change timestamp.
1340
1341 The default is set from 'dmask' option. (If the directory is writable,
1342 utime(2) is also allowed. I.e. ~dmask & 022)
1343
1344 Normally utime(2) checks that the current process is owner of the file,
1345 or that it has the CAP_FOWNER capability. But FAT filesystems don’t
1346 have UID/GID on disk, so the normal check is too inflexible. With this
1347 option you can relax it.
1348
1349 check=value
1350 Three different levels of pickiness can be chosen:
1351
1352 r[elaxed]
1353 Upper and lower case are accepted and equivalent, long name
1354 parts are truncated (e.g. verylongname.foobar becomes
1355 verylong.foo), leading and embedded spaces are accepted in each
1356 name part (name and extension).
1357
1358 n[ormal]
1359 Like "relaxed", but many special characters (*, ?, <, spaces,
1360 etc.) are rejected. This is the default.
1361
1362 s[trict]
1363 Like "normal", but names that contain long parts or special
1364 characters that are sometimes used on Linux but are not
1365 accepted by MS-DOS (+, =, etc.) are rejected.
1366
1367 codepage=value
1368 Sets the codepage for converting to shortname characters on FAT and
1369 VFAT filesystems. By default, codepage 437 is used.
1370
1371 conv=mode
1372 This option is obsolete and may fail or be ignored.
1373
1374 cvf_format=module
1375 Forces the driver to use the CVF (Compressed Volume File) module
1376 cvf_module instead of auto-detection. If the kernel supports kmod,
1377 the cvf_format=xxx option also controls on-demand CVF module
1378 loading. This option is obsolete.
1379
1380 cvf_option=option
1381 Option passed to the CVF module. This option is obsolete.
1382
1383 debug
1384 Turn on the debug flag. A version string and a list of filesystem
1385 parameters will be printed (these data are also printed if the
1386 parameters appear to be inconsistent).
1387
1388 discard
1389 If set, causes discard/TRIM commands to be issued to the block
1390 device when blocks are freed. This is useful for SSD devices and
1391 sparse/thinly-provisioned LUNs.
1392
1393 dos1xfloppy
1394 If set, use a fallback default BIOS Parameter Block configuration,
1395 determined by backing device size. These static parameters match
1396 defaults assumed by DOS 1.x for 160 kiB, 180 kiB, 320 kiB, and 360
1397 kiB floppies and floppy images.
1398
1399 errors={panic|continue|remount-ro}
1400 Specify FAT behavior on critical errors: panic, continue without
1401 doing anything, or remount the partition in read-only mode (default
1402 behavior).
1403
1404 fat={12|16|32}
1405 Specify a 12, 16 or 32 bit fat. This overrides the automatic FAT
1406 type detection routine. Use with caution!
1407
1408 iocharset=value
1409 Character set to use for converting between 8 bit characters and 16
1410 bit Unicode characters. The default is iso8859-1. Long filenames
1411 are stored on disk in Unicode format.
1412
1413 nfs={stale_rw|nostale_ro}
1414 Enable this only if you want to export the FAT filesystem over NFS.
1415
1416 stale_rw: This option maintains an index (cache) of directory
1417 inodes which is used by the nfs-related code to improve look-ups.
1418 Full file operations (read/write) over NFS are supported but with
1419 cache eviction at NFS server, this could result in spurious ESTALE
1420 errors.
1421
1422 nostale_ro: This option bases the inode number and file handle on
1423 the on-disk location of a file in the FAT directory entry. This
1424 ensures that ESTALE will not be returned after a file is evicted
1425 from the inode cache. However, it means that operations such as
1426 rename, create and unlink could cause file handles that previously
1427 pointed at one file to point at a different file, potentially
1428 causing data corruption. For this reason, this option also mounts
1429 the filesystem readonly.
1430
1431 To maintain backward compatibility, -o nfs is also accepted,
1432 defaulting to stale_rw.
1433
1434 tz=UTC
1435 This option disables the conversion of timestamps between local
1436 time (as used by Windows on FAT) and UTC (which Linux uses
1437 internally). This is particularly useful when mounting devices
1438 (like digital cameras) that are set to UTC in order to avoid the
1439 pitfalls of local time.
1440
1441 time_offset=minutes
1442 Set offset for conversion of timestamps from local time used by FAT
1443 to UTC. I.e., minutes will be subtracted from each timestamp to
1444 convert it to UTC used internally by Linux. This is useful when the
1445 time zone set in the kernel via settimeofday(2) is not the time
1446 zone used by the filesystem. Note that this option still does not
1447 provide correct time stamps in all cases in presence of DST - time
1448 stamps in a different DST setting will be off by one hour.
1449
1450 quiet
1451 Turn on the quiet flag. Attempts to chown or chmod files do not
1452 return errors, although they fail. Use with caution!
1453
1454 rodir
1455 FAT has the ATTR_RO (read-only) attribute. On Windows, the ATTR_RO
1456 of the directory will just be ignored, and is used only by
1457 applications as a flag (e.g. it’s set for the customized folder).
1458
1459 If you want to use ATTR_RO as read-only flag even for the
1460 directory, set this option.
1461
1462 showexec
1463 If set, the execute permission bits of the file will be allowed
1464 only if the extension part of the name is .EXE, .COM, or .BAT. Not
1465 set by default.
1466
1467 sys_immutable
1468 If set, ATTR_SYS attribute on FAT is handled as IMMUTABLE flag on
1469 Linux. Not set by default.
1470
1471 flush
1472 If set, the filesystem will try to flush to disk more early than
1473 normal. Not set by default.
1474
1475 usefree
1476 Use the "free clusters" value stored on FSINFO. It’ll be used to
1477 determine number of free clusters without scanning disk. But it’s
1478 not used by default, because recent Windows don’t update it
1479 correctly in some case. If you are sure the "free clusters" on
1480 FSINFO is correct, by this option you can avoid scanning disk.
1481
1482 dots, nodots, dotsOK=[yes|no]
1483 Various misguided attempts to force Unix or DOS conventions onto a
1484 FAT filesystem.
1485
1486 Mount options for hfs
1487 creator=cccc, type=cccc
1488 Set the creator/type values as shown by the MacOS finder used for
1489 creating new files. Default values: '????'.
1490
1491 uid=n, gid=n
1492 Set the owner and group of all files. (Default: the UID and GID of
1493 the current process.)
1494
1495 dir_umask=n, file_umask=n, umask=n
1496 Set the umask used for all directories, all regular files, or all
1497 files and directories. Defaults to the umask of the current
1498 process.
1499
1500 session=n
1501 Select the CDROM session to mount. Defaults to leaving that
1502 decision to the CDROM driver. This option will fail with anything
1503 but a CDROM as underlying device.
1504
1505 part=n
1506 Select partition number n from the device. Only makes sense for
1507 CDROMs. Defaults to not parsing the partition table at all.
1508
1509 quiet
1510 Don’t complain about invalid mount options.
1511
1512 Mount options for hpfs
1513 uid=value and gid=value
1514 Set the owner and group of all files. (Default: the UID and GID of
1515 the current process.)
1516
1517 umask=value
1518 Set the umask (the bitmask of the permissions that are not
1519 present). The default is the umask of the current process. The
1520 value is given in octal.
1521
1522 case={lower|asis}
1523 Convert all files names to lower case, or leave them. (Default:
1524 case=lower.)
1525
1526 conv=mode
1527 This option is obsolete and may fail or being ignored.
1528
1529 nocheck
1530 Do not abort mounting when certain consistency checks fail.
1531
1532 Mount options for iso9660
1533 ISO 9660 is a standard describing a filesystem structure to be used on
1534 CD-ROMs. (This filesystem type is also seen on some DVDs. See also the
1535 udf filesystem.)
1536
1537 Normal iso9660 filenames appear in an 8.3 format (i.e., DOS-like
1538 restrictions on filename length), and in addition all characters are in
1539 upper case. Also there is no field for file ownership, protection,
1540 number of links, provision for block/character devices, etc.
1541
1542 Rock Ridge is an extension to iso9660 that provides all of these
1543 UNIX-like features. Basically there are extensions to each directory
1544 record that supply all of the additional information, and when Rock
1545 Ridge is in use, the filesystem is indistinguishable from a normal UNIX
1546 filesystem (except that it is read-only, of course).
1547
1548 norock
1549 Disable the use of Rock Ridge extensions, even if available. Cf.
1550 map.
1551
1552 nojoliet
1553 Disable the use of Microsoft Joliet extensions, even if available.
1554 Cf. map.
1555
1556 check={r[elaxed]|s[trict]}
1557 With check=relaxed, a filename is first converted to lower case
1558 before doing the lookup. This is probably only meaningful together
1559 with norock and map=normal. (Default: check=strict.)
1560
1561 uid=value and gid=value
1562 Give all files in the filesystem the indicated user or group id,
1563 possibly overriding the information found in the Rock Ridge
1564 extensions. (Default: uid=0,gid=0.)
1565
1566 map={n[ormal]|o[ff]|a[corn]}
1567 For non-Rock Ridge volumes, normal name translation maps upper to
1568 lower case ASCII, drops a trailing ';1', and converts ';' to '.'.
1569 With map=off no name translation is done. See norock. (Default:
1570 map=normal.) map=acorn is like map=normal but also apply Acorn
1571 extensions if present.
1572
1573 mode=value
1574 For non-Rock Ridge volumes, give all files the indicated mode.
1575 (Default: read and execute permission for everybody.) Octal mode
1576 values require a leading 0.
1577
1578 unhide
1579 Also show hidden and associated files. (If the ordinary files and
1580 the associated or hidden files have the same filenames, this may
1581 make the ordinary files inaccessible.)
1582
1583 block={512|1024|2048}
1584 Set the block size to the indicated value. (Default: block=1024.)
1585
1586 conv=mode
1587 This option is obsolete and may fail or being ignored.
1588
1589 cruft
1590 If the high byte of the file length contains other garbage, set
1591 this mount option to ignore the high order bits of the file length.
1592 This implies that a file cannot be larger than 16 MB.
1593
1594 session=x
1595 Select number of session on a multisession CD.
1596
1597 sbsector=xxx
1598 Session begins from sector xxx.
1599
1600 The following options are the same as for vfat and specifying them only
1601 makes sense when using discs encoded using Microsoft’s Joliet
1602 extensions.
1603
1604 iocharset=value
1605 Character set to use for converting 16 bit Unicode characters on CD
1606 to 8 bit characters. The default is iso8859-1.
1607
1608 utf8
1609 Convert 16 bit Unicode characters on CD to UTF-8.
1610
1611 Mount options for jfs
1612 iocharset=name
1613 Character set to use for converting from Unicode to ASCII. The
1614 default is to do no conversion. Use iocharset=utf8 for UTF8
1615 translations. This requires CONFIG_NLS_UTF8 to be set in the kernel
1616 .config file.
1617
1618 resize=value
1619 Resize the volume to value blocks. JFS only supports growing a
1620 volume, not shrinking it. This option is only valid during a
1621 remount, when the volume is mounted read-write. The resize keyword
1622 with no value will grow the volume to the full size of the
1623 partition.
1624
1625 nointegrity
1626 Do not write to the journal. The primary use of this option is to
1627 allow for higher performance when restoring a volume from backup
1628 media. The integrity of the volume is not guaranteed if the system
1629 abnormally ends.
1630
1631 integrity
1632 Default. Commit metadata changes to the journal. Use this option to
1633 remount a volume where the nointegrity option was previously
1634 specified in order to restore normal behavior.
1635
1636 errors={continue|remount-ro|panic}
1637 Define the behavior when an error is encountered. (Either ignore
1638 errors and just mark the filesystem erroneous and continue, or
1639 remount the filesystem read-only, or panic and halt the system.)
1640
1641 noquota|quota|usrquota|grpquota
1642 These options are accepted but ignored.
1643
1644 Mount options for msdos
1645 See mount options for fat. If the msdos filesystem detects an
1646 inconsistency, it reports an error and sets the file system read-only.
1647 The filesystem can be made writable again by remounting it.
1648
1649 Mount options for ncpfs
1650 Just like nfs, the ncpfs implementation expects a binary argument (a
1651 struct ncp_mount_data) to the mount(2) system call. This argument is
1652 constructed by ncpmount(8) and the current version of mount (2.12) does
1653 not know anything about ncpfs.
1654
1655 Mount options for ntfs
1656 iocharset=name
1657 Character set to use when returning file names. Unlike VFAT, NTFS
1658 suppresses names that contain nonconvertible characters.
1659 Deprecated.
1660
1661 nls=name
1662 New name for the option earlier called iocharset.
1663
1664 utf8
1665 Use UTF-8 for converting file names.
1666
1667 uni_xlate={0|1|2}
1668 For 0 (or 'no' or 'false'), do not use escape sequences for unknown
1669 Unicode characters. For 1 (or 'yes' or 'true') or 2, use vfat-style
1670 4-byte escape sequences starting with ":". Here 2 gives a
1671 little-endian encoding and 1 a byteswapped bigendian encoding.
1672
1673 posix=[0|1]
1674 If enabled (posix=1), the filesystem distinguishes between upper
1675 and lower case. The 8.3 alias names are presented as hard links
1676 instead of being suppressed. This option is obsolete.
1677
1678 uid=value, gid=value and umask=value
1679 Set the file permission on the filesystem. The umask value is given
1680 in octal. By default, the files are owned by root and not readable
1681 by somebody else.
1682
1683 Mount options for overlay
1684 Since Linux 3.18 the overlay pseudo filesystem implements a union mount
1685 for other filesystems.
1686
1687 An overlay filesystem combines two filesystems - an upper filesystem
1688 and a lower filesystem. When a name exists in both filesystems, the
1689 object in the upper filesystem is visible while the object in the lower
1690 filesystem is either hidden or, in the case of directories, merged with
1691 the upper object.
1692
1693 The lower filesystem can be any filesystem supported by Linux and does
1694 not need to be writable. The lower filesystem can even be another
1695 overlayfs. The upper filesystem will normally be writable and if it is
1696 it must support the creation of trusted.* extended attributes, and must
1697 provide a valid d_type in readdir responses, so NFS is not suitable.
1698
1699 A read-only overlay of two read-only filesystems may use any filesystem
1700 type. The options lowerdir and upperdir are combined into a merged
1701 directory by using:
1702
1703 mount -t overlay overlay \
1704 -olowerdir=/lower,upperdir=/upper,workdir=/work /merged
1705
1706 lowerdir=directory
1707 Any filesystem, does not need to be on a writable filesystem.
1708
1709 upperdir=directory
1710 The upperdir is normally on a writable filesystem.
1711
1712 workdir=directory
1713 The workdir needs to be an empty directory on the same filesystem
1714 as upperdir.
1715
1716 userxattr
1717 Use the "user.overlay." xattr namespace instead of
1718 "trusted.overlay.". This is useful for unprivileged mounting of
1719 overlayfs.
1720
1721 redirect_dir={on|off|follow|nofollow}
1722 If the redirect_dir feature is enabled, then the directory will be
1723 copied up (but not the contents). Then the
1724 "{trusted|user}.overlay.redirect" extended attribute is set to the
1725 path of the original location from the root of the overlay. Finally
1726 the directory is moved to the new location.
1727
1728 on
1729 Redirects are enabled.
1730
1731 off
1732 Redirects are not created and only followed if
1733 "redirect_always_follow" feature is enabled in the
1734 kernel/module config.
1735
1736 follow
1737 Redirects are not created, but followed.
1738
1739 nofollow
1740 Redirects are not created and not followed (equivalent to
1741 "redirect_dir=off" if "redirect_always_follow" feature is not
1742 enabled).
1743
1744 index={on|off}
1745 Inode index. If this feature is disabled and a file with multiple
1746 hard links is copied up, then this will "break" the link. Changes
1747 will not be propagated to other names referring to the same inode.
1748
1749 uuid={on|off}
1750 Can be used to replace UUID of the underlying filesystem in file
1751 handles with null, and effectively disable UUID checks. This can be
1752 useful in case the underlying disk is copied and the UUID of this
1753 copy is changed. This is only applicable if all lower/upper/work
1754 directories are on the same filesystem, otherwise it will fallback
1755 to normal behaviour.
1756
1757 nfs_export={on|off}
1758 When the underlying filesystems supports NFS export and the
1759 "nfs_export" feature is enabled, an overlay filesystem may be
1760 exported to NFS.
1761
1762 With the "nfs_export" feature, on copy_up of any lower object, an
1763 index entry is created under the index directory. The index entry
1764 name is the hexadecimal representation of the copy up origin file
1765 handle. For a non-directory object, the index entry is a hard link
1766 to the upper inode. For a directory object, the index entry has an
1767 extended attribute "{trusted|user}.overlay.upper" with an encoded
1768 file handle of the upper directory inode.
1769
1770 When encoding a file handle from an overlay filesystem object, the
1771 following rules apply
1772
1773 • For a non-upper object, encode a lower file handle from
1774 lower inode
1775
1776 • For an indexed object, encode a lower file handle from
1777 copy_up origin
1778
1779 • For a pure-upper object and for an existing non-indexed
1780 upper object, encode an upper file handle from upper inode
1781
1782 The encoded overlay file handle includes
1783
1784 • Header including path type information (e.g. lower/upper)
1785
1786 • UUID of the underlying filesystem
1787
1788 • Underlying filesystem encoding of underlying inode
1789
1790 This encoding format is identical to the encoding format of file
1791 handles that are stored in extended attribute
1792 "{trusted|user}.overlay.origin". When decoding an overlay file
1793 handle, the following steps are followed
1794
1795 • Find underlying layer by UUID and path type information.
1796
1797 • Decode the underlying filesystem file handle to underlying
1798 dentry.
1799
1800 • For a lower file handle, lookup the handle in index
1801 directory by name.
1802
1803 • If a whiteout is found in index, return ESTALE. This
1804 represents an overlay object that was deleted after its
1805 file handle was encoded.
1806
1807 • For a non-directory, instantiate a disconnected overlay
1808 dentry from the decoded underlying dentry, the path type
1809 and index inode, if found.
1810
1811 • For a directory, use the connected underlying decoded
1812 dentry, path type and index, to lookup a connected overlay
1813 dentry.
1814
1815 Decoding a non-directory file handle may return a disconnected
1816 dentry. copy_up of that disconnected dentry will create an upper
1817 index entry with no upper alias.
1818
1819 When overlay filesystem has multiple lower layers, a middle layer
1820 directory may have a "redirect" to lower directory. Because middle
1821 layer "redirects" are not indexed, a lower file handle that was
1822 encoded from the "redirect" origin directory, cannot be used to
1823 find the middle or upper layer directory. Similarly, a lower file
1824 handle that was encoded from a descendant of the "redirect" origin
1825 directory, cannot be used to reconstruct a connected overlay path.
1826 To mitigate the cases of directories that cannot be decoded from a
1827 lower file handle, these directories are copied up on encode and
1828 encoded as an upper file handle. On an overlay filesystem with no
1829 upper layer this mitigation cannot be used NFS export in this setup
1830 requires turning off redirect follow (e.g.
1831 "redirect_dir=nofollow").
1832
1833 The overlay filesystem does not support non-directory connectable
1834 file handles, so exporting with the subtree_check exportfs
1835 configuration will cause failures to lookup files over NFS.
1836
1837 When the NFS export feature is enabled, all directory index entries
1838 are verified on mount time to check that upper file handles are not
1839 stale. This verification may cause significant overhead in some
1840 cases.
1841
1842 Note: the mount options index=off,nfs_export=on are conflicting for
1843 a read-write mount and will result in an error.
1844
1845 xino={on|off|auto}
1846 The "xino" feature composes a unique object identifier from the
1847 real object st_ino and an underlying fsid index. The "xino" feature
1848 uses the high inode number bits for fsid, because the underlying
1849 filesystems rarely use the high inode number bits. In case the
1850 underlying inode number does overflow into the high xino bits,
1851 overlay filesystem will fall back to the non xino behavior for that
1852 inode.
1853
1854 For a detailed description of the effect of this option please
1855 refer to https://docs.kernel.org/filesystems/overlayfs.html
1856
1857 metacopy={on|off}
1858 When metadata only copy up feature is enabled, overlayfs will only
1859 copy up metadata (as opposed to whole file), when a metadata
1860 specific operation like chown/chmod is performed. Full file will be
1861 copied up later when file is opened for WRITE operation.
1862
1863 In other words, this is delayed data copy up operation and data is
1864 copied up when there is a need to actually modify data.
1865
1866 volatile
1867 Volatile mounts are not guaranteed to survive a crash. It is
1868 strongly recommended that volatile mounts are only used if data
1869 written to the overlay can be recreated without significant effort.
1870
1871 The advantage of mounting with the "volatile" option is that all
1872 forms of sync calls to the upper filesystem are omitted.
1873
1874 In order to avoid a giving a false sense of safety, the syncfs (and
1875 fsync) semantics of volatile mounts are slightly different than
1876 that of the rest of VFS. If any writeback error occurs on the
1877 upperdir’s filesystem after a volatile mount takes place, all sync
1878 functions will return an error. Once this condition is reached, the
1879 filesystem will not recover, and every subsequent sync call will
1880 return an error, even if the upperdir has not experience a new
1881 error since the last sync call.
1882
1883 When overlay is mounted with "volatile" option, the directory
1884 "$workdir/work/incompat/volatile" is created. During next mount,
1885 overlay checks for this directory and refuses to mount if present.
1886 This is a strong indicator that user should throw away upper and
1887 work directories and create fresh one. In very limited cases where
1888 the user knows that the system has not crashed and contents of
1889 upperdir are intact, The "volatile" directory can be removed.
1890
1891 Mount options for reiserfs
1892 Reiserfs is a journaling filesystem.
1893
1894 conv
1895 Instructs version 3.6 reiserfs software to mount a version 3.5
1896 filesystem, using the 3.6 format for newly created objects. This
1897 filesystem will no longer be compatible with reiserfs 3.5 tools.
1898
1899 hash={rupasov|tea|r5|detect}
1900 Choose which hash function reiserfs will use to find files within
1901 directories.
1902
1903 rupasov
1904 A hash invented by Yury Yu. Rupasov. It is fast and preserves
1905 locality, mapping lexicographically close file names to close
1906 hash values. This option should not be used, as it causes a
1907 high probability of hash collisions.
1908
1909 tea
1910 A Davis-Meyer function implemented by Jeremy Fitzhardinge. It
1911 uses hash permuting bits in the name. It gets high randomness
1912 and, therefore, low probability of hash collisions at some CPU
1913 cost. This may be used if EHASHCOLLISION errors are experienced
1914 with the r5 hash.
1915
1916 r5
1917 A modified version of the rupasov hash. It is used by default
1918 and is the best choice unless the filesystem has huge
1919 directories and unusual file-name patterns.
1920
1921 detect
1922 Instructs mount to detect which hash function is in use by
1923 examining the filesystem being mounted, and to write this
1924 information into the reiserfs superblock. This is only useful
1925 on the first mount of an old format filesystem.
1926
1927 hashed_relocation
1928 Tunes the block allocator. This may provide performance
1929 improvements in some situations.
1930
1931 no_unhashed_relocation
1932 Tunes the block allocator. This may provide performance
1933 improvements in some situations.
1934
1935 noborder
1936 Disable the border allocator algorithm invented by Yury Yu.
1937 Rupasov. This may provide performance improvements in some
1938 situations.
1939
1940 nolog
1941 Disable journaling. This will provide slight performance
1942 improvements in some situations at the cost of losing reiserfs’s
1943 fast recovery from crashes. Even with this option turned on,
1944 reiserfs still performs all journaling operations, save for actual
1945 writes into its journaling area. Implementation of nolog is a work
1946 in progress.
1947
1948 notail
1949 By default, reiserfs stores small files and 'file tails' directly
1950 into its tree. This confuses some utilities such as lilo(8). This
1951 option is used to disable packing of files into the tree.
1952
1953 replayonly
1954 Replay the transactions which are in the journal, but do not
1955 actually mount the filesystem. Mainly used by reiserfsck.
1956
1957 resize=number
1958 A remount option which permits online expansion of reiserfs
1959 partitions. Instructs reiserfs to assume that the device has number
1960 blocks. This option is designed for use with devices which are
1961 under logical volume management (LVM). There is a special resizer
1962 utility which can be obtained from
1963 ftp://ftp.namesys.com/pub/reiserfsprogs.
1964
1965 user_xattr
1966 Enable Extended User Attributes. See the attr(1) manual page.
1967
1968 acl
1969 Enable POSIX Access Control Lists. See the acl(5) manual page.
1970
1971 barrier=none / barrier=flush
1972 This disables / enables the use of write barriers in the journaling
1973 code. barrier=none disables, barrier=flush enables (default). This
1974 also requires an IO stack which can support barriers, and if
1975 reiserfs gets an error on a barrier write, it will disable barriers
1976 again with a warning. Write barriers enforce proper on-disk
1977 ordering of journal commits, making volatile disk write caches safe
1978 to use, at some performance penalty. If your disks are
1979 battery-backed in one way or another, disabling barriers may safely
1980 improve performance.
1981
1982 Mount options for ubifs
1983 UBIFS is a flash filesystem which works on top of UBI volumes. Note
1984 that atime is not supported and is always turned off.
1985
1986 The device name may be specified as
1987
1988 ubiX_Y
1989 UBI device number X, volume number Y
1990
1991 ubiY
1992 UBI device number 0, volume number Y
1993
1994 ubiX:NAME
1995 UBI device number X, volume with name NAME
1996
1997 ubi:NAME
1998 UBI device number 0, volume with name NAME
1999
2000 Alternative ! separator may be used instead of :.
2001
2002 The following mount options are available:
2003
2004 bulk_read
2005 Enable bulk-read. VFS read-ahead is disabled because it slows down
2006 the filesystem. Bulk-Read is an internal optimization. Some flashes
2007 may read faster if the data are read at one go, rather than at
2008 several read requests. For example, OneNAND can do
2009 "read-while-load" if it reads more than one NAND page.
2010
2011 no_bulk_read
2012 Do not bulk-read. This is the default.
2013
2014 chk_data_crc
2015 Check data CRC-32 checksums. This is the default.
2016
2017 no_chk_data_crc
2018 Do not check data CRC-32 checksums. With this option, the
2019 filesystem does not check CRC-32 checksum for data, but it does
2020 check it for the internal indexing information. This option only
2021 affects reading, not writing. CRC-32 is always calculated when
2022 writing the data.
2023
2024 compr={none|lzo|zlib}
2025 Select the default compressor which is used when new files are
2026 written. It is still possible to read compressed files if mounted
2027 with the none option.
2028
2029 Mount options for udf
2030 UDF is the "Universal Disk Format" filesystem defined by OSTA, the
2031 Optical Storage Technology Association, and is often used for DVD-ROM,
2032 frequently in the form of a hybrid UDF/ISO-9660 filesystem. It is,
2033 however, perfectly usable by itself on disk drives, flash drives and
2034 other block devices. See also iso9660.
2035
2036 uid=
2037 Make all files in the filesystem belong to the given user.
2038 uid=forget can be specified independently of (or usually in
2039 addition to) uid=<user> and results in UDF not storing uids to the
2040 media. In fact the recorded uid is the 32-bit overflow uid -1 as
2041 defined by the UDF standard. The value is given as either <user>
2042 which is a valid user name or the corresponding decimal user id, or
2043 the special string "forget".
2044
2045 gid=
2046 Make all files in the filesystem belong to the given group.
2047 gid=forget can be specified independently of (or usually in
2048 addition to) gid=<group> and results in UDF not storing gids to the
2049 media. In fact the recorded gid is the 32-bit overflow gid -1 as
2050 defined by the UDF standard. The value is given as either <group>
2051 which is a valid group name or the corresponding decimal group id,
2052 or the special string "forget".
2053
2054 umask=
2055 Mask out the given permissions from all inodes read from the
2056 filesystem. The value is given in octal.
2057
2058 mode=
2059 If mode= is set the permissions of all non-directory inodes read
2060 from the filesystem will be set to the given mode. The value is
2061 given in octal.
2062
2063 dmode=
2064 If dmode= is set the permissions of all directory inodes read from
2065 the filesystem will be set to the given dmode. The value is given
2066 in octal.
2067
2068 bs=
2069 Set the block size. Default value prior to kernel version 2.6.30
2070 was 2048. Since 2.6.30 and prior to 4.11 it was logical device
2071 block size with fallback to 2048. Since 4.11 it is logical block
2072 size with fallback to any valid block size between logical device
2073 block size and 4096.
2074
2075 For other details see the mkudffs(8) 2.0+ manpage, see the
2076 COMPATIBILITY and BLOCK SIZE sections.
2077
2078 unhide
2079 Show otherwise hidden files.
2080
2081 undelete
2082 Show deleted files in lists.
2083
2084 adinicb
2085 Embed data in the inode. (default)
2086
2087 noadinicb
2088 Don’t embed data in the inode.
2089
2090 shortad
2091 Use short UDF address descriptors.
2092
2093 longad
2094 Use long UDF address descriptors. (default)
2095
2096 nostrict
2097 Unset strict conformance.
2098
2099 iocharset=
2100 Set the NLS character set. This requires kernel compiled with
2101 CONFIG_UDF_NLS option.
2102
2103 utf8
2104 Set the UTF-8 character set.
2105
2106 Mount options for debugging and disaster recovery
2107 novrs
2108 Ignore the Volume Recognition Sequence and attempt to mount anyway.
2109
2110 session=
2111 Select the session number for multi-session recorded optical media.
2112 (default= last session)
2113
2114 anchor=
2115 Override standard anchor location. (default= 256)
2116
2117 lastblock=
2118 Set the last block of the filesystem.
2119
2120 Unused historical mount options that may be encountered and should be
2121 removed
2122 uid=ignore
2123 Ignored, use uid=<user> instead.
2124
2125 gid=ignore
2126 Ignored, use gid=<group> instead.
2127
2128 volume=
2129 Unimplemented and ignored.
2130
2131 partition=
2132 Unimplemented and ignored.
2133
2134 fileset=
2135 Unimplemented and ignored.
2136
2137 rootdir=
2138 Unimplemented and ignored.
2139
2140 Mount options for ufs
2141 ufstype=value
2142 UFS is a filesystem widely used in different operating systems. The
2143 problem are differences among implementations. Features of some
2144 implementations are undocumented, so its hard to recognize the type
2145 of ufs automatically. That’s why the user must specify the type of
2146 ufs by mount option. Possible values are:
2147
2148 old
2149 Old format of ufs, this is the default, read only. (Don’t
2150 forget to give the -r option.)
2151
2152 44bsd
2153 For filesystems created by a BSD-like system (NetBSD, FreeBSD,
2154 OpenBSD).
2155
2156 ufs2
2157 Used in FreeBSD 5.x supported as read-write.
2158
2159 5xbsd
2160 Synonym for ufs2.
2161
2162 sun
2163 For filesystems created by SunOS or Solaris on Sparc.
2164
2165 sunx86
2166 For filesystems created by Solaris on x86.
2167
2168 hp
2169 For filesystems created by HP-UX, read-only.
2170
2171 nextstep
2172 For filesystems created by NeXTStep (on NeXT station)
2173 (currently read only).
2174
2175 nextstep-cd
2176 For NextStep CDROMs (block_size == 2048), read-only.
2177
2178 openstep
2179 For filesystems created by OpenStep (currently read only). The
2180 same filesystem type is also used by macOS.
2181
2182 onerror=value
2183 Set behavior on error:
2184
2185 panic
2186 If an error is encountered, cause a kernel panic.
2187
2188 [lock|umount|repair]
2189 These mount options don’t do anything at present; when an error
2190 is encountered only a console message is printed.
2191
2192 Mount options for umsdos
2193 See mount options for msdos. The dotsOK option is explicitly killed by
2194 umsdos.
2195
2196 Mount options for vfat
2197 First of all, the mount options for fat are recognized. The dotsOK
2198 option is explicitly killed by vfat. Furthermore, there are
2199
2200 uni_xlate
2201 Translate unhandled Unicode characters to special escaped
2202 sequences. This lets you backup and restore filenames that are
2203 created with any Unicode characters. Without this option, a '?' is
2204 used when no translation is possible. The escape character is ':'
2205 because it is otherwise invalid on the vfat filesystem. The escape
2206 sequence that gets used, where u is the Unicode character, is: ':',
2207 (u & 0x3f), ((u>>6) & 0x3f), (u>>12).
2208
2209 posix
2210 Allow two files with names that only differ in case. This option is
2211 obsolete.
2212
2213 nonumtail
2214 First try to make a short name without sequence number, before
2215 trying name~num.ext.
2216
2217 utf8
2218 UTF8 is the filesystem safe 8-bit encoding of Unicode that is used
2219 by the console. It can be enabled for the filesystem with this
2220 option or disabled with utf8=0, utf8=no or utf8=false. If uni_xlate
2221 gets set, UTF8 gets disabled.
2222
2223 shortname=mode
2224 Defines the behavior for creation and display of filenames which
2225 fit into 8.3 characters. If a long name for a file exists, it will
2226 always be the preferred one for display. There are four modes:
2227
2228 lower
2229 Force the short name to lower case upon display; store a long
2230 name when the short name is not all upper case.
2231
2232 win95
2233 Force the short name to upper case upon display; store a long
2234 name when the short name is not all upper case.
2235
2236 winnt
2237 Display the short name as is; store a long name when the short
2238 name is not all lower case or all upper case.
2239
2240 mixed
2241 Display the short name as is; store a long name when the short
2242 name is not all upper case. This mode is the default since
2243 Linux 2.6.32.
2244
2245 Mount options for usbfs
2246 devuid=uid and devgid=gid and devmode=mode
2247 Set the owner and group and mode of the device files in the usbfs
2248 filesystem (default: uid=gid=0, mode=0644). The mode is given in
2249 octal.
2250
2251 busuid=uid and busgid=gid and busmode=mode
2252 Set the owner and group and mode of the bus directories in the
2253 usbfs filesystem (default: uid=gid=0, mode=0555). The mode is given
2254 in octal.
2255
2256 listuid=uid and listgid=gid and listmode=mode
2257 Set the owner and group and mode of the file devices (default:
2258 uid=gid=0, mode=0444). The mode is given in octal.
2259
2261 The device-mapper verity target provides read-only transparent
2262 integrity checking of block devices using kernel crypto API. The mount
2263 command can open the dm-verity device and do the integrity verification
2264 before the device filesystem is mounted. Requires libcryptsetup with in
2265 libmount (optionally via dlopen(3)). If libcryptsetup supports
2266 extracting the root hash of an already mounted device, existing devices
2267 will be automatically reused in case of a match. Mount options for
2268 dm-verity:
2269
2270 verity.hashdevice=path
2271 Path to the hash tree device associated with the source volume to
2272 pass to dm-verity.
2273
2274 verity.roothash=hex
2275 Hex-encoded hash of the root of verity.hashdevice. Mutually
2276 exclusive with verity.roothashfile.
2277
2278 verity.roothashfile=path
2279 Path to file containing the hex-encoded hash of the root of
2280 verity.hashdevice. Mutually exclusive with verity.roothash.
2281
2282 verity.hashoffset=offset
2283 If the hash tree device is embedded in the source volume, offset
2284 (default: 0) is used by dm-verity to get to the tree.
2285
2286 verity.fecdevice=path
2287 Path to the Forward Error Correction (FEC) device associated with
2288 the source volume to pass to dm-verity. Optional. Requires kernel
2289 built with CONFIG_DM_VERITY_FEC.
2290
2291 verity.fecoffset=offset
2292 If the FEC device is embedded in the source volume, offset
2293 (default: 0) is used by dm-verity to get to the FEC area. Optional.
2294
2295 verity.fecroots=value
2296 Parity bytes for FEC (default: 2). Optional.
2297
2298 verity.roothashsig=path
2299 Path to pkcs7(1ssl) signature of root hash hex string. Requires
2300 crypt_activate_by_signed_key() from cryptsetup and kernel built
2301 with CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG. For device reuse,
2302 signatures have to be either used by all mounts of a device or by
2303 none. Optional.
2304
2305 verity.oncorruption=ignore|restart|panic
2306 Instruct the kernel to ignore, reboot or panic when corruption is
2307 detected. By default the I/O operation simply fails. Requires Linux
2308 4.1 or newer, and libcrypsetup 2.3.4 or newer. Optional.
2309
2310 Supported since util-linux v2.35.
2311
2312 For example commands:
2313
2314 mksquashfs /etc /tmp/etc.squashfs
2315 dd if=/dev/zero of=/tmp/etc.hash bs=1M count=10
2316 veritysetup format /tmp/etc.squashfs /tmp/etc.hash
2317 openssl smime -sign -in <hash> -nocerts -inkey private.key \
2318 -signer private.crt -noattr -binary -outform der -out /tmp/etc.roothash.p7s
2319 mount -o verity.hashdevice=/tmp/etc.hash,verity.roothash=<hash>,\
2320 verity.roothashsig=/tmp/etc.roothash.p7s /tmp/etc.squashfs /mnt
2321
2322 create squashfs image from /etc directory, verity hash device and mount
2323 verified filesystem image to /mnt. The kernel will verify that the root
2324 hash is signed by a key from the kernel keyring if roothashsig is used.
2325
2327 One further possible type is a mount via the loop device. For example,
2328 the command
2329
2330 mount /tmp/disk.img /mnt -t vfat -o loop=/dev/loop3
2331
2332 will set up the loop device /dev/loop3 to correspond to the file
2333 /tmp/disk.img, and then mount this device on /mnt.
2334
2335 If no explicit loop device is mentioned (but just an option '-o loop'
2336 is given), then mount will try to find some unused loop device and use
2337 that, for example
2338
2339 mount /tmp/disk.img /mnt -o loop
2340
2341 The mount command automatically creates a loop device from a regular
2342 file if a filesystem type is not specified or the filesystem is known
2343 for libblkid, for example:
2344
2345 mount /tmp/disk.img /mnt
2346
2347 mount -t ext4 /tmp/disk.img /mnt
2348
2349 This type of mount knows about three options, namely loop, offset and
2350 sizelimit, that are really options to losetup(8). (These options can be
2351 used in addition to those specific to the filesystem type.)
2352
2353 Since Linux 2.6.25 auto-destruction of loop devices is supported,
2354 meaning that any loop device allocated by mount will be freed by umount
2355 independently of /etc/mtab.
2356
2357 You can also free a loop device by hand, using losetup -d or umount -d.
2358
2359 Since util-linux v2.29, mount re-uses the loop device rather than
2360 initializing a new device if the same backing file is already used for
2361 some loop device with the same offset and sizelimit. This is necessary
2362 to avoid a filesystem corruption.
2363
2365 mount has the following exit status values (the bits can be ORed):
2366
2367 0
2368 success
2369
2370 1
2371 incorrect invocation or permissions
2372
2373 2
2374 system error (out of memory, cannot fork, no more loop devices)
2375
2376 4
2377 internal mount bug
2378
2379 8
2380 user interrupt
2381
2382 16
2383 problems writing or locking /etc/mtab
2384
2385 32
2386 mount failure
2387
2388 64
2389 some mount succeeded
2390
2391 The command mount -a returns 0 (all succeeded), 32 (all failed), or
2392 64 (some failed, some succeeded).
2393
2395 The syntax of external mount helpers is:
2396
2397 /sbin/mount.suffix spec dir [-sfnv] [-N namespace] [-o options] [-t
2398 type.subtype]
2399
2400 where the suffix is the filesystem type and the -sfnvoN options have
2401 the same meaning as the normal mount options. The -t option is used for
2402 filesystems with subtypes support (for example /sbin/mount.fuse -t
2403 fuse.sshfs).
2404
2405 The command mount does not pass the mount options unbindable,
2406 runbindable, private, rprivate, slave, rslave, shared, rshared, auto,
2407 noauto, comment, x-*, loop, offset and sizelimit to the mount.<suffix>
2408 helpers. All other options are used in a comma-separated list as an
2409 argument to the -o option.
2410
2412 LIBMOUNT_FORCE_MOUNT2={always|never|auto}
2413 force to use classic mount(2) system call (requires support for new
2414 file descriptors based mount API). The default is auto; in this
2415 case, libmount tries to be smart and use classic mount(2) only for
2416 well-known issues. If the new mount API is unavailable, libmount
2417 can still use traditional mount(2), although LIBMOUNT_FORCE_MOUNT2
2418 is set to never.
2419
2420 LIBMOUNT_FSTAB=<path>
2421 overrides the default location of the fstab file (ignored for suid)
2422
2423 LIBMOUNT_DEBUG=all
2424 enables libmount debug output
2425
2426 LIBBLKID_DEBUG=all
2427 enables libblkid debug output
2428
2429 LOOPDEV_DEBUG=all
2430 enables loop device setup debug output
2431
2433 See also "The files /etc/fstab, /etc/mtab and /proc/mounts" section
2434 above.
2435
2436 /etc/fstab
2437 filesystem table
2438
2439 /run/mount
2440 libmount private runtime directory
2441
2442 /etc/mtab
2443 table of mounted filesystems or symlink to /proc/mounts
2444
2445 /etc/mtab~
2446 lock file (unused on systems with mtab symlink)
2447
2448 /etc/mtab.tmp
2449 temporary file (unused on systems with mtab symlink)
2450
2451 /etc/filesystems
2452 a list of filesystem types to try
2453
2455 A mount command existed in Version 5 AT&T UNIX.
2456
2458 It is possible for a corrupted filesystem to cause a crash.
2459
2460 Some Linux filesystems don’t support -o sync and -o dirsync (the ext2,
2461 ext3, ext4, fat and vfat filesystems do support synchronous updates (a
2462 la BSD) when mounted with the sync option).
2463
2464 The -o remount may not be able to change mount parameters (all
2465 ext2fs-specific parameters, except sb, are changeable with a remount,
2466 for example, but you can’t change gid or umask for the fatfs).
2467
2468 It is possible that the files /etc/mtab and /proc/mounts don’t match on
2469 systems with a regular mtab file. The first file is based only on the
2470 mount command options, but the content of the second file also depends
2471 on the kernel and others settings (e.g. on a remote NFS server — in
2472 certain cases the mount command may report unreliable information about
2473 an NFS mount point and the /proc/mount file usually contains more
2474 reliable information.) This is another reason to replace the mtab file
2475 with a symlink to the /proc/mounts file.
2476
2477 Checking files on NFS filesystems referenced by file descriptors (i.e.
2478 the fcntl and ioctl families of functions) may lead to inconsistent
2479 results due to the lack of a consistency check in the kernel even if
2480 the noac mount option is used.
2481
2482 The loop option with the offset or sizelimit options used may fail when
2483 using older kernels if the mount command can’t confirm that the size of
2484 the block device has been configured as requested. This situation can
2485 be worked around by using the losetup(8) command manually before
2486 calling mount with the configured loop device.
2487
2489 Karel Zak <kzak@redhat.com>
2490
2492 mount(2), umount(2), filesystems(5), fstab(5), nfs(5), xfs(5),
2493 mount_namespaces(7), xattr(7), e2label(8), findmnt(8), losetup(8),
2494 lsblk(8), mke2fs(8), mountd(8), nfsd(8), swapon(8), tune2fs(8),
2495 umount(8), xfs_admin(8)
2496
2498 For bug reports, use the issue tracker at
2499 https://github.com/util-linux/util-linux/issues.
2500
2502 The mount command is part of the util-linux package which can be
2503 downloaded from Linux Kernel Archive
2504 <https://www.kernel.org/pub/linux/utils/util-linux/>.
2505
2506
2507
2508util-linux 2.39.2 2023-08-17 MOUNT(8)