Create mount.zfs, zinject, and zpios man pages.
And update the automake templates to install them. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #518
This commit is contained in:
parent
5cd0add214
commit
cf2129e6dc
|
@ -64,6 +64,7 @@ AC_CONFIG_FILES([
|
|||
etc/init.d/Makefile
|
||||
etc/zfs/Makefile
|
||||
man/Makefile
|
||||
man/man1/Makefile
|
||||
man/man5/Makefile
|
||||
man/man8/Makefile
|
||||
lib/Makefile
|
||||
|
|
|
@ -1 +1 @@
|
|||
SUBDIRS = man5 man8
|
||||
SUBDIRS = man1 man5 man8
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
man_MANS = zpios.1 ztest.1
|
||||
EXTRA_DIST = $(man_MANS)
|
||||
|
||||
install-data-local:
|
||||
$(INSTALL) -d -m 0755 "$(DESTDIR)$(mandir)/man1"
|
|
@ -0,0 +1,210 @@
|
|||
'\" t
|
||||
.\"
|
||||
.\" CDDL HEADER START
|
||||
.\"
|
||||
.\" The contents of this file are subject to the terms of the
|
||||
.\" Common Development and Distribution License (the "License").
|
||||
.\" You may not use this file except in compliance with the License.
|
||||
.\"
|
||||
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
||||
.\" or http://www.opensolaris.org/os/licensing.
|
||||
.\" See the License for the specific language governing permissions
|
||||
.\" and limitations under the License.
|
||||
.\"
|
||||
.\" When distributing Covered Code, include this CDDL HEADER in each
|
||||
.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
||||
.\" If applicable, add the following below this CDDL HEADER, with the
|
||||
.\" fields enclosed by brackets "[]" replaced with your own identifying
|
||||
.\" information: Portions Copyright [yyyy] [name of copyright owner]
|
||||
.\"
|
||||
.\" CDDL HEADER END
|
||||
.\"
|
||||
.\"
|
||||
.\" Copyright 2013 Darik Horn <dajhorn@vanadac.com>. All rights reserved.
|
||||
.\"
|
||||
.TH zpios 1 "2013 FEB 28" "ZFS on Linux" "User Commands"
|
||||
|
||||
.SH NAME
|
||||
zpios \- Directly test the DMU.
|
||||
.SH SYNOPSIS
|
||||
.LP
|
||||
.BI "zpios [options] <\-p " pool ">"
|
||||
|
||||
.SH DESCRIPTION
|
||||
This utility runs in-kernel DMU performance and stress tests that do
|
||||
not depend on the ZFS Posix Layer ("ZPL").
|
||||
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
.BI "\-s" " regex" ", \-\-threadcount" " regex"
|
||||
.IP
|
||||
Start this many threads for each test series, specified as a comma
|
||||
delimited regular expression. (eg: "-s 1,2,3")
|
||||
.IP
|
||||
This option is mutually exclusive with the \fBthreadcount_*\fR
|
||||
options.
|
||||
.HP
|
||||
.BI "\-l" " regex_low" ", \-\-threadcount_low" " regex_low"
|
||||
.HP
|
||||
.BI "\-h" " regex_high" ", \-\-threadcount_high" " regex_high"
|
||||
.HP
|
||||
.BI "\-e" " regex_incr" ", \-\-threadcount_incr" " regex_incr"
|
||||
.IP
|
||||
Start \fIregex_low\fR threads for the first test,
|
||||
add \fIregex_incr\fR threads for each subsequent test,
|
||||
and start \fIregex_high\fR threads for the last test.
|
||||
.IP
|
||||
These three options must be specified together and are mutually
|
||||
exclusive with the \fBthreadcount\fR option.
|
||||
.HP
|
||||
.BI "\-n" " regex" ", \-\-regioncount" " regex"
|
||||
.IP
|
||||
Create this many regions for each test series, specified as a comma
|
||||
delimited regular expression. (eg: "-n 512,4096,65536")
|
||||
.IP
|
||||
This option is mutually exclusive with the \fBregioncount_*\fR
|
||||
options.
|
||||
.HP
|
||||
.BI "\-i" " regex_low" ", \-\-regioncount_low" " regex_low"
|
||||
.HP
|
||||
.BI "\-j" " regex_high" ", \-\-regioncount_high" " regex_high"
|
||||
.HP
|
||||
.BI "\-k" " regex_incr" ", \-\-regioncount_incr" " regex_incr"
|
||||
.IP
|
||||
Create \fIregex_low\fR regions for the first test,
|
||||
add \fIregex_incr\fR regions for each subsequent test, and
|
||||
create \fIregex_high\fR regions for the last test.
|
||||
.IP
|
||||
These three options must be specified together and are mutually
|
||||
exclusive with the \fBregioncount\fR option.
|
||||
.HP
|
||||
.BI "\-o" " size" ", \-\-offset" " size"
|
||||
.IP
|
||||
Create regions at \fIsize\fR offset for each test series, specified as
|
||||
a comma delimited regular expression with an optional unit suffix.
|
||||
(eg: "-o 4M" means four megabytes.)
|
||||
.IP
|
||||
This option is mutually exclusive with the \fBoffset_*\fR options.
|
||||
.HP
|
||||
.BI "\-m" " size_low" ", \-\-offset_low" " size_low"
|
||||
.HP
|
||||
.BI "\-q" " size_high" ", \-\-offset_high" " size_high"
|
||||
.HP
|
||||
.BI "\-r" " size_incr" ", \-\-offset_incr" " size_incr"
|
||||
.IP
|
||||
Create a region at \fIsize_low\fR offset for the first test, add
|
||||
\fIsize_incr\fR to the offset for each subsequent test, and create
|
||||
a region at \fIsize_high\fR offset for the last test.
|
||||
.IP
|
||||
These three options must be specified together and are mutually
|
||||
exclusive with the \fBoffset\fR option.
|
||||
.HP
|
||||
.BI "\-c" " size" ", \-\-chunksize" " size"
|
||||
.IP
|
||||
Use \fIsize\fR chunks for each test, specified as a comma delimited
|
||||
regular expression with an optional unit suffix. (eg: "-c 1M" means
|
||||
one megabyte.) The chunk size must be at least the region size.
|
||||
.IP
|
||||
This option is mutually exclusive with the \fBchunksize_*\fB options.
|
||||
.HP
|
||||
.BI "\-a" " size_low" ", \-\-chunksize_low" " size_low"
|
||||
.HP
|
||||
.BI "\-b" " size_high" ", \-\-chunksize_high" " size_high"
|
||||
.HP
|
||||
.BI "\-g" " size_incr" ", \-\-chunksize_incr" " size_incr"
|
||||
.IP
|
||||
Use a \fIsize_low\fR chunk size for the first test, add \fIsize_incr\fR
|
||||
to the chunk size for each subsequent test, and use a \fIsize_high\fR
|
||||
chunk size for the last test.
|
||||
.IP
|
||||
These three options must be specified together and are mutually
|
||||
exclusive with the \fBchunksize\fR option.
|
||||
.HP
|
||||
.BI "\-L" " dmu_flags" ", \-\-load" " dmu_flags"
|
||||
.IP
|
||||
Specify \fIdmuio\fR for regular DMU_IO, \fIssf\fR for single shared
|
||||
file access, or \fIfpp\fR for per thread access. Use commas to delimit
|
||||
multiple flags. (eg: "-L dmuio,ssf")
|
||||
.HP
|
||||
.BI "\-p" " name" ", \-\-pool" " name"
|
||||
.IP
|
||||
The pool name, which is mandatory.
|
||||
.HP
|
||||
.BI "\-M" " test" ", \-\-name" " test"
|
||||
.IP
|
||||
An arbitrary string that appears in the program output.
|
||||
.HP
|
||||
.BI "-x, \-\-cleanup"
|
||||
.IP
|
||||
Enable the DMU_REMOVE flag.
|
||||
.HP
|
||||
.BI "\-P" " command" ", \-\-prerun" " command"
|
||||
.IP
|
||||
Invoke \fIcommand\fR from the kernel before running the test. Shell
|
||||
expansion is not performed and the environment is set to
|
||||
HOME=/; TERM=linux; PATH=/sbin:/usr/sbin:/bin:/usr/bin.
|
||||
.HP
|
||||
.BI "\-R" " command" ", \-\-postrun" " command"
|
||||
.IP
|
||||
Invoke \fIcommand\fR from the kernel after running the test. Shell
|
||||
expansion is not performed and the environment is set to
|
||||
HOME=/; TERM=linux; PATH=/sbin:/usr/sbin:/bin:/usr/bin.
|
||||
.HP
|
||||
.BI "\-G" " directory" ", \-\-log" " directory"
|
||||
.IP
|
||||
Put logging output in this directory.
|
||||
.HP
|
||||
.BI "\-I" " size" ", \-\-regionnoise" " size"
|
||||
.IP
|
||||
Randomly vary the \fBregionsize\fR parameter for each test
|
||||
modulo \fIsize\fR bytes.
|
||||
.HP
|
||||
.BI "\-N" " size" ", \-\-chunknoise" " size"
|
||||
.IP
|
||||
Randomly vary the \fBchunksize\fR parameter for each test
|
||||
modulo \fIsize\fR bytes.
|
||||
.HP
|
||||
.BI "\-T" " time" ", \-\-threaddelay" " time"
|
||||
.IP
|
||||
Randomly vary the execution time for each test
|
||||
modulo \fItime\fR kernel jiffies.
|
||||
.HP
|
||||
.BI "\-V" "" ", \-\-verify" ""
|
||||
.IP
|
||||
Enable the DMU_VERIFY flag for trivial data verification.
|
||||
.HP
|
||||
.BI "\-z" "" ", \-\-zerocopy" ""
|
||||
.IP
|
||||
Enable the DMU_READ_ZC and DMU_WRITE_ZC flags, which are
|
||||
currently unimplemented for Linux.
|
||||
.IP
|
||||
.HP
|
||||
.BI "\-O" "" ", \-\-nowait" ""
|
||||
.IP
|
||||
Enable the DMU_WRITE_NOWAIT flag.
|
||||
.HP
|
||||
.BI "\-f" "" ", \-\-noprefetch" ""
|
||||
.IP
|
||||
Enable the DMU_READ_NOPF flag.
|
||||
.HP
|
||||
.BI "\-H" "" ", \-\-human\-readable" ""
|
||||
.IP
|
||||
Print PASS and FAIL results explicitly and put unit suffixes on large
|
||||
numbers.
|
||||
.HP
|
||||
.BI "\-v" "" ", \-\-verbose" ""
|
||||
.IP
|
||||
Increase output verbosity.
|
||||
.HP
|
||||
.BI "\-?" " " ", \-\-help" " "
|
||||
.IP
|
||||
Print the usage message.
|
||||
.SH "AUTHORS"
|
||||
The original zpios implementation was created by Cluster File Systems
|
||||
Inc and adapted to ZFS on Linux by Brian Behlendorf
|
||||
<behlendorf1@llnl.gov>.
|
||||
|
||||
This man page was written by Darik Horn <dajhorn@vanadac.com>.
|
||||
.SH "SEE ALSO"
|
||||
.BR zpool (8),
|
||||
.BR zfs (8)
|
|
@ -1,4 +1,4 @@
|
|||
man_MANS = vdev_id.8 zdb.8 zfs.8 zpool.8 zstreamdump.8
|
||||
man_MANS = mount.zfs.8 vdev_id.8 zdb.8 zfs.8 zinject.8 zpool.8 zstreamdump.8
|
||||
EXTRA_DIST = $(man_MANS)
|
||||
|
||||
install-data-local:
|
||||
|
|
|
@ -0,0 +1,123 @@
|
|||
'\" t
|
||||
.\"
|
||||
.\" CDDL HEADER START
|
||||
.\"
|
||||
.\" The contents of this file are subject to the terms of the
|
||||
.\" Common Development and Distribution License (the "License").
|
||||
.\" You may not use this file except in compliance with the License.
|
||||
.\"
|
||||
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
||||
.\" or http://www.opensolaris.org/os/licensing.
|
||||
.\" See the License for the specific language governing permissions
|
||||
.\" and limitations under the License.
|
||||
.\"
|
||||
.\" When distributing Covered Code, include this CDDL HEADER in each
|
||||
.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
||||
.\" If applicable, add the following below this CDDL HEADER, with the
|
||||
.\" fields enclosed by brackets "[]" replaced with your own identifying
|
||||
.\" information: Portions Copyright [yyyy] [name of copyright owner]
|
||||
.\"
|
||||
.\" CDDL HEADER END
|
||||
.\"
|
||||
.\"
|
||||
.\" Copyright 2013 Darik Horn <dajhorn@vanadac.com>. All rights reserved.
|
||||
.\"
|
||||
.TH mount.zfs 8 "2013 FEB 28" "ZFS on Linux" "System Administration Commands"
|
||||
|
||||
.SH NAME
|
||||
mount.zfs \- mount a ZFS filesystem
|
||||
.SH SYNOPSIS
|
||||
.LP
|
||||
.BI "mount.zfs [\-sfnvh] [\-o " options "]" " dataset mountpoint
|
||||
|
||||
.SH DESCRIPTION
|
||||
.BR mount.zfs
|
||||
is part of the zfsutils package for Linux. It is a helper program that
|
||||
is usually invoked by the
|
||||
.BR mount (8)
|
||||
or
|
||||
.BR zfs (8)
|
||||
commands to mount a ZFS dataset.
|
||||
|
||||
All
|
||||
.I options
|
||||
are handled according to the FILESYSTEM INDEPENDENT MOUNT OPTIONS
|
||||
section in the
|
||||
.BR mount (8)
|
||||
manual, except for those described below.
|
||||
|
||||
The
|
||||
.I dataset
|
||||
parameter is a ZFS filesystem name, as output by the
|
||||
.B "zfs list -H -o name
|
||||
command. This parameter never has a leading slash character and is
|
||||
not a device name.
|
||||
|
||||
The
|
||||
.I mountpoint
|
||||
parameter is the path name of a directory.
|
||||
|
||||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BI "\-s"
|
||||
Ignore bad or sloppy mount options.
|
||||
.TP
|
||||
.BI "\-f"
|
||||
Do a fake mount; do not perform the mount operation.
|
||||
.TP
|
||||
.BI "\-n"
|
||||
Do not update the /etc/mtab file.
|
||||
.TP
|
||||
.BI "\-v"
|
||||
Increase verbosity.
|
||||
.TP
|
||||
.BI "\-h"
|
||||
Print the usage message.
|
||||
.TP
|
||||
.BI "\-o legacy"
|
||||
This private flag indicates that the
|
||||
.I dataset
|
||||
has an entry in the /etc/fstab file.
|
||||
.TP
|
||||
.BI "\-o noxattr"
|
||||
This private flag disables extended attributes.
|
||||
.TP
|
||||
.BI "\-o xattr
|
||||
This private flag enables extended attributes and, if appropriate,
|
||||
adds a ZFS context to the selinux system policy.
|
||||
.TP
|
||||
.BI "\-o zfsutil"
|
||||
This private flag indicates that
|
||||
.BR mount (8)
|
||||
is being called by the
|
||||
.BR zfs (8)
|
||||
command.
|
||||
|
||||
.SH NOTES
|
||||
ZFS conventionally requires that the
|
||||
.I mountpoint
|
||||
be an empty directory, but the Linux implementation inconsistently
|
||||
enforces the requirement.
|
||||
|
||||
The
|
||||
.BR mount.zfs
|
||||
helper does not mount the contents of zvols.
|
||||
|
||||
.SH FILES
|
||||
.TP 18n
|
||||
.I /etc/fstab
|
||||
The static filesystem table.
|
||||
.TP
|
||||
.I /etc/mtab
|
||||
The mounted filesystem table.
|
||||
.SH "AUTHORS"
|
||||
The primary author of
|
||||
.BR mount.zfs
|
||||
is Brian Behlendorf <behlendorf1@llnl.gov>.
|
||||
|
||||
This man page was written by Darik Horn <dajhorn@vanadac.com>.
|
||||
.SH "SEE ALSO"
|
||||
.BR fstab (5),
|
||||
.BR mount (8),
|
||||
.BR zfs (8)
|
|
@ -0,0 +1,146 @@
|
|||
'\" t
|
||||
.\"
|
||||
.\" CDDL HEADER START
|
||||
.\"
|
||||
.\" The contents of this file are subject to the terms of the
|
||||
.\" Common Development and Distribution License (the "License").
|
||||
.\" You may not use this file except in compliance with the License.
|
||||
.\"
|
||||
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
||||
.\" or http://www.opensolaris.org/os/licensing.
|
||||
.\" See the License for the specific language governing permissions
|
||||
.\" and limitations under the License.
|
||||
.\"
|
||||
.\" When distributing Covered Code, include this CDDL HEADER in each
|
||||
.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
||||
.\" If applicable, add the following below this CDDL HEADER, with the
|
||||
.\" fields enclosed by brackets "[]" replaced with your own identifying
|
||||
.\" information: Portions Copyright [yyyy] [name of copyright owner]
|
||||
.\"
|
||||
.\" CDDL HEADER END
|
||||
.\"
|
||||
.\"
|
||||
.\" Copyright 2013 Darik Horn <dajhorn@vanadac.com>. All rights reserved.
|
||||
.\"
|
||||
.TH zinject 8 "2013 FEB 28" "ZFS on Linux" "System Administration Commands"
|
||||
|
||||
.SH NAME
|
||||
zinject \- ZFS Fault Injector
|
||||
.SH DESCRIPTION
|
||||
.BR zinject
|
||||
creates artificial problems in a ZFS pool by simulating data corruption or device failures. This program is dangerous.
|
||||
.SH SYNOPSIS
|
||||
.TP
|
||||
.B "zinject"
|
||||
List injection records.
|
||||
.TP
|
||||
.B "zinject \-b \fIobjset:object:level:blkd\fB [\-f \fIfrequency\fB] [\-amu] \fIpool\fB"
|
||||
Force an error into the pool at a bookmark.
|
||||
.TP
|
||||
.B "zinject \-c <\fIid\fB | all>
|
||||
Cancel injection records.
|
||||
.TP
|
||||
.B "zinject \-d \fIvdev\fB \-A <degrade|fault> \fIpool\fB
|
||||
Force a vdev into the DEGRADED or FAULTED state.
|
||||
.TP
|
||||
.B "zinject \-d \fIvdev\fB [\-e \fIdevice_error\fB] [\-L \fIlabel_error\fB] [\-T \fIfailure\fB] [\-F] \fIpool\fB"
|
||||
Force a vdev error.
|
||||
.TP
|
||||
.B "zinject \-I [\-s \fIseconds\fB | \-g \fItxgs\fB] \fIpool\fB"
|
||||
Simulate a hardware failure that fails to honor a cache flush.
|
||||
.TP
|
||||
.B "zinject \-p \fIfunction\fB \fIpool\fB
|
||||
Panic inside the specified function.
|
||||
.TP
|
||||
.B "zinject \-t data [\-e \fIdevice_error\fB] [\-f \fIfrequency\fB] [\-l \fIlevel\fB] [\-r \fIrange\fB] [\-amq] \fIpath\fB"
|
||||
Force an error into the contents of a file.
|
||||
.TP
|
||||
.B "zinject \-t dnode [\-e \fIdevice_error\fB] [\-f \fIfrequency\fB] [\-l \fIlevel\fB] [\-amq] \fIpath\fB"
|
||||
Force an error into the metadnode for a file or directory.
|
||||
.TP
|
||||
.B "zinject \-t \fImos_type\fB [\-e \fIdevice_error\fB] [\-f \fIfrequency\fB] [\-l \fIlevel\fB] [\-r \fIrange\fB] [\-amqu] \fIpool\fB"
|
||||
Force an error into the MOS of a pool.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BI "\-a"
|
||||
Flush the ARC before injection.
|
||||
.TP
|
||||
.BI "\-b" " objset:object:level:start:end"
|
||||
Force an error into the pool at this bookmark tuple. Each number is
|
||||
in hexidecimal, and only one block can be specified.
|
||||
.TP
|
||||
.BI "\-d" " vdev"
|
||||
A vdev specified by path or GUID.
|
||||
.TP
|
||||
.BI "\-e" " device_error"
|
||||
Specify
|
||||
.BR "checksum" " for an ECKSUM error,"
|
||||
.BR "dtl" " for an ECHILD error,"
|
||||
.BR "io" " for an EIO error where reopening the device will succeed, or"
|
||||
.BR "nxio" " for an ENXIO error where reopening the device will fail."
|
||||
.TP
|
||||
.BI "\-f" " frequency"
|
||||
Only inject errors a fraction of the time. Expressed as an integer
|
||||
percentage between 1 and 100.
|
||||
.TP
|
||||
.BI "\-F"
|
||||
Fail faster. Do fewer checks.
|
||||
.TP
|
||||
.BI "\-g" " txgs"
|
||||
Run for this many transaction groups before reporting failure.
|
||||
.TP
|
||||
.BI "\-h"
|
||||
Print the usage message.
|
||||
.TP
|
||||
.BI "\-l" " level"
|
||||
Inject an error at a particular block level. The default is 0.
|
||||
.TP
|
||||
.BI "\-L" " label_error"
|
||||
Set the label error region to one of
|
||||
.BR " nvlist" ","
|
||||
.BR " pad1" ","
|
||||
.BR " pad2" ", or"
|
||||
.BR " uber" "."
|
||||
.TP
|
||||
.BI "\-m"
|
||||
Automatically remount the underlying filesystem.
|
||||
.TP
|
||||
.BI "\-q"
|
||||
Quiet mode. Only print the handler number added.
|
||||
.TP
|
||||
.BI "\-r" " range"
|
||||
Inject an error over a particular logical range of an object, which
|
||||
will be translated to the appropriate blkid range according to the
|
||||
object's properties.
|
||||
.TP
|
||||
.BI "\-s" " seconds"
|
||||
Run for this many seconds before reporting failure.
|
||||
.TP
|
||||
.BI "\-T" " failure"
|
||||
Set the failure type to one of
|
||||
.BR " all" ","
|
||||
.BR " claim" ","
|
||||
.BR " free" ","
|
||||
.BR " read" ", or"
|
||||
.BR " write" "."
|
||||
.TP
|
||||
.BI "\-t" " mos_type"
|
||||
Set this to
|
||||
.BR "mos " "for any data in the MOS,"
|
||||
.BR "mosdir " "for an object directory,"
|
||||
.BR "config " "for the pool configuration,"
|
||||
.BR "bpobj " "for the block pointer list,"
|
||||
.BR "spacemap " "for the space map,"
|
||||
.BR "metaslab " "for the metaslab, or"
|
||||
.BR "errlog " "for the persistent error log."
|
||||
.TP
|
||||
.BI "\-u"
|
||||
Unload the pool after injection.
|
||||
|
||||
.SH "AUTHORS"
|
||||
This man page was written by Darik Horn <dajhorn@vanadac.com>
|
||||
excerpting the \fBzinject\fR usage message and source code.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR zpool (8),
|
||||
.BR zfs (8)
|
|
@ -78,6 +78,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||
%defattr(-, root, root)
|
||||
%{_sbindir}/*
|
||||
%{_libdir}/*
|
||||
%{_mandir}/man1/*
|
||||
%{_mandir}/man5/*
|
||||
%{_mandir}/man8/*
|
||||
%{_udevdir}/*
|
||||
|
|
Loading…
Reference in New Issue