Home | History | Annotate | only in /src/sbin/mount
History log of /src/sbin/mount
RevisionDateAuthorComments
 1.32 23-Jan-2016  christos Define _KERNTYPES for things that need it.
 1.31 07-Apr-2012  christos add missing DPADD
 1.30 07-Apr-2012  christos Accept NAME=label for special so that we can wire down our wedges.
 1.29 19-Aug-2004  christos branches: 1.29.52;
Remove special case
 1.28 22-Mar-2003  jdolecek move getmntopts(3) to libutil, build and install also it's manpage
bump libutil minor
adjust individual mount_*/Makefile to use libutil getmntopts(3)
 1.27 19-Jan-2003  tsutsui libutil (which was added for MNT_GETARGS) is no longer needed.
 1.26 19-Jan-2003  jdolecek do not link all mount programs into single image; the total size difference
isn't really that huge now that these are compiled as dynamic
 1.25 01-Oct-2002  jdolecek update incorrect comment - getmntopts.c _is_ used by mount(8)
 1.24 21-Sep-2002  christos MNT_GETARGS support
 1.23 01-Sep-2002  taca Remove extra tab in really an empty line.
 1.22 23-Aug-2002  lukem if RESCUEDIR is defined, set _PATH_RESCUE to that
 1.21 19-Aug-2002  lukem Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../some/path
 1.20 20-Feb-2001  cgd use getprogname()
 1.19 04-Feb-2001  christos fix nested extern
 1.18 16-Jan-2001  cgd generated source should include stdlib.h and string.h for prototypes.
 1.17 02-Nov-2000  jdolecek also install mount_ufs manpage links
Fixes bin/11412 by Andrew Brown.
 1.16 01-Nov-2000  veego Add a 'CLEANFILES+= checkname.c' to remove that file during a make clean.
 1.15 30-Oct-2000  jdolecek mount(8) now includes code for all mount_*(8) but mount_portal(8) and
mount_mfs(8); the mount_*(8) are hardlinked to mount (appropriate mount routine
is called depending on program name) - this saves approx. 1.7MB of /sbin
space
mount.c: make all local symbols static
 1.14 16-Sep-1997  lukem branches: 1.14.6;
resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.13 15-Sep-1997  lukem define WARNS?=1 for all of sbin/*
 1.12 01-Aug-1997  jtk don't need getmntopts.c as part of mount(8)
 1.11 04-Jul-1997  christos Fix warnings.
 1.10 12-Jul-1995  cgd remove FFS mounting code from mount(8); there are now _no_ 'internal' mount
types. when using mount(8) with '-a', do _NOT_ remount file systems
that have been mounted once already. (This cannot be 100% precisely
determined (thanks to mfs, union fs, and similar file systems which
don't use a 'real' mounted-from node), and changed options cannot be updated
with mount -a. however, options wouldn't be updated with the old mount -a
anyway, and this solves several annoyances.
 1.9 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.8 22-Dec-1994  cgd specify man pages the new way.
 1.7 08-Jun-1994  mycroft Update from 4.4-Lite, with local changes.
 1.6 08-Oct-1993  cgd there is no librpc any more
 1.5 01-Aug-1993  mycroft Add RCS identifiers.
 1.4 12-Apr-1993  cgd fixed NFSCLIENT problem.
 1.3 23-Mar-1993  cgd changed "Id" to "Header" for rcsids
 1.2 22-Mar-1993  cgd added rcs ids to all files
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.3 16-Sep-1997  lukem imported from lite-2
 1.1.1.2 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.14.6.1 19-Oct-1999  fvdl Add CPPFLAGS+=-I${.CURDIR}/../../sys for convenience.
 1.29.52.1 17-Apr-2012  yamt sync with head
 1.10 19-Jun-2009  stacktic Fixed a_mask to actually use its argument
 1.9 05-Aug-2008  pooka Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.8 28-Apr-2008  martin branches: 1.8.2;
Remove clause 3 and 4 from TNF licenses
 1.7 10-Mar-2007  hubertf branches: 1.7.12; 1.7.14;
- removes unused ctype.h header
- correct comment in mount_nfs/getnfsargs.c: s/Nead/Need/

From: Slava Semushin <php-coder@altlinux.ru>
 1.6 17-Jan-2007  hubertf Remove more duplicate #includes,
from Slava Semushin <slava.semushin@gmail.com>
 1.5 02-Feb-2006  christos expose a_num.
 1.4 03-Mar-2005  dsl Simplify a_uid and a_gid, and fix a_mask to actually use its argument
(fortunately it is always called with 'optarg')
Saves a few bytes from mount_msdos in rescue_tiny.
 1.3 29-Oct-2004  dsl Add (unsigned char) cast to ctype function
 1.2 30-Oct-2000  jdolecek fix copyright (damned copy&paste)
 1.1 30-Oct-2000  jdolecek make the code includable into other programs:
* make static all symbols which do not need to be exported
* rename main() to mount_FOO()
* new main() now just calls mount_FOO(), main() is only compiled in if
MOUNT_NOMAIN is not defined
* a_gid(), a_uid() and a_mask() were put into ../mount/fattr.[ch], local
versions removed
 1.7.14.1 18-May-2008  yamt sync with head.
 1.7.12.2 28-Sep-2008  mjf Sync with HEAD.
 1.7.12.1 02-Jun-2008  mjf Sync with HEAD.
 1.8.2.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.6 05-Aug-2008  pooka Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.5 28-Apr-2008  martin branches: 1.5.2;
Remove clause 3 and 4 from TNF licenses
 1.4 02-Feb-2006  christos branches: 1.4.20; 1.4.22;
expose a_num.
 1.3 03-Mar-2005  dsl Simplify a_uid and a_gid, and fix a_mask to actually use its argument
(fortunately it is always called with 'optarg')
Saves a few bytes from mount_msdos in rescue_tiny.
 1.2 05-Feb-2005  xtraeme Kill __P(), use ANSI function declarations.
 1.1 30-Oct-2000  jdolecek make the code includable into other programs:
* make static all symbols which do not need to be exported
* rename main() to mount_FOO()
* new main() now just calls mount_FOO(), main() is only compiled in if
MOUNT_NOMAIN is not defined
* a_gid(), a_uid() and a_mask() were put into ../mount/fattr.[ch], local
versions removed
 1.4.22.1 18-May-2008  yamt sync with head.
 1.4.20.2 28-Sep-2008  mjf Sync with HEAD.
 1.4.20.1 02-Jun-2008  mjf Sync with HEAD.
 1.5.2.1 07-Sep-2008  wrstuden Delete a bunch of things that are now gone in head.
 1.7 22-Mar-2003  jdolecek move getmntopts(3) to libutil, build and install also it's manpage
bump libutil minor
adjust individual mount_*/Makefile to use libutil getmntopts(3)
 1.6 08-Feb-2002  ross Generate <>& symbolically. I'm avoiding .../dist/... directories for now.
 1.5 16-Nov-2001  wiz Whitespace nits
 1.4 05-Jun-2001  wiz Drop arguments of .Os.
 1.3 16-Sep-1997  lukem resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.2 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.1 08-Jun-1994  mycroft branches: 1.1.1;
