xref: /freebsd/sbin/ggate/ggatel/ggatel.8 (revision 2cf0c51793da5a2fc03db8990fc2feb3f9aa119f)
1.\" Copyright (c) 2004 Pawel Jakub Dawidek <pjd@FreeBSD.org>
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.Dd September 8, 2016
26.Dt GGATEL 8
27.Os
28.Sh NAME
29.Nm ggatel
30.Nd "GEOM Gate local control utility"
31.Sh SYNOPSIS
32.Nm
33.Cm create
34.Op Fl v
35.Op Fl o Cm ro | wo | rw
36.Op Fl s Ar sectorsize
37.Op Fl t Ar timeout
38.Op Fl u Ar unit
39.Ar path
40.Nm
41.Cm destroy
42.Op Fl f
43.Fl u Ar unit
44.Nm
45.Cm list
46.Op Fl v
47.Op Fl u Ar unit
48.Nm
49.Cm rescue
50.Op Fl v
51.Op Fl o Cm ro | wo | rw
52.Fl u Ar unit
53.Ar path
54.Sh DESCRIPTION
55The
56.Nm
57utility is a local GEOM Gate class consumer.
58It can be used as a replacement for
59.Xr md 4
60devices or as a
61.Dq GEOMificator
62for non GEOM-aware devices, but it was mainly created as an example
63on how to use and how to communicate with the GEOM Gate kernel subsystem.
64.Pp
65Available commands:
66.Bl -tag -width ".Cm destroy"
67.It Cm create
68Create a
69.Nm ggate
70provider related to the given regular file or device.
71.It Cm destroy
72Destroy the given
73.Nm ggate
74provider.
75.It Cm list
76List
77.Nm ggate
78providers.
79.It Cm rescue
80Take over a previously created provider and handle pending and future
81requests.
82This is useful if the initial
83.Nm
84process died.
85To prevent data loss, the given path must lead to the
86regular file or device that was used to create the provider.
87.El
88.Pp
89Available options:
90.Bl -tag -width ".Fl s Cm ro | wo | rw"
91.It Fl f
92Forcibly destroy
93.Nm ggate
94provider (cancels all pending requests).
95.It Fl o Cm ro | wo | rw
96Specify permissions to use when opening the file or device: read-only
97.Pq Cm ro ,
98write-only
99.Pq Cm wo ,
100or read-write
101.Pq Cm rw .
102Default is
103.Cm rw .
104.It Fl s Ar sectorsize
105Sector size for
106.Nm ggate
107provider.
108If not specified, it is taken from the device, or set to 512 bytes for files.
109.It Fl t Ar timeout
110Number of seconds to wait before an I/O request will be canceled.
1110 means no timeout.
112Default is 30.
113.It Fl u Ar unit
114Unit number to use.
115.It Fl v
116Do not fork, run in foreground and print debug information on standard
117output.
118.It Ar path
119Path to a regular file or device.
120.El
121.Sh EXIT STATUS
122Exit status is 0 on success, or 1 if the command fails.
123To get details about the failure,
124.Nm
125should be called with the
126.Fl v
127option.
128.Sh EXAMPLES
129.Dq GEOMify
130the
131.Dq Li fd0
132device and use
133.Xr gbde 8
134to encrypt data on a floppy disk.
135.Bd -literal -offset indent
136ggatel create -u 5 /dev/fd0
137gbde init /dev/ggate5
138gbde attach ggate5
139newfs /dev/ggate5.bde
140mount /dev/ggate5.bde /secret
141cp /private/foo /secret/
142umount /secret
143gbde detach ggate5
144ggatel destroy -u 5
145.Ed
146.Sh SEE ALSO
147.Xr geom 4 ,
148.Xr gbde 8 ,
149.Xr ggatec 8 ,
150.Xr ggated 8 ,
151.Xr mount 8 ,
152.Xr newfs 8
153.Sh HISTORY
154The
155.Nm
156utility appeared in
157.Fx 5.3 .
158.Sh AUTHORS
159The
160.Nm
161utility as well as this manual page was written by
162.An Pawel Jakub Dawidek Aq Mt pjd@FreeBSD.org .
163