From 8806c422b4c480bd8aa80a5c459e601694ae2ce0 Mon Sep 17 00:00:00 2001 From: moogle Date: Fri, 22 Apr 2016 22:24:12 +0200 Subject: [PATCH 1/4] Change help to distinguish mandatory parameters Change the help output to a 'zfs' command style output, where mandatory parameters are in angle brackets and optional parameters in brackets. --- iohyve | 64 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/iohyve b/iohyve index adfae91..aef72e6 100755 --- a/iohyve +++ b/iohyve @@ -1333,47 +1333,47 @@ __conreset() { __help() { cat << 'EOT' iohyve version - setup pool=[poolname] kmod=[0/1] net=[interface] + setup pool= [kmod=<0 | 1>] [net=] list [-l] info [-vsdl] isolist fwlist - fetchiso [URL] - cpiso [path] - renameiso [ISO] [newname] - rmiso [ISO] - fetchfw [URL] - cpfw [path] - renamefw [firmware] [newname] - rmfw [firmware] - create [name] [size] - install [name] [ISO] - load [name] [path/to/bootdisk] - boot [name] [runmode] [pcidevices] - start [name] [-s | -a] - stop [name] - forcekill [name] + fetchiso + cpiso + renameiso + rmiso + fetchfw + cpfw + renamefw + rmfw + create + install + load + boot [runmode] [pcidevices] + start [-s | -a] + stop + forcekill scram - destroy [name] - rename [name] [newname] - delete [-f] [name] - set [name] [prop1=value] [prop2=value]... - get [name] [prop] - rmpci [-f] [name] [pcidev:N] - getall [name] - add [name] [size] [[pool]] - remove [-f] [name] [diskN] - resize [name] [diskN] [size] - disks [name] - snap [name]@[snapshotname] - roll [name]@[snapshotname] - clone [-c | -r] [name] [clonename] - export [name] + destroy + rename + delete [-f] + set ... + get + rmpci [-f] + getall + add + remove [-f] + resize + disks + snap @ + roll @ + clone [-c | -r] + export snaplist taplist activetaps conlist - console [name] + console conreset help EOT From 6174f4a120cb50e5975317939ef69b044da3faee Mon Sep 17 00:00:00 2001 From: moogle Date: Fri, 22 Apr 2016 22:32:49 +0200 Subject: [PATCH 2/4] Make setup help more zfsish --- iohyve | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iohyve b/iohyve index aef72e6..a19bc2f 100755 --- a/iohyve +++ b/iohyve @@ -1333,7 +1333,7 @@ __conreset() { __help() { cat << 'EOT' iohyve version - setup pool= [kmod=<0 | 1>] [net=] + setup [kmod=0|1] [net=iface] list [-l] info [-vsdl] isolist From f686031f34697c4a37e6518d0c93a382e2726cbc Mon Sep 17 00:00:00 2001 From: moogle Date: Thu, 28 Apr 2016 19:20:41 +0200 Subject: [PATCH 3/4] Adapt README and manpage to help output change --- README.md | 65 +++++++------- iohyve | 4 +- iohyve.8 | 234 +++++++++++++++++++++++++-------------------------- iohyve.8.txt | 178 +++++++++++++++++++-------------------- 4 files changed, 240 insertions(+), 241 deletions(-) diff --git a/README.md b/README.md index 3cb039e..335dcb6 100644 --- a/README.md +++ b/README.md @@ -52,49 +52,48 @@ ln -s /mnt/iohyve /iohyve ``` iohyve - version -setup pool=[poolname] kmod=[0/1] net=[interface] +setup [kmod=0|1] [net=iface] list [-l] info [-vsdl] isolist fwlist -fetchiso [URL] -cpiso [path] -renameiso [ISO] [newname] -rmiso [ISO] -fetchfw [URL] -cpfw [path] -renamefw [firmware] [newname] -rmfw [firmware] -create [name] [size] -install [name] [ISO] -load [name] [path/to/bootdisk] -boot [name] [runmode] [pcidevices] -start [name] [-s | -a] -stop [name] -forcekill [name] +fetchiso +cpiso +renameiso +rmiso +fetchfw +cpfw +renamefw +rmfw +create [pool] +install +load +boot [runmode] [pcidevices] +start [-s | -a] +stop +forcekill scram -destroy [name] -rename [name] [newname] -delete [-f] [name] -set [name] [prop1=value] [prop2=value]... -get [name] [prop] -rmpci [-f] [name] [pcidev:N] -getall [name] -add [name] [size] -remove [-f] [name] [diskN] -resize [name] [diskN] [size] -disks [name] -snap [name]@[snapshotname] -roll [name]@[snapshotname] -clone [name] [clonename] -export [name] +destroy +rename +delete [-f] +set ... +get +rmpci [-f] +getall +add [pool] +remove [-f] +resize +disks +snap @ +roll @ +clone [-c | -r] +export snaplist taplist activetaps conlist -console [name] +console conreset help ``` diff --git a/iohyve b/iohyve index a19bc2f..fa5edb8 100755 --- a/iohyve +++ b/iohyve @@ -1346,7 +1346,7 @@ iohyve version cpfw renamefw rmfw - create + create [pool] install load boot [runmode] [pcidevices] @@ -1361,7 +1361,7 @@ iohyve version get rmpci [-f] getall - add + add [pool] remove [-f] resize disks diff --git a/iohyve.8 b/iohyve.8 index f1617d9..6dcb63b 100644 --- a/iohyve.8 +++ b/iohyve.8 @@ -1,5 +1,5 @@ .\" Text automatically generated by txt2man -.TH iohyve 8 "15 April 2016" "" "FreeBSD System Manager's Manual" +.TH iohyve 8 "28 April 2016" "" "FreeBSD System Manager's Manual" .SH NAME \fBiohyve(8) \fP- bhyve manager/launcher v0.7.5 "Tennessee Cherry Moonshine Edition" \fB @@ -7,47 +7,47 @@ .nf .fam C \fBiohyve\fP \fIversion\fP -\fBiohyve\fP \fIsetup\fP pool=[poolname] kmod=[0/1] net=[interface] +\fBiohyve\fP \fIsetup\fP [kmod=0|1] [\fInet=iface\fP] \fBiohyve\fP \fIlist\fP [\fB-l\fP] \fBiohyve\fP \fIinfo\fP [\fB-vsdl\fP] \fBiohyve\fP \fIisolist\fP \fBiohyve\fP \fIfwlist\fP -\fBiohyve\fP \fIfetchiso\fP [\fIURL\fP] -\fBiohyve\fP \fIcpiso\fP [\fIpath\fP] -\fBiohyve\fP \fIrenameiso\fP [\fIISO\fP] [\fInewname\fP] -\fBiohyve\fP \fIrmiso\fP [\fIISO\fP] -\fBiohyve\fP \fIfetchfw\fP [\fIURL\fP] -\fBiohyve\fP \fIcpfw\fP [\fIpath\fP] -\fBiohyve\fP \fIrenamefw\fP [\fIfirmware\fP] [\fInewname\fP] -\fBiohyve\fP \fIrmfw\fP [\fIfirmware\fP] -\fBiohyve\fP \fIcreate\fP [\fIname\fP] [\fIsize\fP] [[\fIpool\fP]] -\fBiohyve\fP \fIinstall\fP [\fIname\fP] [\fIISO\fP] -\fBiohyve\fP \fIload\fP [\fIname\fP] -\fBiohyve\fP \fIboot\fP [\fIname\fP] [\fIISO\fP] -\fBiohyve\fP \fIstart\fP [\fIname\fP] [\fB-a\fP | \fB-s\fP] -\fBiohyve\fP \fIstop\fP [\fIname\fP] -\fBiohyve\fP \fIforcekill\fP [\fIname\fP] +\fBiohyve\fP \fIfetchiso\fP +\fBiohyve\fP \fIcpiso\fP +\fBiohyve\fP \fIrenameiso\fP +\fBiohyve\fP \fIrmiso\fP +\fBiohyve\fP \fIfetchfw\fP +\fBiohyve\fP \fIcpfw\fP +\fBiohyve\fP \fIrenamefw\fP +\fBiohyve\fP \fIrmfw\fP +\fBiohyve\fP \fIcreate\fP [\fIpool\fP] +\fBiohyve\fP \fIinstall\fP +\fBiohyve\fP \fIload\fP +\fBiohyve\fP \fIboot\fP +\fBiohyve\fP \fIstart\fP [\fB-a\fP | \fB-s\fP] +\fBiohyve\fP \fIstop\fP +\fBiohyve\fP \fIforcekill\fP \fBiohyve\fP \fIscram\fP -\fBiohyve\fP \fIdestroy\fP [\fIname\fP] -\fBiohyve\fP \fIrename\fP [\fIname\fP] [\fInewname\fP] -\fBiohyve\fP \fIdelete\fP [\fB-f\fP] [\fIname\fP] -\fBiohyve\fP \fIset\fP [\fIname\fP] [\fIprop1=value\fP] [prop2=value]\.\.\. -\fBiohyve\fP \fIget\fP [\fIname\fP] [\fIprop\fP] -\fBiohyve\fP \fIrmpci\fP [\fB-f\fP] [\fIname\fP] [\fIpcidev:N\fP] -\fBiohyve\fP \fIgetall\fP [\fIname\fP] -\fBiohyve\fP \fIadd\fP [\fIname\fP] [\fIsize\fP] [[\fIpool\fP]] -\fBiohyve\fP \fIremove\fP [\fB-f\fP] [\fIname\fP] [\fIdiskN\fP] -\fBiohyve\fP \fIresize\fP [\fIname\fP] [\fIdiskN\fP] [\fIsize\fP] -\fBiohyve\fP \fIdisks\fP [\fIname\fP] -\fBiohyve\fP \fIsnap\fP [\fIname\fP]@[snapshotname] -\fBiohyve\fP \fIroll\fP [\fIname\fP]@[snapshotname] -\fBiohyve\fP \fIclone\fP [\fB-c\fP | \fB-r\fP] [\fIname\fP] [\fIclonename\fP] -\fBiohyve\fP \fIexport\fP [\fIname\fP] +\fBiohyve\fP \fIdestroy\fP +\fBiohyve\fP \fIrename\fP +\fBiohyve\fP \fIdelete\fP [\fB-f\fP] +\fBiohyve\fP \fIset\fP \.\.\. +\fBiohyve\fP \fIget\fP +\fBiohyve\fP \fIrmpci\fP [\fB-f\fP] +\fBiohyve\fP \fIgetall\fP +\fBiohyve\fP \fIadd\fP [\fIpool\fP] +\fBiohyve\fP \fIremove\fP [\fB-f\fP] +\fBiohyve\fP \fIresize\fP +\fBiohyve\fP \fIdisks\fP +\fBiohyve\fP \fIsnap\fP @<\fIsnap\fP> +\fBiohyve\fP \fIroll\fP @<\fIsnap\fP> +\fBiohyve\fP \fIclone\fP [\fB-c\fP | \fB-r\fP] +\fBiohyve\fP \fIexport\fP \fBiohyve\fP \fIsnaplist\fP \fBiohyve\fP \fItaplist\fP \fBiohyve\fP \fIactivetaps\fP \fBiohyve\fP \fIconlist\fP -\fBiohyve\fP \fIconsole\fP [\fIname\fP] +\fBiohyve\fP \fIconsole\fP \fBiohyve\fP \fIconreset\fP \fBiohyve\fP \fIhelp\fP \fBiohyve\fP \fIman\fP @@ -75,17 +75,17 @@ Prints the current running \fIversion\fP of \fBiohyve\fP .B \fIsetup\fP Installs required zfs datasets and kernel modules for \fBiohyve\fP. -Usage: '\fBiohyve\fP \fIsetup\fP \fIpool=poolname\fP \fIkmod=0/1\fP net=[iface]' -where [poolname] is the \fIpool\fP you want to \fIinstall\fP \fBiohyve\fP on, -kmod=[0/1] is if you want \fBiohyve\fP to \fIload\fP or unload the -kernel modules required by \fBiohyve\fP. 1 is \fIload\fP. net=[iface] +Usage: '\fBiohyve\fP \fIsetup\fP <\fIpool\fP=poolname> [kmod=0|1] [\fInet=iface\fP]' +where is the \fIpool\fP you want to \fIinstall\fP \fBiohyve\fP on, +kmod=<0|1> is if you want \fBiohyve\fP to \fIload\fP or unload the +kernel modules required by \fBiohyve\fP. 1 is \fIload\fP. net= will \fIset\fP up the network bridge to the specified interface. Multiple pools are supported, additional pools \fIget\fP mounted in /\fBiohyve\fP/poolname .TP .B \fIlist\fP -Lists the \fIname\fP, status for VMM, active bhyve (Running), \fIboot\fP +Lists the name, status for VMM, active bhyve (Running), \fIboot\fP on \fIstart\fP flag (rcboot), and description for each guest. .RS .PP @@ -118,7 +118,7 @@ piped to less. .TP .B \fIisolist\fP -Lists the installed ISOs in the /\fBiohyve\fP/\fIISO\fP directory. +Lists the installed ISOs in the /\fBiohyve\fP/ISO directory. .TP .B \fIfwlist\fP @@ -126,110 +126,110 @@ Lists the firmwares in the /\fBiohyve\fP/Firmware directory. .TP .B \fIfetchiso\fP -Fetches installation \fIISO\fP or \fIinstall\fP image and creates a +Fetches installation ISO or \fIinstall\fP image and creates a dataset for it. -Usage: '\fBiohyve\fP \fIfetchiso\fP [\fIURL\fP]' where [\fIURL\fP] is the HTTP or FTP \fIURL\fP to +Usage: '\fBiohyve\fP \fIfetchiso\fP ' where is the HTTP or FTP URL to \fIfetchiso\fP from the internet. .TP .B \fIcpiso\fP -Copies installation \fIISO\fP or \fIinstall\fP image from your host and +Copies installation ISO or \fIinstall\fP image from your host and creates a dataset for it. -Usage: '\fBiohyve\fP \fIcpiso\fP [\fIpath\fP]' where [\fIpath\fP] is the full \fIpath\fP to -\fIISO\fP file on the host machine. +Usage: '\fBiohyve\fP \fIcpiso\fP ' where is the full path to +ISO file on the host machine. .TP .B \fIrenameiso\fP -Renames an \fIISO\fP -Usage: '\fBiohyve\fP \fIrenameiso\fP [\fIISO\fP] [\fInewname\fP]' where [\fIISO\fP] is the -\fIname\fP of the \fIISO\fP you would like to \fIrename\fP. [\fInewname\fP] -is a new \fIname\fP. +Renames an ISO +Usage: '\fBiohyve\fP \fIrenameiso\fP ' where is the +name of the ISO you would like to \fIrename\fP. +is a new name. .TP .B \fIrmiso\fP -Removes installed \fIISO\fP from /\fBiohyve\fP/\fIISO\fP -Usage: '\fBiohyve\fP \fIrmiso\fP [\fIISO\fP]' where [\fIISO\fP] is the \fIname\fP of the \fIISO\fP +Removes installed ISO from /\fBiohyve\fP/ISO +Usage: '\fBiohyve\fP \fIrmiso\fP ' where is the name of the ISO you would like to \fIdelete\fP. .TP .B \fIfetchfw\fP -Fetches \fIfirmware\fP and creates a dataset for it. -Usage: '\fBiohyve\fP \fIfetchfw\fP [\fIURL\fP]' where [\fIURL\fP] is the HTTP or FTP \fIURL\fP to +Fetches firmware and creates a dataset for it. +Usage: '\fBiohyve\fP \fIfetchfw\fP ' where is the HTTP or FTP URL to fetch from the internet. .TP .B \fIcpfw\fP -Copies \fIfirmware\fP from your host and creates a dataset for it. -Usage: '\fBiohyve\fP \fIcpfw\fP [\fIpath\fP]' where [\fIpath\fP] is the full \fIpath\fP to -\fIfirmware\fP file on the host machine. +Copies firmware from your host and creates a dataset for it. +Usage: '\fBiohyve\fP \fIcpfw\fP ' where is the full path to +firmware file on the host machine. .TP .B \fIrenamefw\fP Renames a Firmware -Usage: '\fBiohyve\fP \fIrenamefw\fP [\fIfirmware\fP] [\fInewname\fP]' where [\fIfirmware\fP] -is the \fIname\fP of the \fIfirmware\fP you would like to \fIrename\fP. -[\fInewname\fP] is a new \fIname\fP. +Usage: '\fBiohyve\fP \fIrenamefw\fP ' where +is the name of the firmware you would like to \fIrename\fP. + is a new name. .TP .B \fIrmfw\fP -Removes installed \fIfirmware\fP from /\fBiohyve\fP/Firmware -Usage: '\fBiohyve\fP \fIrmfw\fP [\fIfirmware\fP]' where [\fIfirmware\fP] is the \fIname\fP of -the \fIfirmware\fP you would like to \fIdelete\fP. +Removes installed firmware from /\fBiohyve\fP/Firmware +Usage: '\fBiohyve\fP \fIrmfw\fP ' where is the name of +the firmware you would like to \fIdelete\fP. .TP .B \fIcreate\fP Creates new guest operating system. -Usage: '\fBiohyve\fP \fIcreate\fP [\fIname\fP] [\fIsize\fP] [[\fIpool\fP]]' where [\fIname\fP] is -the \fIname\fP you would like to use, [\fIsize\fP] is the \fIsize\fP of the +Usage: '\fBiohyve\fP \fIcreate\fP [\fIpool\fP]' where is +the name you would like to use, is the size of the virtual block device in '16G' format where the capital G signifies gigabytes. If you specify the \fIpool\fP, the first disk gets added on that \fIpool\fP. .TP .B \fIinstall\fP -Loads and boots into \fIISO\fP for guest installation. -Usage: '\fBiohyve\fP \fIinstall\fP [\fIname\fP] [\fIISO\fP]' where [\fIname\fP] is the \fIname\fP -of the guest, and [\fIISO\fP] is the \fIname\fP of the \fIISO\fP you would +Loads and boots into ISO for guest installation. +Usage: '\fBiohyve\fP \fIinstall\fP ' where is the name +of the guest, and [ISO] is the name of the ISO you would like to \fIboot\fP from in the form of: 'instal.iso' .TP .B \fIload\fP Loads the guest operating system bootloader and resources. -Usage: '\fBiohyve\fP \fIload\fP [\fIname\fP] [\fIISO\fP]' -where [\fIname\fP]is the \fIname\fP of the guest operating system. -[bootimg] is the \fIpath\fP to the \fIboot\fP medium +Usage: '\fBiohyve\fP \fIload\fP ' +where [name]is the name of the guest operating system. +[bootimg] is the path to the \fIboot\fP medium .TP .B \fIboot\fP Boots the guest into the operating system. '\fBiohyve\fP run' needs to be run before this is done. -Usage: '\fBiohyve\fP \fIboot\fP [\fIname\fP] [runmode] [pci]' -where [\fIname\fP]is the \fIname\fP of the guest operating system. -[runmode] describes how to \fIstart\fP the guest: +Usage: '\fBiohyve\fP \fIboot\fP ' +where is the name of the guest operating system. + describes how to \fIstart\fP the guest: 0 = \fIstart\fP only once 1 = regular persist Stop if the guest is powering off 2 = always persist Always restart the guest -[pci] is a space separated \fIlist\fP of pci devices + is a space separated \fIlist\fP of pci devices based on slot-less bhyve \fB-s\fP commands. Example: -"ahci-hd,/\fIpath\fP/disk.img virtio-net,tap0" +"ahci-hd,/path/disk.img virtio-net,tap0" Note: hostbridge and lpc are automatically added .TP .B \fIstart\fP Starts the guest operating system. (Combines \fIload\fP & \fIboot\fP) -Usage: '\fBiohyve\fP \fIstart\fP [\fIname\fP] [\fB-s\fP | \fB-a\fP]' -where [\fIname\fP] is the \fIname\fP of the guest operating system. +Usage: '\fBiohyve\fP \fIstart\fP [\fB-s\fP | \fB-a\fP]' +where is the name of the guest operating system. [\fB-s\fP] will cause the guest to be started once [\fB-a\fP] will cause the guest to always restart .TP .B \fIstop\fP Gracefully stops guest operating system. -Usage: '\fBiohyve\fP \fIstop\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP +Usage: '\fBiohyve\fP \fIstop\fP ' where is the name of the guest operating system. .TP .B @@ -246,28 +246,28 @@ Gracefully \fIstop\fP all bhyve guests. Does not \fIdestroy\fP resources. .B \fIdestroy\fP Destroys guest resources. -Usage: '\fBiohyve\fP \fIdestroy\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP +Usage: '\fBiohyve\fP \fIdestroy\fP ' where is the name of the guest operating system. Destroying a guest does not [\fIdelete\fP] a guest from the host, it destroys the guest in VMM. .TP .B \fIrename\fP Renames the guest -Usage: '\fBiohyve\fP \fIrename\fP [\fIname\fP] [\fInewname\fP]' where [\fIname\fP] is the -\fIname\fP of the guest and [\fInewname\fP] is the new \fIname\fP. +Usage: '\fBiohyve\fP \fIrename\fP ' where is the +name of the guest and is the new name. .TP .B \fIdelete\fP Deletes all data for the guest. -Usage: '\fBiohyve\fP \fIdelete\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP +Usage: '\fBiohyve\fP \fIdelete\fP ' where is the name of the guest operating system. If [\fB-f\fP] is supplied before the -[\fIname\fP], there is no prompt to \fIdelete\fP. +, there is no prompt to \fIdelete\fP. .TP .B \fIset\fP Sets ZFS properties for guests one at a time -Usage: '\fBiohyve\fP \fIset\fP [\fIname\fP] [\fIprop1=value\fP] [prop2=value]\.\.\.' where -[\fIname\fP] is the \fIname\fP of the guest operating system. +Usage: '\fBiohyve\fP \fIset\fP \.\.\.' where + is the name of the guest operating system. Properties: ram=512M or ram=2G (M for megabytes, G for gigabtyes) cpu=1 (number of cpu cores) @@ -275,18 +275,18 @@ con=nmdm0 (where to attach null modem \fIconsole\fP) tap=tap[n](,tap[n]) (tap device for virtio-net) [n] is a generic number to specify the tap interface to use Specify a \fIlist\fP o tap separated by comma for multiple tap -Single tap: \fBiohyve\fP \fIset\fP [\fIname\fP] tap=tap0 -Multiple tap : \fBiohyve\fP \fIset\fP [\fIname\fP] tap=tap0,tap1,tap2,tap3 -\fIsize\fP=\fIsize\fP of block device +Single tap: \fBiohyve\fP \fIset\fP [name] tap=tap0 +Multiple tap : \fBiohyve\fP \fIset\fP [name] tap=tap0,tap1,tap2,tap3 +size=size of block device mac_tap[n]=[MAC Address] [n] is a generic number to specify the tap interface to use Forces a specific MAC address to be attached to the network adapter in the guest OS. \fBiohyve\fP does not check for a valid MAC address, so double check the property. -pcidev:[n]=[spec] +pcidev:[n]= Generic way to \fIadd\fP devices to the guest. [n] is a generic random number or string -[spec] defines a virtual device added to the guest + defines a virtual device added to the guest by using a bhyve \fB-s\fP argument without the pcislot or function argument. PCI slot numbers are assigned automatically by \fBiohyve\fP. @@ -296,29 +296,29 @@ Examples: "pcidev:1=passthru,2/0/0" .B \fIget\fP Gets ZFS properties for guests one at a time -Usage: '\fBiohyve\fP \fIget\fP [\fIname\fP] [\fIprop\fP]' where [\fIname\fP] is the \fIname\fP -of the guest operating system. [\fIprop\fP] is the +Usage: '\fBiohyve\fP \fIget\fP ' where is the name +of the guest operating system. is the property you want to view. (See '\fBiohyve\fP \fIset\fP' \fIinfo\fP) .TP .B \fIrmpci\fP Removes a pcidev from the guest -Usage: '\fBiohyve\fP \fIrmpci\fP [\fIname\fP] [\fIpcidev:N\fP]' where [\fIname\fP] is the \fIname\fP -of the guest operating system. [\fIpcidev:N\fP] is the PCI +Usage: '\fBiohyve\fP \fIrmpci\fP ' where is the name +of the guest operating system. is the PCI device you want removed. Ex: 'pcidev:3' If [\fB-f\fP] is supplied -before the [\fIname\fP], there is no prompt to \fIremove\fP. +before the , there is no prompt to \fIremove\fP. .TP .B \fIgetall\fP Gets all the ZFS properties for a guest -Usage: '\fBiohyve\fP \fIgetall\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP +Usage: '\fBiohyve\fP \fIgetall\fP ' where is the name of the guest operating system. .TP .B \fIadd\fP Adds a new disk to the guest. -Usage: '\fBiohyve\fP \fIadd\fP [\fIname\fP] [\fIsize\fP] [[\fIpool\fP]]' where [\fIname\fP] is -the \fIname\fP of the guest, [\fIsize\fP] is the \fIsize\fP of the +Usage: '\fBiohyve\fP \fIadd\fP [\fIpool\fP]' where is +the name of the guest, is the size of the virtual block device in '16G' format where the capital G signifies gigabytes. If \fIpool\fP is specified, the disk gets added on that \fIpool\fP @@ -326,18 +326,18 @@ added on that \fIpool\fP .B \fIremove\fP Removes a disk from the guest. Cannot be disk0. -Usage: '\fBiohyve\fP \fIremove\fP [\fIname\fP] [\fIdiskN\fP]' where [\fIname\fP] is -the \fIname\fP of the guest, [\fIdiskN\fP] is the disk you would +Usage: '\fBiohyve\fP \fIremove\fP ' where is +the name of the guest, is the disk you would like to \fIremove\fP from the guest. See '\fBiohyve\fP \fIdisks\fP' for a \fIlist\fP of \fIdisks\fP for a guest. If [\fB-f\fP] is supplied before the -[\fIname\fP], there is no prompt to \fIremove\fP. +, there is no prompt to \fIremove\fP. .TP .B \fIresize\fP Resizes a disk. THIS CAN BREAK THINGS ON THE GUEST. -Usage: '\fBiohyve\fP \fIresize\fP [\fIname\fP] [\fIdiskN\fP] [\fIsize\fP]' where [\fIname\fP] is -the \fIname\fP of the guest, [\fIdiskN\fP] is the disk you would -like to \fIremove\fP from the guest, and [\fIsize\fP] is the \fIsize\fP +Usage: '\fBiohyve\fP \fIresize\fP ' where is +the name of the guest, is the disk you would +like to \fIremove\fP from the guest, and is the size of the virtual block device in '16G' format where the capital G signifies gigabytes. See '\fBiohyve\fP \fIdisks\fP' for a \fIlist\fP of \fIdisks\fP for a guest @@ -345,22 +345,22 @@ See '\fBiohyve\fP \fIdisks\fP' for a \fIlist\fP of \fIdisks\fP for a guest .B \fIdisks\fP Lists the \fIdisks\fP attached to a guest. -Usage: '\fBiohyve\fP \fIdisks\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP +Usage: '\fBiohyve\fP \fIdisks\fP ' where is the name of the guest operating system. .TP .B \fIsnap\fP Take a snapshot of a guest. -Usage: '\fBiohyve\fP \fIsnap\fP [\fIname\fP]@[snapshot]' where [\fIname\fP] is the -\fIname\fP of the guest and [snapshot] is what you would -like to \fIname\fP the snapshot. +Usage: '\fBiohyve\fP \fIsnap\fP @<\fIsnap\fP>' where is the +name of the guest and <\fIsnap\fP> is what you would +like to name the snapshot. .TP .B \fIroll\fP Rollback guest to a snapshot. -Usage: '\fBiohyve\fP \fIroll\fP [\fIname\fP]@[snapshot]' where [\fIname\fP] is the -\fIname\fP of the guest and [snapshot] is what you would -like to \fIname\fP the snapshot. +Usage: '\fBiohyve\fP \fIroll\fP @<\fIsnap\fP>' where is the +name of the guest and <\fIsnap\fP> is what you would +like to name the snapshot. .TP .B \fIclone\fP @@ -368,9 +368,9 @@ Clone a guest. Note that this will \fIclone\fP all of the properties. If you want to use the \fIclone\fP and the original guest at the same time you will need to change the tap and nmdm properties or use the \fB-r\fP option to have \fBiohyve\fP do this for you -Usage: '\fBiohyve\fP \fIclone\fP [\fB-c\fP | \fB-r\fP] [\fIname\fP] [\fIclonename\fP]' where [\fIname\fP] -is the \fIname\fP of the guest and [\fIclonename\fP] is what you would -like to \fIname\fP the new \fIclone\fP. +Usage: '\fBiohyve\fP \fIclone\fP [\fB-c\fP | \fB-r\fP] ' where +is the name of the guest and is what you would +like to name the new \fIclone\fP. .TP .B \fIexport\fP @@ -379,7 +379,7 @@ GZip'd tarball. Property file is in a ucl-type format. Disks output to a raw file, allowing for other managers using ahci-hd emulation to use them. Tarball is put in the guest dataset ex: /\fBiohyve\fP/guestname/guestname.tar.gz -Usage: '\fBiohyve\fP \fIexport\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP of the +Usage: '\fBiohyve\fP \fIexport\fP ' where is the name of the guest. .TP .B @@ -413,7 +413,7 @@ then period (.) to exit the \fIconsole\fP. If that fails to work, try pressing tilde (~) then press Control + D (^D). Note that on some machines, you cannot escape the \fIconsole\fP. See \fIconreset\fP below to escape all consoles. -Usage: '\fBiohyve\fP \fIconsole\fP [\fIname\fP]' where [\fIname\fP] is the \fIname\fP +Usage: '\fBiohyve\fP \fIconsole\fP ' where is the name of the guest operating system. .TP .B @@ -429,7 +429,7 @@ Setup \fBiohyve\fP zpool named tank: .PP \fBiohyve\fP \fIsetup\fP \fIpool\fP=tank .PP -Fetch FreeBSD \fIinstall\fP \fIISO\fP for later: +Fetch FreeBSD \fIinstall\fP ISO for later: .PP \fBiohyve\fP \fIfetchiso\fP ftp://ftp.freebsd.org/\.\.\./10.2/FreeBSD\.\.\..iso .PP @@ -437,7 +437,7 @@ Create a new FreeBSD guest named bsdguest on \fIconsole\fP nmdm0 with an 8Gigaby .PP \fBiohyve\fP \fIcreate\fP bsdguest 8G .PP -List \fIISO\fP's: +List ISO's: .PP \fBiohyve\fP \fIisolist\fP .PP diff --git a/iohyve.8.txt b/iohyve.8.txt index 3462dfc..0906d04 100644 --- a/iohyve.8.txt +++ b/iohyve.8.txt @@ -3,47 +3,47 @@ iohyve(8) - bhyve manager/launcher v0.7.5 "Tennessee Cherry Moonshine Edition" SYNOPSIS iohyve version -iohyve setup pool=[poolname] kmod=[0/1] net=[interface] +iohyve setup [kmod=0|1] [net=iface] iohyve list [-l] iohyve info [-vsdl] iohyve isolist iohyve fwlist -iohyve fetchiso [URL] -iohyve cpiso [path] -iohyve renameiso [ISO] [newname] -iohyve rmiso [ISO] -iohyve fetchfw [URL] -iohyve cpfw [path] -iohyve renamefw [firmware] [newname] -iohyve rmfw [firmware] -iohyve create [name] [size] [[pool]] -iohyve install [name] [ISO] -iohyve load [name] -iohyve boot [name] [ISO] -iohyve start [name] [-a | -s] -iohyve stop [name] -iohyve forcekill [name] +iohyve fetchiso +iohyve cpiso +iohyve renameiso +iohyve rmiso +iohyve fetchfw +iohyve cpfw +iohyve renamefw +iohyve rmfw +iohyve create [pool] +iohyve install +iohyve load +iohyve boot +iohyve start [-a | -s] +iohyve stop +iohyve forcekill iohyve scram -iohyve destroy [name] -iohyve rename [name] [newname] -iohyve delete [-f] [name] -iohyve set [name] [prop1=value] [prop2=value]... -iohyve get [name] [prop] -iohyve rmpci [-f] [name] [pcidev:N] -iohyve getall [name] -iohyve add [name] [size] [[pool]] -iohyve remove [-f] [name] [diskN] -iohyve resize [name] [diskN] [size] -iohyve disks [name] -iohyve snap [name]@[snapshotname] -iohyve roll [name]@[snapshotname] -iohyve clone [-c | -r] [name] [clonename] -iohyve export [name] +iohyve destroy +iohyve rename +iohyve delete [-f] +iohyve set ... +iohyve get +iohyve rmpci [-f] +iohyve getall +iohyve add [pool] +iohyve remove [-f] +iohyve resize +iohyve disks +iohyve snap @ +iohyve roll @ +iohyve clone [-c | -r] +iohyve export iohyve snaplist iohyve taplist iohyve activetaps iohyve conlist -iohyve console [name] +iohyve console iohyve conreset iohyve help iohyve man @@ -61,10 +61,10 @@ OPTIONS version Prints the current running version of iohyve setup Installs required zfs datasets and kernel modules for iohyve. - Usage: 'iohyve setup pool=poolname kmod=0/1 net=[iface]' - where [poolname] is the pool you want to install iohyve on, - kmod=[0/1] is if you want iohyve to load or unload the - kernel modules required by iohyve. 1 is load. net=[iface] + Usage: 'iohyve setup [kmod=0|1] [net=iface]' + where is the pool you want to install iohyve on, + kmod=<0|1> is if you want iohyve to load or unload the + kernel modules required by iohyve. 1 is load. net= will set up the network bridge to the specified interface. Multiple pools are supported, additional pools get mounted in /iohyve/poolname @@ -100,68 +100,68 @@ fwlist Lists the firmwares in the /iohyve/Firmware directory. fetchiso Fetches installation ISO or install image and creates a dataset for it. - Usage: 'iohyve fetchiso [URL]' where [URL] is the HTTP or FTP URL to + Usage: 'iohyve fetchiso ' where is the HTTP or FTP URL to fetchiso from the internet. cpiso Copies installation ISO or install image from your host and creates a dataset for it. - Usage: 'iohyve cpiso [path]' where [path] is the full path to + Usage: 'iohyve cpiso ' where is the full path to ISO file on the host machine. renameiso Renames an ISO - Usage: 'iohyve renameiso [ISO] [newname]' where [ISO] is the - name of the ISO you would like to rename. [newname] + Usage: 'iohyve renameiso ' where is the + name of the ISO you would like to rename. is a new name. rmiso Removes installed ISO from /iohyve/ISO - Usage: 'iohyve rmiso [ISO]' where [ISO] is the name of the ISO + Usage: 'iohyve rmiso ' where is the name of the ISO you would like to delete. fetchfw Fetches firmware and creates a dataset for it. - Usage: 'iohyve fetchfw [URL]' where [URL] is the HTTP or FTP URL to + Usage: 'iohyve fetchfw ' where is the HTTP or FTP URL to fetch from the internet. cpfw Copies firmware from your host and creates a dataset for it. - Usage: 'iohyve cpfw [path]' where [path] is the full path to + Usage: 'iohyve cpfw ' where is the full path to firmware file on the host machine. renamefw Renames a Firmware - Usage: 'iohyve renamefw [firmware] [newname]' where [firmware] + Usage: 'iohyve renamefw ' where is the name of the firmware you would like to rename. - [newname] is a new name. + is a new name. rmfw Removes installed firmware from /iohyve/Firmware - Usage: 'iohyve rmfw [firmware]' where [firmware] is the name of + Usage: 'iohyve rmfw ' where is the name of the firmware you would like to delete. create Creates new guest operating system. - Usage: 'iohyve create [name] [size] [[pool]]' where [name] is - the name you would like to use, [size] is the size of the + Usage: 'iohyve create [pool]' where is + the name you would like to use, is the size of the virtual block device in '16G' format where the capital G signifies gigabytes. If you specify the pool, the first disk gets added on that pool. install Loads and boots into ISO for guest installation. - Usage: 'iohyve install [name] [ISO]' where [name] is the name + Usage: 'iohyve install ' where is the name of the guest, and [ISO] is the name of the ISO you would like to boot from in the form of: 'instal.iso' load Loads the guest operating system bootloader and resources. - Usage: 'iohyve load [name] [ISO]' + Usage: 'iohyve load ' where [name]is the name of the guest operating system. [bootimg] is the path to the boot medium boot Boots the guest into the operating system. 'iohyve run' needs to be run before this is done. - Usage: 'iohyve boot [name] [runmode] [pci]' - where [name]is the name of the guest operating system. - [runmode] describes how to start the guest: + Usage: 'iohyve boot ' + where is the name of the guest operating system. + describes how to start the guest: 0 = start only once 1 = regular persist Stop if the guest is powering off 2 = always persist Always restart the guest - [pci] is a space separated list of pci devices + is a space separated list of pci devices based on slot-less bhyve -s commands. Example: "ahci-hd,/path/disk.img virtio-net,tap0" @@ -169,13 +169,13 @@ boot Boots the guest into the operating system. 'iohyve run' needs added start Starts the guest operating system. (Combines load & boot) - Usage: 'iohyve start [name] [-s | -a]' - where [name] is the name of the guest operating system. + Usage: 'iohyve start [-s | -a]' + where is the name of the guest operating system. [-s] will cause the guest to be started once [-a] will cause the guest to always restart stop Gracefully stops guest operating system. - Usage: 'iohyve stop [name]' where [name] is the name + Usage: 'iohyve stop ' where is the name of the guest operating system. forcekill Forces the guest to stop. Runs kill -9 and destroys the guest @@ -186,22 +186,22 @@ forcekill Forces the guest to stop. Runs kill -9 and destroys the guest scram Gracefully stop all bhyve guests. Does not destroy resources. destroy Destroys guest resources. - Usage: 'iohyve destroy [name]' where [name] is the name + Usage: 'iohyve destroy ' where is the name of the guest operating system. Destroying a guest does not [delete] a guest from the host, it destroys the guest in VMM. rename Renames the guest - Usage: 'iohyve rename [name] [newname]' where [name] is the - name of the guest and [newname] is the new name. + Usage: 'iohyve rename ' where is the + name of the guest and is the new name. delete Deletes all data for the guest. - Usage: 'iohyve delete [name]' where [name] is the name + Usage: 'iohyve delete ' where is the name of the guest operating system. If [-f] is supplied before the - [name], there is no prompt to delete. + , there is no prompt to delete. set Sets ZFS properties for guests one at a time - Usage: 'iohyve set [name] [prop1=value] [prop2=value]...' where - [name] is the name of the guest operating system. + Usage: 'iohyve set ...' where + is the name of the guest operating system. Properties: ram=512M or ram=2G (M for megabytes, G for gigabtyes) cpu=1 (number of cpu cores) @@ -217,10 +217,10 @@ set Sets ZFS properties for guests one at a time Forces a specific MAC address to be attached to the network adapter in the guest OS. iohyve does not check for a valid MAC address, so double check the property. - pcidev:[n]=[spec] + pcidev:[n]= Generic way to add devices to the guest. [n] is a generic random number or string - [spec] defines a virtual device added to the guest + defines a virtual device added to the guest by using a bhyve -s argument without the pcislot or function argument. PCI slot numbers are assigned automatically by iohyve. @@ -228,62 +228,62 @@ set Sets ZFS properties for guests one at a time "pcidev:2=ahci-hd,/some/place/disk.img" get Gets ZFS properties for guests one at a time - Usage: 'iohyve get [name] [prop]' where [name] is the name - of the guest operating system. [prop] is the + Usage: 'iohyve get ' where is the name + of the guest operating system. is the property you want to view. (See 'iohyve set' info) rmpci Removes a pcidev from the guest - Usage: 'iohyve rmpci [name] [pcidev:N]' where [name] is the name - of the guest operating system. [pcidev:N] is the PCI + Usage: 'iohyve rmpci ' where is the name + of the guest operating system. is the PCI device you want removed. Ex: 'pcidev:3' If [-f] is supplied - before the [name], there is no prompt to remove. + before the , there is no prompt to remove. getall Gets all the ZFS properties for a guest - Usage: 'iohyve getall [name]' where [name] is the name + Usage: 'iohyve getall ' where is the name of the guest operating system. add Adds a new disk to the guest. - Usage: 'iohyve add [name] [size] [[pool]]' where [name] is - the name of the guest, [size] is the size of the + Usage: 'iohyve add [pool]' where is + the name of the guest, is the size of the virtual block device in '16G' format where the capital G signifies gigabytes. If pool is specified, the disk gets added on that pool remove Removes a disk from the guest. Cannot be disk0. - Usage: 'iohyve remove [name] [diskN]' where [name] is - the name of the guest, [diskN] is the disk you would + Usage: 'iohyve remove ' where is + the name of the guest, is the disk you would like to remove from the guest. See 'iohyve disks' for a list of disks for a guest. If [-f] is supplied before the - [name], there is no prompt to remove. + , there is no prompt to remove. resize Resizes a disk. THIS CAN BREAK THINGS ON THE GUEST. - Usage: 'iohyve resize [name] [diskN] [size]' where [name] is - the name of the guest, [diskN] is the disk you would - like to remove from the guest, and [size] is the size + Usage: 'iohyve resize ' where is + the name of the guest, is the disk you would + like to remove from the guest, and is the size of the virtual block device in '16G' format where the capital G signifies gigabytes. See 'iohyve disks' for a list of disks for a guest disks Lists the disks attached to a guest. - Usage: 'iohyve disks [name]' where [name] is the name + Usage: 'iohyve disks ' where is the name of the guest operating system. snap Take a snapshot of a guest. - Usage: 'iohyve snap [name]@[snapshot]' where [name] is the - name of the guest and [snapshot] is what you would + Usage: 'iohyve snap @' where is the + name of the guest and is what you would like to name the snapshot. roll Rollback guest to a snapshot. - Usage: 'iohyve roll [name]@[snapshot]' where [name] is the - name of the guest and [snapshot] is what you would + Usage: 'iohyve roll @' where is the + name of the guest and is what you would like to name the snapshot. clone Clone a guest. Note that this will clone all of the properties. If you want to use the clone and the original guest at the same time you will need to change the tap and nmdm properties or use the -r option to have iohyve do this for you - Usage: 'iohyve clone [-c | -r] [name] [clonename]' where [name] - is the name of the guest and [clonename] is what you would + Usage: 'iohyve clone [-c | -r] ' where + is the name of the guest and is what you would like to name the new clone. export Export a guest with all of it's properties and disks to a @@ -291,7 +291,7 @@ export Export a guest with all of it's properties and disks to a Disks output to a raw file, allowing for other managers using ahci-hd emulation to use them. Tarball is put in the guest dataset ex: /iohyve/guestname/guestname.tar.gz - Usage: 'iohyve export [name]' where [name] is the name of the + Usage: 'iohyve export ' where is the name of the guest. snaplist List all of the snapshots for all the guests. Does not show @@ -315,7 +315,7 @@ console Consoles into a guest operating system. Utilizes nmdm(4) and If that fails to work, try pressing tilde (~) then press Control + D (^D). Note that on some machines, you cannot escape the console. See conreset below to escape all consoles. - Usage: 'iohyve console [name]' where [name] is the name + Usage: 'iohyve console ' where is the name of the guest operating system. conreset Ends all console sessions for when things get weird. From a427763376f19004fed19ab5ba03ae2b4992b56e Mon Sep 17 00:00:00 2001 From: moogle Date: Thu, 28 Apr 2016 19:27:23 +0200 Subject: [PATCH 4/4] Add linebreak after iohyve command --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 335dcb6..b3e252d 100644 --- a/README.md +++ b/README.md @@ -52,6 +52,7 @@ ln -s /mnt/iohyve /iohyve ``` iohyve + version setup [kmod=0|1] [net=iface] list [-l]