15fe58019SAttilio Rao.\" Copyright (c) 1980, 1989, 1991, 1993 25fe58019SAttilio Rao.\" The Regents of the University of California. 35fe58019SAttilio Rao.\" Copyright (c) 2005, 2006 Csaba Henk 45fe58019SAttilio Rao.\" All rights reserved. 55fe58019SAttilio Rao.\" 68aafc8c3SAlan Somers.\" Copyright (c) 2019 The FreeBSD Foundation 78aafc8c3SAlan Somers.\" 88aafc8c3SAlan Somers.\" Portions of this documentation were written by BFF Storage Systems under 98aafc8c3SAlan Somers.\" sponsorship from the FreeBSD Foundation. 108aafc8c3SAlan Somers.\" 115fe58019SAttilio Rao.\" Redistribution and use in source and binary forms, with or without 125fe58019SAttilio Rao.\" modification, are permitted provided that the following conditions 135fe58019SAttilio Rao.\" are met: 145fe58019SAttilio Rao.\" 1. Redistributions of source code must retain the above copyright 155fe58019SAttilio Rao.\" notice, this list of conditions and the following disclaimer. 165fe58019SAttilio Rao.\" 2. Redistributions in binary form must reproduce the above copyright 175fe58019SAttilio Rao.\" notice, this list of conditions and the following disclaimer in the 185fe58019SAttilio Rao.\" documentation and/or other materials provided with the distribution. 19fbbd9655SWarner Losh.\" 3. Neither the name of the University nor the names of its contributors 205fe58019SAttilio Rao.\" may be used to endorse or promote products derived from this software 215fe58019SAttilio Rao.\" without specific prior written permission. 225fe58019SAttilio Rao.\" 235fe58019SAttilio Rao.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 245fe58019SAttilio Rao.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 255fe58019SAttilio Rao.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 265fe58019SAttilio Rao.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 275fe58019SAttilio Rao.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 285fe58019SAttilio Rao.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 295fe58019SAttilio Rao.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 305fe58019SAttilio Rao.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 315fe58019SAttilio Rao.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 325fe58019SAttilio Rao.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 335fe58019SAttilio Rao.\" SUCH DAMAGE. 345fe58019SAttilio Rao.\" 35c8a45820SElyes HAOUAS.Dd October 9, 2021 365fe58019SAttilio Rao.Dt MOUNT_FUSEFS 8 375fe58019SAttilio Rao.Os 385fe58019SAttilio Rao.Sh NAME 395fe58019SAttilio Rao.Nm mount_fusefs 405fe58019SAttilio Rao.Nd mount a Fuse file system daemon 415fe58019SAttilio Rao.Sh SYNOPSIS 425fe58019SAttilio Rao.Nm 435fe58019SAttilio Rao.Op Fl A 445fe58019SAttilio Rao.Op Fl S 455fe58019SAttilio Rao.Op Fl v 465fe58019SAttilio Rao.Op Fl D Ar fuse_daemon 475fe58019SAttilio Rao.Op Fl O Ar daemon_opts 485fe58019SAttilio Rao.Op Fl s Ar special 495fe58019SAttilio Rao.Op Fl m Ar node 505fe58019SAttilio Rao.Op Fl h 515fe58019SAttilio Rao.Op Fl V 525fe58019SAttilio Rao.Op Fl o Ar option ... 535fe58019SAttilio Rao.Ar special node 545fe58019SAttilio Rao.Op Ar fuse_daemon ... 555fe58019SAttilio Rao.Sh DESCRIPTION 565fe58019SAttilio RaoBasic usage is to start a fuse daemon on the given 575fe58019SAttilio Rao.Ar special 5851a2bd2fSSevan Janiyanfile. 5951a2bd2fSSevan JaniyanIn practice, the daemon is assigned a 605fe58019SAttilio Rao.Ar special 61e7114e1eSJens Schweikhardtfile automatically, which can then be identified via 625fe58019SAttilio Rao.Xr fstat 1 . 635fe58019SAttilio RaoThat special file can then be mounted by 645fe58019SAttilio Rao.Nm . 655fe58019SAttilio Rao.Pp 665fe58019SAttilio RaoHowever, the procedure of spawning a daemon will usually be automated 675fe58019SAttilio Raoso that it is performed by 685fe58019SAttilio Rao.Nm . 695fe58019SAttilio RaoIf the command invoking a given 705fe58019SAttilio Rao.Ar fuse_daemon 715fe58019SAttilio Raois appended to the list of arguments, 725fe58019SAttilio Rao.Nm 735fe58019SAttilio Raowill call the 745fe58019SAttilio Rao.Ar fuse_daemon 7551a2bd2fSSevan Janiyanvia that command. 7651a2bd2fSSevan JaniyanIn that way the 775fe58019SAttilio Rao.Ar fuse_daemon 785fe58019SAttilio Raowill be instructed to attach itself to 795fe58019SAttilio Rao.Ar special . 805fe58019SAttilio RaoFrom that on mounting goes as in the simple case. (See 815fe58019SAttilio Rao.Sx DAEMON MOUNTS . ) 825fe58019SAttilio Rao.Pp 835fe58019SAttilio RaoThe 845fe58019SAttilio Rao.Ar special 8533656abeSJoel Dahlargument will normally be treated as the path of the special file to mount. 865fe58019SAttilio Rao.Pp 875fe58019SAttilio RaoHowever, if 885fe58019SAttilio Rao.Pa auto 895fe58019SAttilio Raois passed as 905fe58019SAttilio Rao.Ar special , 915fe58019SAttilio Raothen 925fe58019SAttilio Rao.Nm 935fe58019SAttilio Raowill look for a suitable free fuse device by itself. 945fe58019SAttilio Rao.Pp 955fe58019SAttilio RaoFinally, if 965fe58019SAttilio Rao.Ar special 975fe58019SAttilio Raois an integer it will be interpreted as the number 985fe58019SAttilio Raoof the file descriptor of an already open fuse device 995fe58019SAttilio Rao(used when the Fuse library invokes 1005fe58019SAttilio Rao.Nm . 101e7114e1eSJens SchweikhardtSee 1025fe58019SAttilio Rao.Sx DAEMON MOUNTS ) . 1035fe58019SAttilio Rao.Pp 1045fe58019SAttilio RaoThe options are as follows: 1055fe58019SAttilio Rao.Bl -tag -width indent 1065fe58019SAttilio Rao.It Fl A , Ic --reject-allow_other 1075fe58019SAttilio RaoProhibit the 1085fe58019SAttilio Rao.Cm allow_other 10951a2bd2fSSevan Janiyanmount flag. 11051a2bd2fSSevan JaniyanIntended for use in scripts and the 111*7c20397bSJens Schweikhardt.Xr sudoers 5 Pq Pa ports/security/sudo 1125fe58019SAttilio Raofile. 1135fe58019SAttilio Rao.It Fl S , Ic --safe 114db90284cSAlan SomersRun in safe mode (i.e., reject invoking a filesystem daemon). 1155fe58019SAttilio Rao.It Fl v 116db90284cSAlan SomersBe verbose. 1175fe58019SAttilio Rao.It Fl D , Ic --daemon Ar daemon 1185fe58019SAttilio RaoCall the specified 119db90284cSAlan Somers.Ar daemon . 1205fe58019SAttilio Rao.It Fl O , Ic --daemon_opts Ar opts 1215fe58019SAttilio RaoAdd 1225fe58019SAttilio Rao.Ar opts 123db90284cSAlan Somersto the daemon's command line. 1245fe58019SAttilio Rao.It Fl s , Ic --special Ar special 1255fe58019SAttilio RaoUse 1265fe58019SAttilio Rao.Ar special 127db90284cSAlan Somersas special. 1285fe58019SAttilio Rao.It Fl m , Ic --mountpath Ar node 1295fe58019SAttilio RaoMount on 130db90284cSAlan Somers.Ar node . 1315fe58019SAttilio Rao.It Fl h , Ic --help 132db90284cSAlan SomersShow help. 1335fe58019SAttilio Rao.It Fl V , Ic --version 134db90284cSAlan SomersShow version information. 1355fe58019SAttilio Rao.It Fl o 1365fe58019SAttilio RaoMount options are specified via 1375fe58019SAttilio Rao.Fl o . 1385fe58019SAttilio RaoThe following options are available (and also their negated versions, 1395fe58019SAttilio Raoby prefixing them with 1405fe58019SAttilio Rao.Dq no ) : 1415fe58019SAttilio Rao.Bl -tag -width indent 1425fe58019SAttilio Rao.It Cm allow_other 1435fe58019SAttilio RaoDo not apply 1445fe58019SAttilio Rao.Sx STRICT ACCESS POLICY . 145db90284cSAlan SomersOnly root can use this option. 1468eecd9ceSAlan Somers.It Cm async 1478eecd9ceSAlan SomersI/O to the file system may be done asynchronously. 148db90284cSAlan SomersWrites may be delayed and/or reordered. 1498eecd9ceSAlan Somers.It Cm default_permissions 150db90284cSAlan SomersEnable traditional (file mode based) permission checking in kernel. 151ed74f781SAlan Somers.It Cm intr 152ed74f781SAlan SomersAllow signals to interrupt operations that are blocked waiting for a reply from the server. 153ed74f781SAlan SomersWhen this option is in use, system calls may fail with 154ed74f781SAlan Somers.Er EINTR 155ed74f781SAlan Somerswhenever a signal is received. 1565fe58019SAttilio Rao.It Cm max_read Ns = Ns Ar n 1575fe58019SAttilio RaoLimit size of read requests to 158db90284cSAlan Somers.Ar n . 1598eecd9ceSAlan Somers.It Cm neglect_shares 160db90284cSAlan SomersDo not refuse unmounting if there are secondary mounts. 1615fe58019SAttilio Rao.It Cm private 16251a2bd2fSSevan JaniyanRefuse shared mounting of the daemon. 163c8a45820SElyes HAOUASThis is the default behaviour, to allow sharing, explicitly use 164db90284cSAlan Somers.Fl o Cm noprivate . 1655fe58019SAttilio Rao.It Cm push_symlinks_in 166db90284cSAlan SomersPrefix absolute symlinks with the mountpoint. 1672019f75cSAlan Somers.It Cm subtype Ns = Ns Ar fsname 1682019f75cSAlan SomersSuffix 1692019f75cSAlan Somers.Ar fsname 1702019f75cSAlan Somersto the file system name as reported by 1712019f75cSAlan Somers.Xr statfs 2 . 1722019f75cSAlan SomersThis option can be used to identify the file system implemented by 1732019f75cSAlan Somers.Ar fuse_daemon . 1745fe58019SAttilio Rao.El 1755fe58019SAttilio Rao.El 1765fe58019SAttilio Rao.Pp 1775fe58019SAttilio RaoBesides the above mount options, there is a set of pseudo-mount options which 17851a2bd2fSSevan Janiyanare supported by the Fuse library. 17951a2bd2fSSevan JaniyanOne can list these by passing 1805fe58019SAttilio Rao.Fl h 18151a2bd2fSSevan Janiyanto a Fuse daemon. 182e7114e1eSJens SchweikhardtMost of these options only have effect on the behavior of the daemon (that is, 18351a2bd2fSSevan Janiyantheir scope is limited to userspace). 18451a2bd2fSSevan JaniyanHowever, there are some which do require in-kernel support. 1855fe58019SAttilio RaoCurrently the options supported by the kernel are: 1865fe58019SAttilio Rao.Bl -tag -width indent 1875fe58019SAttilio Rao.It Cm direct_io 188db90284cSAlan SomersBypass the buffer cache system. 1895fe58019SAttilio Rao.It Cm kernel_cache 1905fe58019SAttilio RaoBy default cached buffers of a given file are flushed at each 1915fe58019SAttilio Rao.Xr open 2 . 192db90284cSAlan SomersThis option disables this behaviour. 1935fe58019SAttilio Rao.El 1945fe58019SAttilio Rao.Sh DAEMON MOUNTS 19533656abeSJoel DahlUsually users do not need to use 1965fe58019SAttilio Rao.Nm 1975fe58019SAttilio Raodirectly, as the Fuse library enables Fuse daemons to invoke 1985fe58019SAttilio Rao.Nm . 1995fe58019SAttilio RaoThat is, 2005fe58019SAttilio Rao.Pp 2015fe58019SAttilio Rao.Dl fuse_daemon device mountpoint 2025fe58019SAttilio Rao.Pp 2035fe58019SAttilio Raohas the same effect as 2045fe58019SAttilio Rao.Pp 2055fe58019SAttilio Rao.Dl mount_fusefs auto mountpoint fuse_daemon 2065fe58019SAttilio Rao.Pp 2075fe58019SAttilio RaoThis is the recommended usage when you want basic usage 2085fe58019SAttilio Rao(eg, run the daemon at a low privilege level but mount it as root). 2095fe58019SAttilio Rao.Sh STRICT ACCESS POLICY 210e7114e1eSJens SchweikhardtThe strict access policy for Fuse filesystems lets one use the filesystem 2115fe58019SAttilio Raoonly if the filesystem daemon has the same credentials (uid, real uid, gid, 2125fe58019SAttilio Raoreal gid) as the user. 2135fe58019SAttilio Rao.Pp 2145fe58019SAttilio RaoThis is applied for Fuse mounts by default and only root can mount without 215db90284cSAlan Somersthe strict access policy (i.e., the 2165fe58019SAttilio Rao.Cm allow_other 2175fe58019SAttilio Raomount option). 2185fe58019SAttilio Rao.Pp 2195fe58019SAttilio RaoThis is to shield users from the daemon 2205fe58019SAttilio Rao.Dq spying 2215fe58019SAttilio Raoon their I/O activities. 2225fe58019SAttilio Rao.Pp 223e7114e1eSJens SchweikhardtUsers might opt to willingly relax strict access policy (as far as they 2245fe58019SAttilio Raoare concerned) by doing their own secondary mount (See 2255fe58019SAttilio Rao.Sx SHARED MOUNTS ) . 2265fe58019SAttilio Rao.Sh SHARED MOUNTS 227db90284cSAlan SomersA Fuse daemon can be shared (i.e., mounted multiple times). 2285fe58019SAttilio RaoWhen doing the first (primary) mount, the spawner and the mounter of the daemon 2295fe58019SAttilio Raomust have the same uid, or the mounter should be the superuser. 2305fe58019SAttilio Rao.Pp 2315fe58019SAttilio RaoAfter the primary mount is in place, secondary mounts can be done by anyone 2325fe58019SAttilio Raounless this feature is disabled by 2335fe58019SAttilio Rao.Cm private . 2345fe58019SAttilio RaoThe behaviour of a secondary mount is analogous to that of symbolic 2355fe58019SAttilio Raolinks: they redirect all filesystem operations to the primary mount. 2365fe58019SAttilio Rao.Pp 2375fe58019SAttilio RaoDoing a secondary mount is like signing an agreement: by this action, the mounter 23851a2bd2fSSevan Janiyanagrees that the Fuse daemon can trace her I/O activities. 23951a2bd2fSSevan JaniyanFrom then on she is not banned from using the filesystem 24051a2bd2fSSevan Janiyan(either via her own mount or via the primary mount), regardless whether 2415fe58019SAttilio Rao.Cm allow_other 2425fe58019SAttilio Raois used or not. 2435fe58019SAttilio Rao.Pp 2445fe58019SAttilio RaoThe device name of a secondary mount is the device name of the corresponding 2455fe58019SAttilio Raoprimary mount, followed by a '#' character and the index of the secondary 246db90284cSAlan Somersmount; e.g., 2475fe58019SAttilio Rao.Pa /dev/fuse0#3 . 2485fe58019SAttilio Rao.Sh SECURITY 2495fe58019SAttilio RaoSystem administrators might want to use a custom mount policy (ie., one going 2505fe58019SAttilio Raobeyond the 2515fe58019SAttilio Rao.Va vfs.usermount 25251a2bd2fSSevan Janiyansysctl). 25351a2bd2fSSevan JaniyanThe primary tool for such purposes is 254*7c20397bSJens Schweikhardt.Xr sudo 8 Pq Pa ports/security/sudo . 2555fe58019SAttilio RaoHowever, given that 2565fe58019SAttilio Rao.Nm 2575fe58019SAttilio Raois capable of invoking an arbitrary program, one must be careful when doing this. 2585fe58019SAttilio Rao.Nm 25951a2bd2fSSevan Janiyanis designed in a way such that it makes that easy. 260e7114e1eSJens SchweikhardtFor this purpose, there are options which disable certain risky features 261e7114e1eSJens Schweikhardt.Fl ( S 2625fe58019SAttilio Raoand 2635fe58019SAttilio Rao.Fl A ) , 2645fe58019SAttilio Raoand command line parsing is done in a flexible way: mixing options and 2655fe58019SAttilio Raonon-options is allowed, but processing them stops at the third non-option 266e7114e1eSJens Schweikhardtargument (after the first two have been utilized as device and mountpoint). 2675fe58019SAttilio RaoThe rest of the command line specifies the daemon and its arguments. 2685fe58019SAttilio Rao(Alternatively, the daemon, the special and the mount path can be 2695fe58019SAttilio Raospecified using the respective options.) Note that 2705fe58019SAttilio Rao.Nm 2715fe58019SAttilio Raoignores the environment variable 2725fe58019SAttilio Rao.Ev POSIXLY_CORRECT 2735fe58019SAttilio Raoand always behaves as described. 2745fe58019SAttilio Rao.Pp 2755fe58019SAttilio RaoIn general, to be as scripting / 276*7c20397bSJens Schweikhardt.Xr sudoers 5 Pq Pa ports/security/sudo 2775fe58019SAttilio Raofriendly as possible, no information has a fixed 2785fe58019SAttilio Raoposition in the command line, but once a given piece of information is 2795fe58019SAttilio Raoprovided, subsequent arguments/options cannot override it (with the 2805fe58019SAttilio Raoexception of some non-critical ones). 2815fe58019SAttilio Rao.Sh ENVIRONMENT 2825fe58019SAttilio Rao.Bl -tag -width ".Ev MOUNT_FUSEFS_SAFE" 2835fe58019SAttilio Rao.It Ev MOUNT_FUSEFS_SAFE 2845fe58019SAttilio RaoThis has the same effect as the 2855fe58019SAttilio Rao.Fl S 2865fe58019SAttilio Raooption. 2875fe58019SAttilio Rao.It Ev MOUNT_FUSEFS_VERBOSE 2885fe58019SAttilio RaoThis has the same effect as the 2895fe58019SAttilio Rao.Fl v 2905fe58019SAttilio Raooption. 2915fe58019SAttilio Rao.It Ev MOUNT_FUSEFS_IGNORE_UNKNOWN 2925fe58019SAttilio RaoIf set, 2935fe58019SAttilio Rao.Nm 294c8a45820SElyes HAOUASwill ignore unknown mount options. 2955fe58019SAttilio Rao.It Ev MOUNT_FUSEFS_CALL_BY_LIB 29651a2bd2fSSevan JaniyanAdjust behavior to the needs of the FUSE library. 29751a2bd2fSSevan JaniyanCurrently it effects help output. 2985fe58019SAttilio Rao.El 2995fe58019SAttilio Rao.Pp 30033656abeSJoel DahlAlthough the following variables do not have any effect on 3015fe58019SAttilio Rao.Nm 3025fe58019SAttilio Raoitself, they affect the behaviour of fuse daemons: 3035fe58019SAttilio Rao.Bl -tag -width ".Ev FUSE_DEV_NAME" 3045fe58019SAttilio Rao.It Ev FUSE_DEV_NAME 30551a2bd2fSSevan JaniyanDevice to attach. 30651a2bd2fSSevan JaniyanIf not set, the multiplexer path 3075fe58019SAttilio Rao.Ar /dev/fuse 3085fe58019SAttilio Raois used. 3095fe58019SAttilio Rao.It Ev FUSE_DEV_FD 310b1603638SGordon BerglingFile descriptor of an opened Fuse device to use. 31151a2bd2fSSevan JaniyanOverrides 3125fe58019SAttilio Rao.Ev FUSE_DEV_NAME . 3135fe58019SAttilio Rao.It Ev FUSE_NO_MOUNT 31433656abeSJoel DahlIf set, the library will not attempt to mount the filesystem, even 3155fe58019SAttilio Raoif a mountpoint argument is supplied. 3165fe58019SAttilio Rao.El 3175fe58019SAttilio Rao.Sh FILES 3185fe58019SAttilio Rao.Bl -tag -width /dev/fuse 3195fe58019SAttilio Rao.It Pa /dev/fuse 3205fe58019SAttilio RaoFuse device with which the kernel and Fuse daemons can communicate. 3215fe58019SAttilio Rao.It Pa /dev/fuse 32251a2bd2fSSevan JaniyanThe multiplexer path. 32351a2bd2fSSevan JaniyanAn 3245fe58019SAttilio Rao.Xr open 2 3255fe58019SAttilio Raoperformed on it automatically is passed to a free Fuse device by the kernel 3265fe58019SAttilio Rao(which might be created just for this puprose). 3275fe58019SAttilio Rao.El 3285fe58019SAttilio Rao.Sh EXAMPLES 3295fe58019SAttilio RaoMount the example filesystem in the Fuse distribution (from its directory): 3305fe58019SAttilio Raoeither 3315fe58019SAttilio Rao.Pp 3325fe58019SAttilio Rao.Dl ./fusexmp /mnt/fuse 3335fe58019SAttilio Rao.Pp 3345fe58019SAttilio Raoor 3355fe58019SAttilio Rao.Pp 3365fe58019SAttilio Rao.Dl mount_fusefs auto /mnt/fuse ./fusexmp 3375fe58019SAttilio Rao.Pp 3385fe58019SAttilio RaoDoing the same in two steps, using 3395fe58019SAttilio Rao.Pa /dev/fuse0 : 3405fe58019SAttilio Rao.Pp 3415fe58019SAttilio Rao.Dl FUSE_DEV_NAME=/dev/fuse ./fusexmp && 3425fe58019SAttilio Rao.Dl mount_fusefs /dev/fuse /mnt/fuse 3435fe58019SAttilio Rao.Pp 3445fe58019SAttilio RaoA script wrapper for fusexmp which ensures that 3455fe58019SAttilio Rao.Nm 34633656abeSJoel Dahldoes not call any external utility and also provides a hacky 3475fe58019SAttilio Rao(non race-free) automatic device selection: 3485fe58019SAttilio Rao.Pp 3495fe58019SAttilio Rao.Dl #!/bin/sh -e 3505fe58019SAttilio Rao.Pp 3515fe58019SAttilio Rao.Dl FUSE_DEV_NAME=/dev/fuse fusexmp 3525fe58019SAttilio Rao.Dl mount_fusefs -S /dev/fuse /mnt/fuse \(lq$@\(rq 3535fe58019SAttilio Rao.Sh SEE ALSO 3545fe58019SAttilio Rao.Xr fstat 1 , 3555fe58019SAttilio Rao.Xr mount 8 , 356*7c20397bSJens Schweikhardt.Xr sudo 8 Pq Pa ports/security/sudo , 357c09eb466SJoel Dahl.Xr umount 8 35833656abeSJoel Dahl.Sh HISTORY 35933656abeSJoel Dahl.Nm 36002419b46SAlan Somerswas written as the part of the 36151a2bd2fSSevan Janiyan.Fx 36202419b46SAlan Somersimplementation of the Fuse userspace filesystem framework (see 363db90284cSAlan Somers.Lk https://github.com/libfuse/libfuse ) 36402419b46SAlan Somersand first appeared in the 36502419b46SAlan Somers.Pa sysutils/fusefs-kmod 36602419b46SAlan Somersport, supporting 36702419b46SAlan Somers.Fx 6.0 . 36802419b46SAlan SomersIt was added to the base system in 36902419b46SAlan Somers.Fx 10.0 . 3705fe58019SAttilio Rao.Sh CAVEATS 37151a2bd2fSSevan JaniyanThis user interface is 37251a2bd2fSSevan Janiyan.Fx 37351a2bd2fSSevan Janiyanspecific. 37451a2bd2fSSevan JaniyanSecondary mounts should be unmounted via their device name. 37551a2bd2fSSevan JaniyanIf an attempt is made to unmount them via their filesystem root path, 37651a2bd2fSSevan Janiyanthe unmount request will be forwarded to the primary mount path. 3775fe58019SAttilio RaoIn general, unmounting by device name is less error-prone than by mount path 3785fe58019SAttilio Rao(although the latter will also work under normal circumstances). 3795fe58019SAttilio Rao.Pp 3805fe58019SAttilio RaoIf the daemon is specified via the 3815fe58019SAttilio Rao.Fl D 3825fe58019SAttilio Raoand 3835fe58019SAttilio Rao.Fl O 3845fe58019SAttilio Raooptions, it will be invoked via 3855fe58019SAttilio Rao.Xr system 3 , 3865fe58019SAttilio Raoand the daemon's command line will also have an 3875fe58019SAttilio Rao.Dq & 38833656abeSJoel Dahlcontrol operator appended, so that we do not have to wait for its termination. 3895fe58019SAttilio RaoYou should use a simple command line when invoking the daemon via these options. 3905fe58019SAttilio Rao.Sh BUGS 3915fe58019SAttilio Rao.Ar special 3925fe58019SAttilio Raois treated as a multiplexer if and only if it is literally the same as 3935fe58019SAttilio Rao.Pa auto 3945fe58019SAttilio Raoor 3955fe58019SAttilio Rao.Pa /dev/fuse . 3965fe58019SAttilio RaoOther paths which are equivalent with 3975fe58019SAttilio Rao.Pa /dev/fuse 3985fe58019SAttilio Rao(eg., 3995fe58019SAttilio Rao.Pa /../dev/fuse ) 4005fe58019SAttilio Raoare not. 401