Update from 4.4-Lite, with local changes.
 1.1.1.2 16-Sep-1997  lukem imported from lite-2
 1.1.1.1 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.7 22-Mar-2003  jdolecek move getmntopts(3) to libutil, build and install also it's manpage
bump libutil minor
adjust individual mount_*/Makefile to use libutil getmntopts(3)
 1.6 09-Nov-1999  drochner Since our gcc doesn't warn about NULL format strings anymore, we can
fix the incorrect err(1, "%s", "") et al.
Closes PR bin/7592 by cgd.
 1.5 16-Sep-1997  lukem branches: 1.5.10;
resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.4 04-Jul-1997  christos Fix warnings.
 1.3 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.2 24-Jun-1994  deraadt fix quotas
 1.1 08-Jun-1994  mycroft branches: 1.1.1;
Update from 4.4-Lite, with local changes.
 1.1.1.2 16-Sep-1997  lukem imported from lite-2
 1.1.1.1 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.5.10.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.12 22-Mar-2003  jdolecek move getmntopts(3) to libutil, build and install also it's manpage
bump libutil minor
adjust individual mount_*/Makefile to use libutil getmntopts(3)
 1.11 07-Nov-2002  christos PR/16688: Robert Elz: No way exists to use MNT_IGNORE (custom C code excepted)
 1.10 21-Sep-2002  christos MNT_GETARGS support
 1.9 15-Jun-2000  fvdl Enable and document the -o softdep option.
 1.8 01-Dec-1998  kenh branches: 1.8.10;
Add support for a new flag: "nodevmtime". This sets the MNT_NODEVMTIME mount
flag.
 1.7 30-Oct-1997  enami Conditionalize the recognition of symbolic link permission by
per fs mount option `symperm'.
 1.6 16-Sep-1997  lukem branches: 1.6.2;
resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.5 30-Jan-1997  tls add support for noatime mount flag
 1.4 23-Oct-1996  cgd recognize the 'nocoredump' mount option as a standard option (supported by
all file system types).
 1.3 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.2 24-Jun-1994  deraadt fix quotas
 1.1 08-Jun-1994  mycroft branches: 1.1.1;
Update from 4.4-Lite, with local changes.
 1.1.1.2 16-Sep-1997  lukem imported from lite-2
 1.1.1.1 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.6.2.1 31-Oct-1997  mellon Pull rev 1.7 up from trunk (enami)
 1.8.10.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.94 25-Sep-2025  christos PR/59669: rl / Hetzer: document posix1eacls
 1.93 01-Jul-2025  kre PR bin/59494

Cause "mount -v [spec] filesystem" to indicate only what was
mounted (and where), to obtain all the rest of the data that
used to be printed, -v must be given twice.

Implemented differently from the patch given in the PR from
greywolf, but the same idea.

While here, avoid the -d option, after indicating what mount
command would have been run, but wasn't, going on to attempt
to report statistics on the never mounted filesystem, and
instead getting those from the intended mount point.

Update the man page to match.
 1.92 03-Apr-2024  wiz branches: 1.92.2;
new sentence, new line
 1.91 03-Apr-2024  charlotte mount(8): Mention the ability to refer to dk(4) wedges in the manpage
 1.90 10-Jul-2022  snj drop reference to smbfs, which was removed in 2020.

while here, s/file-system/file system/
 1.89 04-Jun-2021  simonb Remove the warning about autoselecting nfs based on : or @.

Ok jmcneill@, mrg@.
 1.88 24-Oct-2020  nia branches: 1.88.4;
file systems that are used as what spools?
 1.87 09-Jan-2018  wiz Sort SEE ALSO.
 1.86 09-Jan-2018  christos Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet
 1.85 20-Nov-2017  wiz Remove Tn. Remove undefined .Sp. Use tagged list instead of hanging one
with .brs.
 1.84 20-Nov-2017  christos Clarify the program naming convention, and use consistently <fstype> instead
of XXX.
 1.83 22-Mar-2017  jdolecek expand a little the explanation about discard

describe behaviour of combination of log+async (i.e. same as just log)
 1.82 10-Nov-2016  jdolecek branches: 1.82.2;
stress more that discard is experimental, and explain why; also note that
it's not compatible with log
 1.81 12-Sep-2016  sevan mount appeared in V1
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V1/man/man1/mount.1
Replace contraction.
Bump date.
 1.80 06-Dec-2014  mbalmer branches: 1.80.2;
Add reference to mount_chfs, bump date.
 1.79 31-Oct-2013  apb Add a reference to secmodel_extensions(9), to make it a little easier to
figure out how to enable mounts for unprivileged users. (Why don't we
just explain vfs.generic.usermount in the mount(8) man page?)

Also add another example of different ways in which the "special"
argument is interpreted by different file systems: mount_tmpfs(8)
ignores it.
 1.78 19-Oct-2012  drochner Implement experimental support to pass notifications that a file
was deleted from the filesystem to the disk driver, commonly
known as "discard" or "trim".
fs/driver support is in ffs and ata wd for now.
This is what was posted here:
http://mail-index.netbsd.org/tech-kern/2012/02/28/msg012813.html
with minor cleanup, and the global switch replaced by a mount option.
 1.77 03-Oct-2012  wiz - Improve wording;
- remove superfluous `.Pp' macro (fixes mandoc(1) warning).

From Bug Hunting.
 1.76 23-Jun-2012  wiz branches: 1.76.2;
Bump date for previous.
 1.75 23-Jun-2012  jdf Clarify use of the union option for mount, as proposed in PR 45919.
Text proposed by apb.
 1.74 22-Jul-2011  dholland branches: 1.74.2;
Improve previous; thanks to tsutsui-san for reminding me of the proper
reference. PR 45166
 1.73 22-Jul-2011  dholland Clarify UFS2 superblock format stuff. Bump date.
 1.72 17-Jun-2011  wiz New sentence, new line; fix wording; bump date.
 1.71 17-Jun-2011  manu Add mount -o extattr option to enable extended attributs (corrently only
for UFS1).
Remove kernel option for EA backing store autocreation and do it by
default. Add a sysctl so that autocreated attriutr size can be modified.
 1.70 21-Nov-2010  pooka branches: 1.70.4;
xref rump_smbfs
 1.69 03-Oct-2009  wiz branches: 1.69.2;
