1*e4b0a90eSBrooks Davis.\"- 2*e4b0a90eSBrooks Davis.\" Copyright (c) 2010 Edward Tomasz Napierala 3*e4b0a90eSBrooks Davis.\" 4*e4b0a90eSBrooks Davis.\" Redistribution and use in source and binary forms, with or without 5*e4b0a90eSBrooks Davis.\" modification, are permitted provided that the following conditions 6*e4b0a90eSBrooks Davis.\" are met: 7*e4b0a90eSBrooks Davis.\" 1. Redistributions of source code must retain the above copyright 8*e4b0a90eSBrooks Davis.\" notice, this list of conditions and the following disclaimer. 9*e4b0a90eSBrooks Davis.\" 2. Redistributions in binary form must reproduce the above copyright 10*e4b0a90eSBrooks Davis.\" notice, this list of conditions and the following disclaimer in the 11*e4b0a90eSBrooks Davis.\" documentation and/or other materials provided with the distribution. 12*e4b0a90eSBrooks Davis.\" 13*e4b0a90eSBrooks Davis.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14*e4b0a90eSBrooks Davis.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15*e4b0a90eSBrooks Davis.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16*e4b0a90eSBrooks Davis.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17*e4b0a90eSBrooks Davis.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18*e4b0a90eSBrooks Davis.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19*e4b0a90eSBrooks Davis.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20*e4b0a90eSBrooks Davis.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21*e4b0a90eSBrooks Davis.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22*e4b0a90eSBrooks Davis.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23*e4b0a90eSBrooks Davis.\" SUCH DAMAGE. 24*e4b0a90eSBrooks Davis.\" 25*e4b0a90eSBrooks Davis.Dd May 18, 2015 26*e4b0a90eSBrooks Davis.Dt GMOUNTVER 8 27*e4b0a90eSBrooks Davis.Os 28*e4b0a90eSBrooks Davis.Sh NAME 29*e4b0a90eSBrooks Davis.Nm gmountver 30*e4b0a90eSBrooks Davis.Nd "control utility for disk mount verification GEOM class" 31*e4b0a90eSBrooks Davis.Sh SYNOPSIS 32*e4b0a90eSBrooks Davis.Nm 33*e4b0a90eSBrooks Davis.Cm create 34*e4b0a90eSBrooks Davis.Op Fl v 35*e4b0a90eSBrooks Davis.Ar prov ... 36*e4b0a90eSBrooks Davis.Nm 37*e4b0a90eSBrooks Davis.Cm destroy 38*e4b0a90eSBrooks Davis.Op Fl fv 39*e4b0a90eSBrooks Davis.Ar name 40*e4b0a90eSBrooks Davis.Nm 41*e4b0a90eSBrooks Davis.Cm list 42*e4b0a90eSBrooks Davis.Nm 43*e4b0a90eSBrooks Davis.Cm status 44*e4b0a90eSBrooks Davis.Op Fl s Ar name 45*e4b0a90eSBrooks Davis.Nm 46*e4b0a90eSBrooks Davis.Cm load 47*e4b0a90eSBrooks Davis.Op Fl v 48*e4b0a90eSBrooks Davis.Nm 49*e4b0a90eSBrooks Davis.Cm unload 50*e4b0a90eSBrooks Davis.Op Fl v 51*e4b0a90eSBrooks Davis.Sh DESCRIPTION 52*e4b0a90eSBrooks DavisThe 53*e4b0a90eSBrooks Davis.Nm 54*e4b0a90eSBrooks Davisutility is used to control the mount verification GEOM class. 55*e4b0a90eSBrooks DavisWhen configured, it passes all the I/O requests to the underlying provider. 56*e4b0a90eSBrooks DavisWhen the underlying provider disappears - for example because the disk device 57*e4b0a90eSBrooks Davisgot disconnected - it queues all the I/O requests and waits for the provider 58*e4b0a90eSBrooks Davisto reappear. 59*e4b0a90eSBrooks DavisWhen that happens, it attaches to it and sends the queued requests. 60*e4b0a90eSBrooks Davis.Pp 61*e4b0a90eSBrooks DavisThe first argument to 62*e4b0a90eSBrooks Davis.Nm 63*e4b0a90eSBrooks Davisindicates an action to be performed: 64*e4b0a90eSBrooks Davis.Bl -tag -width ".Cm destroy" 65*e4b0a90eSBrooks Davis.It Cm create 66*e4b0a90eSBrooks DavisEnable mount verification for the given provider. 67*e4b0a90eSBrooks DavisIf the operation succeeds, a new GEOM provider will be created using the 68*e4b0a90eSBrooks Davisgiven provider's name with a 69*e4b0a90eSBrooks Davis.Ql .mountver 70*e4b0a90eSBrooks Davissuffix. 71*e4b0a90eSBrooks DavisThe kernel module 72*e4b0a90eSBrooks Davis.Pa geom_mountver.ko 73*e4b0a90eSBrooks Daviswill be loaded if it is not loaded already. 74*e4b0a90eSBrooks Davis.It Cm destroy 75*e4b0a90eSBrooks DavisDestroy 76*e4b0a90eSBrooks Davis.Ar name . 77*e4b0a90eSBrooks Davis.It Cm list 78*e4b0a90eSBrooks DavisSee 79*e4b0a90eSBrooks Davis.Xr geom 8 . 80*e4b0a90eSBrooks Davis.It Cm status 81*e4b0a90eSBrooks DavisSee 82*e4b0a90eSBrooks Davis.Xr geom 8 . 83*e4b0a90eSBrooks Davis.It Cm load 84*e4b0a90eSBrooks DavisSee 85*e4b0a90eSBrooks Davis.Xr geom 8 . 86*e4b0a90eSBrooks Davis.It Cm unload 87*e4b0a90eSBrooks DavisSee 88*e4b0a90eSBrooks Davis.Xr geom 8 . 89*e4b0a90eSBrooks Davis.El 90*e4b0a90eSBrooks Davis.Pp 91*e4b0a90eSBrooks DavisAdditional options: 92*e4b0a90eSBrooks Davis.Bl -tag -width indent 93*e4b0a90eSBrooks Davis.It Fl f 94*e4b0a90eSBrooks DavisForce the removal of the specified mountver device. 95*e4b0a90eSBrooks Davis.It Fl v 96*e4b0a90eSBrooks DavisBe more verbose. 97*e4b0a90eSBrooks Davis.El 98*e4b0a90eSBrooks Davis.Sh SYSCTL VARIABLES 99*e4b0a90eSBrooks DavisThe following 100*e4b0a90eSBrooks Davis.Xr sysctl 8 101*e4b0a90eSBrooks Davisvariables can be used to control the behavior of the 102*e4b0a90eSBrooks Davis.Nm MOUNTVER 103*e4b0a90eSBrooks DavisGEOM class. 104*e4b0a90eSBrooks DavisThe default value is shown next to each variable. 105*e4b0a90eSBrooks Davis.Bl -tag -width indent 106*e4b0a90eSBrooks Davis.It Va kern.geom.mountver.debug : No 0 107*e4b0a90eSBrooks DavisDebug level of the 108*e4b0a90eSBrooks Davis.Nm MOUNTVER 109*e4b0a90eSBrooks DavisGEOM class. 110*e4b0a90eSBrooks DavisThis can be set to a number between 0 and 3 inclusive. 111*e4b0a90eSBrooks DavisIf set to 0 minimal debug information is printed, and if set to 3 the 112*e4b0a90eSBrooks Davismaximum amount of debug information is printed. 113*e4b0a90eSBrooks Davis.It Va kern.geom.mountver.check_ident : No 1 114*e4b0a90eSBrooks DavisThis can be set to 0 or 1. 115*e4b0a90eSBrooks DavisIf set to 0, 116*e4b0a90eSBrooks Davis.Nm 117*e4b0a90eSBrooks Daviswill reattach to the device even if the device reports a different disk ID. 118*e4b0a90eSBrooks Davis.El 119*e4b0a90eSBrooks Davis.Sh EXIT STATUS 120*e4b0a90eSBrooks DavisExit status is 0 on success, and 1 if the command fails. 121*e4b0a90eSBrooks Davis.Sh SEE ALSO 122*e4b0a90eSBrooks Davis.Xr geom 4 , 123*e4b0a90eSBrooks Davis.Xr geom 8 124*e4b0a90eSBrooks Davis.Sh HISTORY 125*e4b0a90eSBrooks DavisThe 126*e4b0a90eSBrooks Davis.Nm 127*e4b0a90eSBrooks Davisutility appeared in 128*e4b0a90eSBrooks Davis.Fx 9.0 . 129*e4b0a90eSBrooks Davis.Sh AUTHORS 130*e4b0a90eSBrooks Davis.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org 131