NAME¶
gnop —
control utility for NOP GEOM
class
SYNOPSIS¶
gnop |
create [-v]
[-e error]
[-o
offset]
[-r
rfailprob]
[-s size]
[-S
secsize]
[-w
wfailprob] dev ... |
gnop |
configure
[-v]
[-e error]
[-r
rfailprob]
[-w
wfailprob] prov
... |
gnop |
destroy
[-fv] prov
... |
DESCRIPTION¶
The
gnop utility is used for setting up transparent providers
on existing ones. Its main purpose is testing other GEOM classes, as it allows
forced provider removal and I/O error simulation with a given probability. It
also gathers the following statistics: number of read requests, number of
write requests, number of bytes read and number of bytes written. In addition,
it can be used as a good starting point for implementing new GEOM classes.
The first argument to
gnop indicates an action to be
performed:
- create
- Set up a transparent provider on the given devices. If the
operation succeeds, the new provider should appear with name
/dev/⟨dev⟩.nop.
The kernel module geom_nop.ko will be loaded if it is
not loaded already.
- configure
- Configure existing transparent provider. At the moment it
is only used for changing failure probability.
- destroy
- Turn off the given transparent providers.
- reset
- Reset statistics for the given transparent providers.
- list
- See geom(8).
- status
- See geom(8).
- load
- See geom(8).
- unload
- See geom(8).
Additional options:
- -e
error
- Specifies the error number to return on failure.
- -f
- Force the removal of the specified provider.
- -o
offset
- Where to begin on the original provider.
- -r
rfailprob
- Specifies read failure probability in percent.
- -s
size
- Size of the transparent provider.
- -S
secsize
- Sector size of the transparent provider.
- -w
wfailprob
- Specifies write failure probability in percent.
- -v
- Be more verbose.
SYSCTL VARIABLES¶
The following
sysctl(8) variables can be used to control the
behavior of the
NOP GEOM class. The default value is shown
next to each variable.
- kern.geom.nop.debug:
0
- Debug level of the NOP GEOM class. This
can be set to a number between 0 and 2 inclusive. If set to 0 minimal
debug information is printed, and if set to 2 the maximum amount of debug
information is printed.
EXIT STATUS¶
Exit status is 0 on success, and 1 if the command fails.
EXAMPLES¶
The following example shows how to create a transparent provider for disk
/dev/da0 with 50% write failure probability, and how to
destroy it.
gnop create -v -w 50 da0
gnop destroy -v da0.nop
The traffic statistics for the given transparent providers can be obtained with
the
list command. The example below shows the number of
bytes written with
newfs(8):
gnop create da0
newfs /dev/da0.nop
gnop list
SEE ALSO¶
geom(4),
geom(8)
HISTORY¶
The
gnop utility appeared in
FreeBSD
5.3.
AUTHORS¶
Pawel Jakub Dawidek
⟨pjd@FreeBSD.org⟩