Drop trailing whitespace.
 1.68 02-Oct-2009  elad Centralize documentation about exported sysctl variables in the relevant
secmodel's man-page.
 1.67 23-Feb-2009  wiz Fix typo, and restore line that was lost in previous.
 1.66 22-Feb-2009  ad PR kern/26878 FFSv2 + softdep = livelock (no free ram)
PR kern/16942 panic with softdep and quotas
PR kern/19565 panic: softdep_write_inodeblock: indirect pointer #1 mismatch
PR kern/26274 softdep panic: allocdirect_merge: ...
PR kern/26374 Long delay before non-root users can write to softdep partitions
PR kern/28621 1.6.x "vp != NULL" panic in ffs_softdep.c:4653 while unmounting a softdep (+quota) filesystem
PR kern/29513 FFS+Softdep panic with unfsck-able file-corruption
PR kern/31544 The ffs softdep code appears to fail to write dirty bits to disk
PR kern/31981 stopping scsi disk can cause panic (softdep)
PR kern/32116 kernel panic in softdep (assertion failure)
PR kern/32532 softdep_trackbufs deadlock
PR kern/37191 softdep: locking against myself
PR kern/40474 Kernel panic after remounting raid root with softdep

Retire softdep, pass 2. As discussed and later formally announced on the
mailing lists.
 1.65 20-Jan-2009  apb branches: 1.65.2;
* Say that type "nfs" is inferred if the path contains a
":" or "@". (Amazingly, this was not documented before).
* Say that the "nfs" inference is deprecated. (It was deprecated in
revision 1.87 of mount.c, dated 2009-01-11.)
* Add "-t nfs" in an example, so as not to rely on the automatic
inference of nfs when the path contains a colon.
* Try to improve the description of how the arguments are interpreted.
 1.64 11-Jan-2009  wiz New sentence, new line.
 1.63 11-Jan-2009  pooka Support mount -o rump, which uses the rump server instead of using
the kernel service. E.g. "mount -t efs -o rump /dev/sgidev /mnt"
runs effectively "rump_efs /dev/sgidev /mnt".
 1.62 13-Aug-2008  martti branches: 1.62.2;
s/If/It/
 1.61 04-Aug-2008  wiz Add missing word and bump date for previous.
 1.60 04-Aug-2008  simonb Mention "-o log".
 1.59 06-May-2008  xtraeme branches: 1.59.2;
Xref mount_tmpfs(8).
 1.58 01-Aug-2007  pooka branches: 1.58.10; 1.58.12; 1.58.14;
Explain that nosuid,nodev is also needed for non-privileged mounts.
 1.57 06-Jan-2007  elad Mention potential reasons for EPERM.
Requested by Anon Ymous.
 1.56 31-Oct-2006  mjf branches: 1.56.2; 1.56.4;
Revert the changes I introduced trying to solve tmpfs' NFS export problem.
Requested by yamt@
 1.55 24-Oct-2006  mjf Add support to allow a file system to not permit being exported over NFS.

Approved by elad@ and wrstuden@
 1.54 27-Sep-2006  wiz End sentence with a dot.
 1.53 25-Sep-2006  elad Add a DIAGNOSTICS section, specifically to address the "Operation not
supported by device" error. Reference options(4). Bump date.
 1.52 12-Feb-2006  chs convert "magiclinks" from a per-fs mount option to a system-wide sysctl.
as discussed on tech-kern quite some time ago.
 1.51 03-Feb-2006  riz Bump date, use "file system" consistently, no hyphen in "soft
dependencies", and sort options under -o.
 1.50 03-Feb-2006  riz Note that softdep and async options can't be used together. From
Dheeraj S in PR#32211, wording and formatting changes by me.
 1.49 02-Feb-2006  reinoud Crosslink mount(8) with mount_udf(8)
 1.48 13-Jan-2006  elad document port option; prompted by wiz@ :)
 1.47 23-Jun-2005  thorpej Implement expansion of special "magic" strings in symlinks into
system-specific values. Submitted by Chris Demetriou in Nov 1995 (!)
in PR kern/1781, modified only slighly by me.

This is enabled on a per-mount basis with the MNT_MAGICLINKS mount
flag. It can be enabled at mountroot() time by building the kernel
with the ROOTFS_MAGICLINKS option.

The following magic strings are supported by the implementation:

@machine value of MACHINE for the system
@machine_arch value of MACHINE_ARCH for the system
@hostname the system host name, as set with sethostname()
@domainname the system domain name, as set with setdomainname()
@kernel_ident the kernel config file name
@osrelease the releaes number of the OS
@ostype the name of the OS (always "NetBSD" for NetBSD)

Example usage:

mkdir /arch/i386/bin
mkdir /arch/sparc/bin
ln -s /arch/@machine_arch/bin /bin
 1.46 08-Dec-2004  snj branches: 1.46.2;
New sentence, new line, Xref fsck(8), use Dq.
 1.45 07-Dec-2004  jdolecek document reload option, description shamelessly stolen off ffs_reload()
comment
 1.44 27-Mar-2004  snj Bump date for last.
 1.43 27-Mar-2004  cgd Recognize 'from_mount' as the device, which is especially useful when
putting root on NFS. (From my PR, 20305.)
 1.42 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22308, verified by myself.
 1.41 25-Feb-2003  wiz .Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.
 1.40 21-Dec-2002  wiz removable with only two es, from Adrian Mrva.
 1.39 07-Nov-2002  wiz Sort SEE ALSO.
 1.38 07-Nov-2002  christos PR/16688: Robert Elz: No way exists to use MNT_IGNORE (custom C code excepted)
 1.37 01-Oct-2002  wiz Use .Fl t instead of \fI-t\fP.
 1.36 01-Oct-2002  wiz New sentence, new line. By Robert Elz with minimal fixes.
 1.35 21-Sep-2002  christos MNT_GETARGS support
 1.34 21-May-2002  lukem Improve mount_mfs examples. Inspired by [misc/16193] from
Brian A. Seklecki <lavalamp@hurt.spiritual-machines.org>
 1.33 16-Nov-2001  wiz Drop empty lines and an unnecessary .Pp, sort sections.
 1.32 12-Sep-2001  gmcgarry Prominently provide explanation of who is allowed to mount file
systems.
 1.31 05-Jun-2001  wiz Drop arguments of .Os.
 1.30 18-Sep-2000  abs If device and mountpoint are given without -t, and without a : in the
device, check the disklabel for filesystem type. Fall back to ffs as ever.
 1.29 30-Jul-2000  jhawk Xr for mount_overlay(8)
 1.28 07-Jul-2000  he Make sure .Dl has the line to be shown as argument (on same line).
 1.27 07-Jul-2000  fair Add example text to answer PR 10232.
 1.26 15-Jun-2000  fvdl branches: 1.26.2;
