xref: /freebsd/sbin/ggate/ggatel/ggatel.8 (revision 4f2ef756a404df70272b79c16fa7b1689cb0118b)
172a840f9SPawel Jakub Dawidek.\" Copyright (c) 2004 Pawel Jakub Dawidek <pjd@FreeBSD.org>
272a840f9SPawel Jakub Dawidek.\" All rights reserved.
372a840f9SPawel Jakub Dawidek.\"
472a840f9SPawel Jakub Dawidek.\" Redistribution and use in source and binary forms, with or without
572a840f9SPawel Jakub Dawidek.\" modification, are permitted provided that the following conditions
672a840f9SPawel Jakub Dawidek.\" are met:
772a840f9SPawel Jakub Dawidek.\" 1. Redistributions of source code must retain the above copyright
872a840f9SPawel Jakub Dawidek.\"    notice, this list of conditions and the following disclaimer.
972a840f9SPawel Jakub Dawidek.\" 2. Redistributions in binary form must reproduce the above copyright
1072a840f9SPawel Jakub Dawidek.\"    notice, this list of conditions and the following disclaimer in the
1172a840f9SPawel Jakub Dawidek.\"    documentation and/or other materials provided with the distribution.
1272a840f9SPawel Jakub Dawidek.\"
1372a840f9SPawel Jakub Dawidek.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
1472a840f9SPawel Jakub Dawidek.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1572a840f9SPawel Jakub Dawidek.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1672a840f9SPawel Jakub Dawidek.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
1772a840f9SPawel Jakub Dawidek.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
1872a840f9SPawel Jakub Dawidek.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
1972a840f9SPawel Jakub Dawidek.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2072a840f9SPawel Jakub Dawidek.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2172a840f9SPawel Jakub Dawidek.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2272a840f9SPawel Jakub Dawidek.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2372a840f9SPawel Jakub Dawidek.\" SUCH DAMAGE.
2472a840f9SPawel Jakub Dawidek.\"
250fcf43f6SAllan Jude.Dd September 8, 2016
2672a840f9SPawel Jakub Dawidek.Dt GGATEL 8
2772a840f9SPawel Jakub Dawidek.Os
2872a840f9SPawel Jakub Dawidek.Sh NAME
2972a840f9SPawel Jakub Dawidek.Nm ggatel
3072a840f9SPawel Jakub Dawidek.Nd "GEOM Gate local control utility"
3172a840f9SPawel Jakub Dawidek.Sh SYNOPSIS
3272a840f9SPawel Jakub Dawidek.Nm
3356608006SRuslan Ermilov.Cm create
3472a840f9SPawel Jakub Dawidek.Op Fl v
35*1b1e392aSDavid E. Cross.Oo Fl o option Oc ...
3672a840f9SPawel Jakub Dawidek.Op Fl s Ar sectorsize
3772a840f9SPawel Jakub Dawidek.Op Fl t Ar timeout
3872a840f9SPawel Jakub Dawidek.Op Fl u Ar unit
3972a840f9SPawel Jakub Dawidek.Ar path
4072a840f9SPawel Jakub Dawidek.Nm
4156608006SRuslan Ermilov.Cm destroy
4272a840f9SPawel Jakub Dawidek.Op Fl f
4372a840f9SPawel Jakub Dawidek.Fl u Ar unit
4472a840f9SPawel Jakub Dawidek.Nm
4556608006SRuslan Ermilov.Cm list
4672a840f9SPawel Jakub Dawidek.Op Fl v
4772a840f9SPawel Jakub Dawidek.Op Fl u Ar unit
487d49cdebSJason Helfman.Nm
497d49cdebSJason Helfman.Cm rescue
507d49cdebSJason Helfman.Op Fl v
51*1b1e392aSDavid E. Cross.Oo Fl o option Oc ...
527d49cdebSJason Helfman.Fl u Ar unit
537d49cdebSJason Helfman.Ar path
5472a840f9SPawel Jakub Dawidek.Sh DESCRIPTION
5572a840f9SPawel Jakub DawidekThe
5672a840f9SPawel Jakub Dawidek.Nm
5772a840f9SPawel Jakub Dawidekutility is a local GEOM Gate class consumer.
5872a840f9SPawel Jakub DawidekIt can be used as a replacement for
5972a840f9SPawel Jakub Dawidek.Xr md 4
6072a840f9SPawel Jakub Dawidekdevices or as a
6172a840f9SPawel Jakub Dawidek.Dq GEOMificator
6256608006SRuslan Ermilovfor non GEOM-aware devices, but it was mainly created as an example
63b29fdbd8SChristian Bruefferon how to use and how to communicate with the GEOM Gate kernel subsystem.
6472a840f9SPawel Jakub Dawidek.Pp
6572a840f9SPawel Jakub DawidekAvailable commands:
6656608006SRuslan Ermilov.Bl -tag -width ".Cm destroy"
6756608006SRuslan Ermilov.It Cm create
6872a840f9SPawel Jakub DawidekCreate a
6972a840f9SPawel Jakub Dawidek.Nm ggate
7072a840f9SPawel Jakub Dawidekprovider related to the given regular file or device.
7156608006SRuslan Ermilov.It Cm destroy
7272a840f9SPawel Jakub DawidekDestroy the given
7372a840f9SPawel Jakub Dawidek.Nm ggate
7472a840f9SPawel Jakub Dawidekprovider.
7556608006SRuslan Ermilov.It Cm list
7672a840f9SPawel Jakub DawidekList
7772a840f9SPawel Jakub Dawidek.Nm ggate
7872a840f9SPawel Jakub Dawidekproviders.
797d49cdebSJason Helfman.It Cm rescue
807d49cdebSJason HelfmanTake over a previously created provider and handle pending and future
810fcf43f6SAllan Juderequests.
820fcf43f6SAllan JudeThis is useful if the initial
837d49cdebSJason Helfman.Nm
84b29fdbd8SChristian Bruefferprocess died.
85b29fdbd8SChristian BruefferTo prevent data loss, the given path must lead to the
867d49cdebSJason Helfmanregular file or device that was used to create the provider.
8772a840f9SPawel Jakub Dawidek.El
8872a840f9SPawel Jakub Dawidek.Pp
8972a840f9SPawel Jakub DawidekAvailable options:
9056608006SRuslan Ermilov.Bl -tag -width ".Fl s Cm ro | wo | rw"
9172a840f9SPawel Jakub Dawidek.It Fl f
9272a840f9SPawel Jakub DawidekForcibly destroy
9372a840f9SPawel Jakub Dawidek.Nm ggate
9472a840f9SPawel Jakub Dawidekprovider (cancels all pending requests).
95*1b1e392aSDavid E. Cross.It Fl o Ar option
96*1b1e392aSDavid E. CrossSpecify permissions and options to use when opening the file or device.
97*1b1e392aSDavid E. Cross.Bl -tag -width indent
98*1b1e392aSDavid E. Cross.It Cm ro
99*1b1e392aSDavid E. Crossread-only
100*1b1e392aSDavid E. Cross.It Cm wo
10156608006SRuslan Ermilovwrite-only
102*1b1e392aSDavid E. Cross.It Cm rw
103*1b1e392aSDavid E. Crossread-write
104*1b1e392aSDavid E. Cross.It Cm direct
105*1b1e392aSDavid E. Crossopen with
106*1b1e392aSDavid E. Cross.Dv O_DIRECT
107*1b1e392aSDavid E. Crossoption on the file
108*1b1e392aSDavid E. Cross.El
109*1b1e392aSDavid E. Cross.Pp
11072a840f9SPawel Jakub DawidekDefault is
11156608006SRuslan Ermilov.Cm rw .
11272a840f9SPawel Jakub Dawidek.It Fl s Ar sectorsize
11372a840f9SPawel Jakub DawidekSector size for
11472a840f9SPawel Jakub Dawidek.Nm ggate
11572a840f9SPawel Jakub Dawidekprovider.
116b29fdbd8SChristian BruefferIf not specified, it is taken from the device, or set to 512 bytes for files.
11772a840f9SPawel Jakub Dawidek.It Fl t Ar timeout
11872a840f9SPawel Jakub DawidekNumber of seconds to wait before an I/O request will be canceled.
11972a840f9SPawel Jakub Dawidek0 means no timeout.
12072a840f9SPawel Jakub DawidekDefault is 30.
12172a840f9SPawel Jakub Dawidek.It Fl u Ar unit
12272a840f9SPawel Jakub DawidekUnit number to use.
12372a840f9SPawel Jakub Dawidek.It Fl v
1247d49cdebSJason HelfmanDo not fork, run in foreground and print debug information on standard
12572a840f9SPawel Jakub Dawidekoutput.
12672a840f9SPawel Jakub Dawidek.It Ar path
12772a840f9SPawel Jakub DawidekPath to a regular file or device.
12872a840f9SPawel Jakub Dawidek.El
1296087df9eSRuslan Ermilov.Sh EXIT STATUS
1306087df9eSRuslan ErmilovExit status is 0 on success, or 1 if the command fails.
1316087df9eSRuslan ErmilovTo get details about the failure,
1326087df9eSRuslan Ermilov.Nm
1336087df9eSRuslan Ermilovshould be called with the
1346087df9eSRuslan Ermilov.Fl v
1356087df9eSRuslan Ermilovoption.
13672a840f9SPawel Jakub Dawidek.Sh SEE ALSO
13772a840f9SPawel Jakub Dawidek.Xr geom 4 ,
13872a840f9SPawel Jakub Dawidek.Xr ggatec 8 ,
13972a840f9SPawel Jakub Dawidek.Xr ggated 8 ,
14072a840f9SPawel Jakub Dawidek.Xr mount 8 ,
14172a840f9SPawel Jakub Dawidek.Xr newfs 8
1420fcf43f6SAllan Jude.Sh HISTORY
1430fcf43f6SAllan JudeThe
1440fcf43f6SAllan Jude.Nm
1450fcf43f6SAllan Judeutility appeared in
1460fcf43f6SAllan Jude.Fx 5.3 .
14772a840f9SPawel Jakub Dawidek.Sh AUTHORS
14872a840f9SPawel Jakub DawidekThe
14972a840f9SPawel Jakub Dawidek.Nm
15072a840f9SPawel Jakub Dawidekutility as well as this manual page was written by
151bd0891ceSBaptiste Daroussin.An Pawel Jakub Dawidek Aq Mt pjd@FreeBSD.org .
152