Enable and document the -o softdep option.
 1.25 08-Aug-1999  jdolecek branches: 1.25.8;
xref mount_ntfs(8) in SEE ALSO
 1.24 01-Dec-1998  kenh branches: 1.24.2;
Add support for a new flag: "nodevmtime". This sets the MNT_NODEVMTIME mount
flag.
 1.23 03-Oct-1998  hubertf add mount_filecore to "see also"-list
 1.22 16-Sep-1998  mycroft Word the comments about `async' a bit more strongly.
 1.21 14-Sep-1998  ross Document noasync and nosync.
Clarify the meaning of sync.
Run all the -o keywords through the Cm (keyword emphasis) macro.
 1.20 29-Apr-1998  fair fix bad .Xr references
 1.19 19-Nov-1997  drochner Add a clarification how the missing data are looked up if either
mount source or target are omitted. Adresses PR 3240.
XXX This is not the complete truth. Things change with the -u
option. Should be fixed in "mount.c".
 1.18 30-Oct-1997  enami Conditionalize the recognition of symbolic link permission by
per fs mount option `symperm'.
 1.17 20-Oct-1997  enami branches: 1.17.2;
Fix .Nm usage.
 1.16 16-Sep-1997  lukem resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.15 15-Sep-1997  lukem * getopt returns -1 not EOF
* use .Nm correctly
 1.14 10-Mar-1997  mikel add support for MNT_NOATIME; from Lennart Augustsson in PR bin/3304.
 1.13 23-Oct-1996  cgd document the 'nocoredump' mount option, which sets the MNT_NOCOREDUMP
mount flag, disabling core dumps on the file system.
 1.12 22-May-1996  mrg fdesc file system does not allow files created in it. pr#941
 1.11 12-Jul-1995  cgd update docs to match the code.
 1.10 12-Jul-1995  cgd remove FFS mounting code from mount(8); there are now _no_ 'internal' mount
types. when using mount(8) with '-a', do _NOT_ remount file systems
that have been mounted once already. (This cannot be 100% precisely
determined (thanks to mfs, union fs, and similar file systems which
don't use a 'real' mounted-from node), and changed options cannot be updated
with mount -a. however, options wouldn't be updated with the old mount -a
anyway, and this solves several annoyances.
 1.9 30-Apr-1995  briggs Remove xref to mount_lofs and add xref to mount_ados and mount_msdos.
 1.8 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.7 08-Jun-1994  mycroft Update from 4.4-Lite, with local changes.
 1.6 05-Jan-1994  cgd update for new (actually old... *sigh*) mount flags
 1.5 01-Aug-1993  mycroft Add RCS indentifiers.
 1.4 28-Jul-1993  cgd incorporate changes from 0-9-base to 0-9-ALPHA
 1.3 23-Mar-1993  cgd branches: 1.3.2;
changed "Id" to "Header" for rcsids
 1.2 22-Mar-1993  cgd added rcs ids to all files
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.3 16-Sep-1997  lukem imported from lite-2
 1.1.1.2 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.3.2.1 20-Jul-1993  cgd tell people to also see mount_XXX(8). if they read the previous
section of the man page, they'll understand that XXX expands into the
external FS name.
 1.17.2.2 19-Nov-1997  mellon Pull rev 1.19 up from trunk (drochner)
 1.17.2.1 31-Oct-1997  mellon Pull rev 1.18 up from trunk (enami)
 1.24.2.1 07-Jul-2000  he Pull up revisions 1.27-1.28 (requested by fair):
Add an EXAMPLES section to the mount(8) manual page.
Fixes PR#10232.
 1.25.8.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.26.2.2 26-Feb-2001  he Pull up revision 1.30 (requested by abs):
If both special and node are given (but no type), the disklabel
is checked for the file system type before falling back to ffs.
 1.26.2.1 04-Sep-2000  jhawk Pullup revs 1.27-1.29, requested by fair, he, and jhawk:
>----------------------------
>revision 1.29
>date: 2000/07/30 15:17:14; author: jhawk; state: Exp; lines: +2 -1
>Xr for mount_overlay(8)
>----------------------------
>revision 1.28
>date: 2000/07/07 17:58:37; author: he; state: Exp; lines: +2 -3
>Make sure .Dl has the line to be shown as argument (on same line).
>----------------------------
>revision 1.27
>date: 2000/07/07 09:25:36; author: fair; state: Exp; lines: +40 -1
>Add example text to answer PR 10232.
>----------------------------
 1.46.2.3 07-Oct-2006  ghen Pull up following revision(s) (requested by tron in ticket #1540):
sbin/mount/mount.8: revision 1.53 via patch
sbin/mount/mount.8: revision 1.54
Add a DIAGNOSTICS section, specifically to address the "Operation not
supported by device" error. Reference options(4). Bump date.
End sentence with a dot.
 1.46.2.2 20-Jan-2006  riz Back out tickets 490, 559, and 560, which added "magic symlinks", at
the request of chs@ (thorpej@ concurs), as there is consensus that
this should be changed to a system-wide tunable, rather than a mount
option.
 1.46.2.1 29-Dec-2005  riz Pull up following revision(s) (requested by thorpej in ticket #490):
lib/libc/sys/mount.2: revision 1.33
sys/sys/systm.h: revision 1.179
sys/sys/fstypes.h: revision 1.4
include/mntopts.h: revision 1.6
sys/conf/newvers.sh: revision 1.41
sys/kern/vfs_syscalls.c: revision 1.223
sys/conf/files: revision 1.720
sys/kern/vfs_lookup.c: revision 1.61
share/man/man7/symlink.7: revision 1.7
sbin/mount/mount.8: revision 1.47
sys/kern/init_main.c: revision 1.248 via patch
share/man/man4/options.4: revision 1.280 via patch
Implement expansion of special "magic" strings in symlinks into
system-specific values. Submitted by Chris Demetriou in Nov 1995 (!)
in PR kern/1781, modified only slighly by me.
This is enabled on a per-mount basis with the MNT_MAGICLINKS mount
flag. It can be enabled at mountroot() time by building the kernel
with the ROOTFS_MAGICLINKS option.
The following magic strings are supported by the implementation:
@machine value of MACHINE for the system
@machine_arch value of MACHINE_ARCH for the system
@hostname the system host name, as set with sethostname()
@domainname the system domain name, as set with setdomainname()
@kernel_ident the kernel config file name
@osrelease the releaes number of the OS
@ostype the name of the OS (always "NetBSD" for NetBSD)
Example usage:
mkdir /arch/i386/bin
mkdir /arch/sparc/bin
ln -s /arch/@machine_arch/bin /bin
 1.56.4.1 03-Sep-2007  wrstuden Sync w/ NetBSD-4-RC_1
 1.56.2.1 01-Aug-2007  liamjfoy Pull up following revision(s) (requested by pooka in ticket #806):
sbin/mount/mount.8: revision 1.58
Explain that nosuid,nodev is also needed for non-privileged mounts.
 1.58.14.2 01-Aug-2007  pooka Explain that nosuid,nodev is also needed for non-privileged mounts.
 1.58.14.1 01-Aug-2007  pooka file mount.8 was added on branch matt-mips64 on 2007-08-01 08:51:25 +0000
 1.58.12.1 18-May-2008  yamt sync with head.
 1.58.10.3 17-Jan-2009  mjf Sync with HEAD.
 1.58.10.2 28-Sep-2008  mjf Sync with HEAD.
 1.58.10.1 02-Jun-2008  mjf Sync with HEAD.
 1.59.2.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.62.2.4 17-Mar-2012  bouyer Pull up following revision(s) (requested by dholland in ticket #1743):
sbin/mount/mount.8: revision 1.73
sbin/mount/mount.8: revision 1.74
Clarify UFS2 superblock format stuff. Bump date.
Improve previous; thanks to tsutsui-san for reminding me of the proper
reference. PR 45166
 1.62.2.3 22-Jan-2009  snj branches: 1.62.2.3.2; 1.62.2.3.6;
Pull up following revision(s) (requested by apb in ticket #303):
sbin/mount/mount.8: revision 1.65
* Say that type "nfs" is inferred if the path contains a
":" or "@". (Amazingly, this was not documented before).
* Say that the "nfs" inference is deprecated. (It was deprecated in
revision 1.87 of mount.c, dated 2009-01-11.)
* Add "-t nfs" in an example, so as not to rely on the automatic
inference of nfs when the path contains a colon.
* Try to improve the description of how the arguments are interpreted.
 1.62.2.2 22-Jan-2009  snj Pull up following revision(s) (requested by pooka in ticket #288):
sbin/mount/mount.8: revision 1.64
New sentence, new line.
 1.62.2.1 22-Jan-2009  snj Pull up following revision(s) (requested by pooka in ticket #288):
include/mntopts.h: revision 1.12
sbin/mount/mount.8: revision 1.63
sbin/mount/mount.c: revision 1.88
Support mount -o rump, which uses the rump server instead of using
the kernel service. E.g. "mount -t efs -o rump /dev/sgidev /mnt"
runs effectively "rump_efs /dev/sgidev /mnt".
 1.62.2.3.6.1 17-Mar-2012  bouyer Pull up following revision(s) (requested by dholland in ticket #1743):
sbin/mount/mount.8: revision 1.73
sbin/mount/mount.8: revision 1.74
Clarify UFS2 superblock format stuff. Bump date.
Improve previous; thanks to tsutsui-san for reminding me of the proper
reference. PR 45166
 1.62.2.3.2.1 17-Mar-2012  bouyer Pull up following revision(s) (requested by dholland in ticket #1743):
sbin/mount/mount.8: revision 1.73
sbin/mount/mount.8: revision 1.74
Clarify UFS2 superblock format stuff. Bump date.
Improve previous; thanks to tsutsui-san for reminding me of the proper
reference. PR 45166
 1.65.2.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.69.2.3 21-Oct-2010  uebayasi After consideration, put back "xip" mount option.

The internal behavior is totally different between with and without
the option; automatic detection and/or fall-through are not user
friendly. mount(8) returning the "xip" flag is also informative.
 1.69.2.2 28-May-2010  uebayasi Remove the "xip" option from mount_ffs(8) for simplicity.
 1.69.2.1 11-Feb-2010  uebayasi Add the new "xip" mount option.
 1.70.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.74.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.74.2.1 30-Oct-2012  yamt sync with head
 1.76.2.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.76.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.80.2.2 26-Apr-2017  pgoyette Sync with HEAD
 1.80.2.1 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.82.2.1 21-Apr-2017  bouyer Sync with HEAD
 1.88.4.1 06-Jun-2021  cjep sync with head
 1.92.2.1 02-Aug-2025  perseant Sync with HEAD
 1.108 01-Jul-2025  kre PR bin/59494

Cause "mount -v [spec] filesystem" to indicate only what was
mounted (and where), to obtain all the rest of the data that
used to be printed, -v must be given twice.

Implemented differently from the patch given in the PR from
greywolf, but the same idea.

While here, avoid the -d option, after indicating what mount
command would have been run, but wasn't, going on to attempt
to report statistics on the never mounted filesystem, and
instead getting those from the intended mount point.

Update the man page to match.
 1.107 07-Dec-2021  christos branches: 1.107.4;
remove impossible test.
 1.106 02-Dec-2021  christos PR/56529: RVP: mount should try ffs when DIOCGWEDGEINFO returns an empty
dkw_ptype.
 1.105 21-Nov-2021  simonb Add some { } around an if body that is followed by an "else {".
 1.104 04-Jun-2021  simonb Remove the warning about autoselecting nfs based on : or @.

Ok jmcneill@, mrg@.
 1.103 18-Oct-2020  mlelstv branches: 1.103.4;
Make command line arguments -r and -w actually override defaults from fstab,
previously -w would only cancel a preceeding -r.

No longer strip -o rw.
 1.102 09-Oct-2016  christos try to be more clear about what is not found.
 1.101 08-Oct-2016  maya change warning message

previously attempting to use mount -t ext2 like myself would result in
the warning "mount: mount_ext2 not found for /mnt", which (if you're me)
can be misunderstood as "/mnt is not an ext2 filesystem"...

change it to "mount: mount_ext2 not found"
 1.100 04-Jan-2015  pooka branches: 1.100.2;
gcc 4.9 produces vfork clobberation warnings for "name" and "buflen".
Since there's no performance reason to use vfork here, just replace it
with fork and be done with warnings once and for all.
 1.99 05-Oct-2013  ast No code change: corrected spelling in comment, removed trailing white spaces.
 1.98 24-Jan-2013  christos use return instead of exit.
 1.97 14-Jun-2012  christos branches: 1.97.2;
don't print the NULL, but the error
 1.96 09-Apr-2012  mlelstv return exit code from mount_XXXX again
 1.95 07-Apr-2012  christos use getfsspecname
 1.94 07-Apr-2012  christos Accept NAME=label for special so that we can wire down our wedges.
 1.93 29-Aug-2011  joerg branches: 1.93.2;
Use __dead
 1.92 13-Jan-2011  pooka In case we are union-mounting /, don't force MNT_UPDATE. This makes
the following work:

mount -t tmpfs -o union tmpfs /

(some caveats are implied, such as if you "mkdir /usr" you're
screwed, but then again you'll get there with "rm -rf /usr" even
without union -- we supply rope)

per discussion with zafer, use case for jibbed
 1.91 14-Jan-2010  pooka Remove puffs| from vfstype before making comparison to determine if
fs is mounted.

Fixes slightly-miscategorized kern/37626.
 1.90 14-Jan-2010  pooka If getargs and vfs has PUFFS_TYPEPREFIX, use mount_puffs to query args.
 1.89 04-May-2009  yamt disable automatic mountd reloading for now because it makes the service
temporary unavailable. PR/41331 from FUKAUMI Naoki.
 1.88 11-Jan-2009  pooka branches: 1.88.2;
Support mount -o rump, which uses the rump server instead of using
the kernel service. E.g. "mount -t efs -o rump /dev/sgidev /mnt"
runs effectively "rump_efs /dev/sgidev /mnt".
 1.87 11-Jan-2009  pooka Warn that autoselecting nfs based on : or @ in the device path will
be removed in a future release.
 1.86 05-Aug-2008  pooka branches: 1.86.2;
Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.85 20-Jul-2008  lukem Remove the \n and tabs from the __COPYRIGHT() strings.
(Tweak some to use a consistent format.)
 1.84 17-Jul-2007  christos branches: 1.84.12; 1.84.16;
cast sizeof() to int for printf widths.
 1.83 17-Jul-2007  christos kill MFSTYPENAME
 1.82 16-Oct-2006  christos sprinkle volatile.
 1.81 04-May-2006  christos since yamt prohibits any flag with MNT_GETARGS, don't set MNT_UPDATE for
/ when we do getargs.
 1.80 21-Mar-2006  christos Coverity CID 1688: Fix memory leak.
 1.79 17-Mar-2006  rumble Check for allocation failures in malloc, calloc, realloc, asprintf, and
vasprintf and try to handle them.
 1.78 27-Jun-2005  christos Move WARNS=3 to the Makefile.inc, and add a little const to the remaining
programs that did not compile before.
 1.77 18-Mar-2005  lukem Fix core dump when doing
mount fileserver:/somepath
by not passing a NULL pointer to getfsfile(3).
(Bug was introduced in rev 1.74 as part of fix for PR 28644.)
 1.76 05-Feb-2005  xtraeme branches: 1.76.2;
Kill __P(), use ANSI function declarations.
 1.75 31-Jan-2005  he Move local variable declaration to variable declaration section at
top of function, and at least away from after active code within
a block. Fixes build problem with gcc 2 (for vax).
 1.74 31-Jan-2005  erh PR #28644: Use realpath to make mount more forgiving of non-canonical
mount paths entered on the command line.
 1.73 25-Sep-2004  thorpej Try the DIOCGWEDGEINFO ioctl first. If that succeeds (i.e. the block
device is a wedge), use the partition type string from the dkwedge_info
structure to get the file system type.
 1.72 19-Aug-2004  christos Handle RESCUEDIR
 1.71 30-Apr-2004  enami Print fsid on verbose printing. It is useful when debugging nfs.
 1.70 22-Apr-2004  hannken Use PRIu64 to printf uint64_t. Compiles again on sparc64.
 1.69 21-Apr-2004  christos Replace the statfs() family of system calls with statvfs().
Retain binary compatibility.
 1.68 27-Mar-2004  cgd Recognize 'from_mount' as the device, which is especially useful when
putting root on NFS. (From my PR, 20305.)
 1.67 19-Sep-2003  itojun realloc pedant
 1.66 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22308, verified by myself.
 1.65 19-Jan-2003  jdolecek do not link all mount programs into single image; the total size difference
isn't really that huge now that these are compiled as dynamic
 1.64 23-Sep-2002  enami Cosmetic changes.
 1.63 23-Sep-2002  enami Properly terminate the output from mount -v.
 1.62 21-Sep-2002  christos make sure options is not NULL before we look in it. Thanks Charles.
 1.61 21-Sep-2002  christos MNT_GETARGS support
 1.60 23-Aug-2002  lukem if _PATH_RESCUE is defined, try that before _PATH_SBIN & _PATH_USRSBIN
 1.59 21-May-2002  nathanw When attempting to guess the filesystem type from the disklabel, don't
consider a out-of-range partition letter at the end of the special
device node to be a fatal error; just return NULL and let the caller
fall back to FFS.

This fixes the "mount -u /kern/rootdev /" done by the script installer.

XXX this is still gross, and breaks things like
"mount /my/strange/dev/path/b /mnt". Perhaps it should stat the node
and use the minor number as an index instead?
 1.58 30-Jan-2002  christos Use __MNT_FLAGS from <sys/mount.h> instead of rolling our own list. Also
when -v is used, print even the silent flags.
 1.57 20-Dec-2001  soren Sync getopt() / man page with actual getopt options.
 1.56 18-Feb-2001  tsutsui Add x_mount, which does not include any MOUNT_PROGS.
Installer does not require all vfs progs and all binaries
are crunched after all.
 1.55 01-Nov-2000  enami Factor out some function declarations into a header file.
 1.54 01-Nov-2000  enami When failed to read disklabel to deduce filesystem type,
- don't warn. It's just too verbose when we know there is
no disklabel and want to use the default filesystem type.
- close the file descriptor so that further mount success.
 1.53 01-Nov-2000  enami Cosmetic changes.
 1.52 30-Oct-2000  jdolecek mount(8) now includes code for all mount_*(8) but mount_portal(8) and
mount_mfs(8); the mount_*(8) are hardlinked to mount (appropriate mount routine
is called depending on program name) - this saves approx. 1.7MB of /sbin
space
mount.c: make all local symbols static
 1.51 11-Oct-2000  abs When determining the filesystem type automatically, only try the raw device
for the disklabel if the given device fails with EBUSY. Also make disklabel
errors non fatal (just fall back to ffs as per pre-autofilesystem behaviour)
Based on further discussion with Launey Thomas <ljt@alum.mit.edu>
 1.50 10-Oct-2000  is Format string cleanups by Bill Sommerfeld.
 1.49 02-Oct-2000  abs When opening a partition to automatically determine the filesystem type,
always use the raw partition in case it is already mounted and this is
an 'update' mount. Patch from Launey Thomas <ljt@alum.mit.edu>
 1.48 18-Sep-2000  abs If device and mountpoint are given without -t, and without a : in the
device, check the disklabel for filesystem type. Fall back to ffs as ever.
 1.47 16-Nov-1999  enami branches: 1.47.4;
If we didn't print an open paren, no need to print a closing paren
(by backing out part of previous commit).
 1.46 15-Nov-1999  fvdl Print softdep information. Also print sync+async writes in verbose mode.
 1.45 01-Dec-1998  kenh branches: 1.45.2; 1.45.4; 1.45.8;
Add support for a new flag: "nodevmtime". This sets the MNT_NODEVMTIME mount
flag.
 1.44 25-Aug-1998  ross from Erik Bertelsen <erik@mediator.uni-c.dk>
{ put } { in } { lots } { of } { these } { to } { shut } { up } { egcs }
 1.43 26-Jul-1998  mycroft const poisoning.
 1.42 06-May-1998  ross Rewrite options and fstype handling for upgrade mounts.
 1.41 23-Nov-1997  enami Add MNT_SYMPERM to optnames[].
 1.40 05-Nov-1997  cgd lint
 1.39 01-Nov-1997  drochner Take out last change (wait for mount_mfs completion).
I changed it in mount_mfs instead.
 1.38 01-Nov-1997  drochner Fix a problem with asynchronous processing of mfs mounts: Calls to
statfs() or getmountinfo() did not tell about the freshly mounted
ramdisk.
XXX Imo, "mount_mfs" should not return before the mount is done.
This is the only place where this can be done cleanly. But this would
require a substancial restructuring of "newfs". For now, wait in "mount"
until the filesystem appears.
 1.37 01-Nov-1997  drochner Fix a misbehaviour introduced in rev. 1.34 - mountfs() returned in
"verbose" mode after printing the exec args.
This invalidates most of my comment in the previous commit. (Not all,
there are still bogosities with mount_mfs.)
 1.36 01-Nov-1997  drochner When checking whether a filesystem is already mounted (for -a), get and
check all mounts (getmntinfo), not only the top one (statfs).
Otherwise we might miss lower level mounts on the same mountpoint.
XXX "mount" behaves differently with the "verbose" flag (-v) in some
cases, probably due to asynchronous calls to fs dependant mount programs.
 1.35 31-Oct-1997  mycroft Import modified mangle() from mount(8).
Also rewrite catopt() with a more sane interface.
 1.34 29-Oct-1997  christos PR/2974: VaX#n8: fix the rest of the problems that were not addressed by 4384.
- vfork exit -> _exit
- debug and verbose consistency with fsck.
 1.33 29-Oct-1997  christos PR/4384: Brian Grayson: Pass the real argv[0] to the exec'ed child.
Also while I am here, remove bogus XXX comment about mount_mfs.
 1.32 16-Sep-1997  lukem branches: 1.32.2;
resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.31 15-Sep-1997  lukem * getopt returns -1 not EOF
* use .Nm correctly
 1.30 30-Jul-1997  christos When we mount -u and there is no vfstype specified, deduce the vfstype from
statfs.
 1.29 04-Jul-1997  christos Fix warnings.
 1.28 31-May-1997  pk More accurate failure message for unknown filesystem types, as
suggested in PR#1274.
 1.27 17-May-1997  pk NULL => 0 (Arne Juul; PR#3629)
 1.26 10-Mar-1997  mikel add support for MNT_NOATIME; from Lennart Augustsson in PR bin/3304.
 1.25 23-Oct-1996  cgd recognize MNT_NOCOREDUMP and print the 'nocoredump' flag for file
systems which have MNT_NOCOREDUMP set.
 1.24 18-Nov-1995  cgd Recognize all mount flags exported from the kernel (but only print the
ones that we used to print). Note unrecognized flags(s) when printing
mount list.
 1.23 22-Aug-1995  jtc Call mount_ffs instead of mount_ufs; PR #1379
 1.22 12-Jul-1995  cgd fix a goof in my previous code, that i thought of while reading pr 749.
add a -A flag, which does the same thing as '-a', but doesn't check for
remounts.
 1.21 12-Jul-1995  cgd remove FFS mounting code from mount(8); there are now _no_ 'internal' mount
types. when using mount(8) with '-a', do _NOT_ remount file systems
that have been mounted once already. (This cannot be 100% precisely
determined (thanks to mfs, union fs, and similar file systems which
don't use a 'real' mounted-from node), and changed options cannot be updated
with mount -a. however, options wouldn't be updated with the old mount -a
anyway, and this solves several annoyances.
 1.20 04-Jul-1995  ghudson Give an argument to the warning message for when realpath() fails.
 1.19 22-Jun-1995  cgd specify precision, not minimum field width. pointed out by John Kohl
 1.18 18-Jun-1995  cgd don't assume f_fstypename is larger than MFSNAMELEN or is nul-terminated
 1.17 28-May-1995  jtc sys_siglist[] -> strsignal()
 1.16 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.15 30-Jan-1995  mycroft Change type list code to match umount(8).
 1.14 18-Dec-1994  cgd compile against new headers
 1.13 29-Aug-1994  mycroft branches: 1.13.2;
Display type of mount; suggested by Thomas Eberhardt.
 1.12 08-Jun-1994  mycroft Update from 4.4-Lite, with local changes.
 1.11 18-Apr-1994  cgd allow external mount types, even if LETS_GET_SMALL
 1.10 15-Apr-1994  cgd oops, forgot one
 1.9 14-Apr-1994  cgd fs type names, and much clean
 1.8 05-Jan-1994  cgd update for new (actually old... *sigh*) mount flags
 1.7 05-Dec-1993  deraadt should bzero automatic sockaddr's before use
 1.6 07-Sep-1993  ws Changes to VFS readdir semantics
NFS changes for better cookie support
ISOFS changes for better Rockridge support and support for generation numbers
 1.5 03-Aug-1993  mycroft Recognize `noauto' (and `auto', just for symmetry) in fstab.
 1.4 01-Aug-1993  mycroft Add RCS identifiers.
 1.3 23-Mar-1993  cgd changed "Id" to "Header" for rcsids
 1.2 22-Mar-1993  cgd added rcs ids to all files
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.3 16-Sep-1997  lukem imported from lite-2
 1.1.1.2 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.13.2.2 29-Aug-1994  mycroft Display type of mount; suggested by Thomas Eberhardt.
 1.13.2.1 29-Aug-1994  mycroft file mount.c was added on branch netbsd-1-0 on 1994-08-29 02:38:01 +0000
 1.32.2.3 08-May-1998  mycroft Pull up 1.42, per request of ross.
 1.32.2.2 02-Nov-1997  mellon Pull rev 1.36, 1.37, 1.38 and 1.39 up from trunk (drochner)
 1.32.2.1 31-Oct-1997  mellon Pull rev 1.33, 1.34 and 1.35 up from trunk (mycroft)
 1.45.8.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.45.4.1 19-Oct-1999  fvdl Bring in Kirk McKusick's FFS softdep code on a branch.
 1.45.2.1 10-Oct-2000  he Pull up revision 1.50 (via patch, requested by is):
Format string cleanup.
 1.47.4.2 26-Feb-2001  he Pull up revisions 1.48-1.49,1.51,1.54 (via patch, requested by abs):
If both special and node are given (but no type), the disklabel
is checked for the file system type before falling back to ffs.
 1.47.4.1 18-Oct-2000  tv Pullup sbin string format fixes [is].
See "cvs log" for explicit revision numbers per file, from sommerfeld.
 1.76.2.1 19-Mar-2005  tron Pull up revision 1.77 (requested by lukem in ticket #10):
Fix core dump when doing
mount fileserver:/somepath
by not passing a NULL pointer to getfsfile(3).
(Bug was introduced in rev 1.74 as part of fix for PR 28644.)
 1.84.16.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.84.12.2 17-Jan-2009  mjf Sync with HEAD.
 1.84.12.1 28-Sep-2008  mjf Sync with HEAD.
 1.86.2.2 22-Jan-2009  snj Pull up following revision(s) (requested by pooka in ticket #288):
include/mntopts.h: revision 1.12
sbin/mount/mount.8: revision 1.63
sbin/mount/mount.c: revision 1.88
Support mount -o rump, which uses the rump server instead of using
the kernel service. E.g. "mount -t efs -o rump /dev/sgidev /mnt"
runs effectively "rump_efs /dev/sgidev /mnt".
 1.86.2.1 16-Jan-2009  bouyer Pull up following revision(s) (requested by pooka in ticket #266):
sbin/mount/mount.c: revision 1.87
Warn that autoselecting nfs based on : or @ in the device path will
be removed in a future release.
 1.88.2.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.93.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.93.2.2 30-Oct-2012  yamt sync with head
 1.93.2.1 17-Apr-2012  yamt sync with head
 1.97.2.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.97.2.1 25-Feb-2013  tls resync with head
 1.100.2.1 04-Nov-2016  pgoyette Sync with HEAD
 1.103.4.1 06-Jun-2021  cjep sync with head
 1.107.4.1 02-Aug-2025  perseant Sync with HEAD
 1.3 12-Jul-1995  cgd remove FFS mounting code from mount(8); there are now _no_ 'internal' mount
types. when using mount(8) with '-a', do _NOT_ remount file systems
that have been mounted once already. (This cannot be 100% precisely
determined (thanks to mfs, union fs, and similar file systems which
don't use a 'real' mounted-from node), and changed options cannot be updated
with mount -a. however, options wouldn't be updated with the old mount -a
anyway, and this solves several annoyances.
 1.2 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.1 08-Jun-1994  mycroft branches: 1.1.1;
Update from 4.4-Lite, with local changes.
 1.1.1.2 16-Sep-1997  lukem imported from lite-2
 1.1.1.1 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.1 05-Aug-2008  pooka branches: 1.1.2; 1.1.4;
Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.1.4.2 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.1 05-Aug-2008  mjf file mountprog.h was added on branch mjf-devfs2 on 2008-09-28 11:17:12 +0000
 1.1.2.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.2.1 05-Aug-2008  wrstuden file mountprog.h was added on branch wrstuden-revivesa on 2008-09-18 04:28:25 +0000
 1.4 25-May-2023  kre pathadj() is required to succeed. If it cannot, simply issuing a
warning and continuing is not good enough. Change the warning to
an error (and hence immediate exit) instead, that's all we can do.

Problem pointed out by tlaronde@polynum.com

XXX - pullup -10 (others?)
 1.3 26-Jul-2020  mlelstv Refactor remaining mount_* commands to use the common pathadj()
function for resolving paths.

Make pathadj() no longer warn about symlinks. Symlinks in /dev are
regularly used in several places like LVM . The warning was also
only visible when calling a mount_* command directly as mount(8)
itself would resolve the path witout warning before passing it to
a mount_* command.
 1.2 17-Feb-2011  pooka "when in doubt, let the kernel decide"
 1.1 05-Aug-2008  pooka branches: 1.1.2; 1.1.4; 1.1.20;
Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.1.20.1 05-Mar-2011  bouyer Sync with HEAD
 1.1.4.2 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.1 05-Aug-2008  mjf file pathadj.c was added on branch mjf-devfs2 on 2008-09-28 11:17:12 +0000
 1.1.2.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.2.1 05-Aug-2008  wrstuden file pathadj.c was added on branch wrstuden-revivesa on 2008-09-18 04:28:26 +0000
 1.7 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22308, verified by myself.
 1.6 18-Mar-1995  cgd convert to new RCS Id conventions; reduce my headache
 1.5 08-Jun-1994  mycroft Update from 4.4-Lite, with local changes.
 1.4 01-Aug-1993  mycroft Add RCS identifiers.
 1.3 23-Mar-1993  cgd changed "Id" to "Header" for rcsids
 1.2 22-Mar-1993  cgd added rcs ids to all files
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 13-Jun-1994  mycroft Import 4.4-Lite version.
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.7 05-Aug-2008  pooka Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.6 26-Jun-2005  christos branches: 1.6.20; 1.6.24;
Don't abuse writing to const strings. We can pass const strings to this,
and we write to them. Allocate memory instead.
 1.5 05-Feb-2005  xtraeme Kill __P(), use ANSI function declarations.
 1.4 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22308, verified by myself.
 1.3 01-Nov-2000  enami Factor out some function declarations into a header file.
 1.2 16-Sep-1997  lukem resolve conflicts from lite-2 import, with two major modifications
that require all of /sbin/mount_* and /sbin/umount to be modified:
* incorporate vfslist.c, adding checkvfsname() and makevfslist()
* getmntopts() now takes 4 args (adding int *altflagp)
 1.1 16-Sep-1997  lukem branches: 1.1.1;
Initial revision
 1.1.1.1 16-Sep-1997  lukem imported from lite-2
 1.6.24.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.6.20.1 28-Sep-2008  mjf Sync with HEAD.
 1.5 05-Aug-2008  pooka Refactor mount utilities to provide a mount_fs_parseargs() routine.
Use this routine both in mount_fs and rump_fs to provide equivalent
command line parameters and therefore usage interchangeability.
While doing this, combine some common mountgoop to mountprog.h
 1.4 26-Jun-2005  christos branches: 1.4.20; 1.4.24;
Don't abuse writing to const strings. We can pass const strings to this,
and we write to them. Allocate memory instead.
 1.3 21-Apr-2004  christos un-__P
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22308, verified by myself.
 1.1 01-Nov-2000  enami Factor out some function declarations into a header file.
 1.4.24.1 07-Sep-2008  wrstuden Delete a bunch of things that are now gone in head.
 1.4.20.1 28-Sep-2008  mjf Sync with HEAD.

RSS XML Feed