vblade-persist(8) manage persistent exported ATA-over-Ethernet devices

SYNOPSIS


     vblade-persist ls [--no-header]

     vblade-persist setup shelf slot netif blockdev

     vblade-persist destroy shelf slot

     vblade-persist { start | stop | restart | auto | noauto } shelf slot

     vblade-persist { start | stop | restart | auto | noauto } all

     vblade-persist mac shelf slot { ls | clear }

     vblade-persist mac shelf slot { add | del } [ addr ... ]

DESCRIPTION

The vblade-persist script is used to show and manipulate persistently-exported ATA-over-Ethernet devices. It has a simple subcommand syntax.

Persistent AoE device exports can be configured to come up at boot time. For each running persistent AoE export, a symlink pointing to the backing device is created in /dev/etherd/, mirroring the devices seen by clients of the AoE device.

MANAGEMENT SUBCOMMANDS


   ls [--noheader]
vblade-persist ls shows all existing persistent AoE exports. The columns of the output are, in order: AoE Shelf, AoE Slot, Network Interface, Backing Device, AutoStart, Status. AutoStart is either "auto" (start automatically at boot), or "noauto" (don't start automatically at boot). Status should be either "run" (running) or "down" (not running).

The optional --no-header argument suppresses the header line. This may be convenient for machine-parseable output.


   setup shelf slot netif source
vblade-persist setup creates a new persistent exported AoE block device. You must supply all four additional arguments. These are the same arguments supplied to vblade(8). You should specify source using an absolute path.

New devices set up this way are noauto (not brought up automatically at boot) and down (not exported immediately).


   destroy shelf slot
vblade-persist destroy halts any running exported AoE block device managed by vblade-persist and removes the service directory used to manage it.


   start shelf slot

   stop shelf slot

   restart shelf slot
These commands control a specific exported AoE device. Instead of specifying shelf and slot , you can also provide the special keyword all which will act on every exported AoE device.


   auto shelf slot

   noauto shelf slot
These commands control whether a specific exported AoE device should be started automatically ( auto ) or not ( noauto ) at system boot time. Instead of specifying shelf and slot , you can also provide the special keyword all which will act on every exported AoE device.

MAC-ADDRESS FILTERING

You can use vblade-persist to restrict access to specific exports by MAC address, using the mac subcommand.


   mac shelf slot ls
List all MAC addresses allowed to access the specified device, one per line. If the list is empty, no MAC address limits are imposed on this device.


   mac shelf slot clear
Remove all MAC address filtering from the specified device. No MAC address limits will be imposed on this device.


   mac shelf slot add [ addr ... ]
Add a MAC address (or more than one) to the list of allowed addresses for the specified device. Note that if there were no MAC addresses listed previously, this will enable MAC address filtering for the device.


   mac shelf slot del [ addr ... ]
Remove a MAC address (or more than one) from the list of allowed addresses for the specific device. Note that if you remove all the MAC addresses from the list, this will disable MAC address filtering for the device.

EXAMPLES

Set up /dev/sda2 as shelf 2, slot 3 on the network served by interface eth0. Make sure it starts automatically at boot, and start it up now:


           vblade-persist setup 2 3 eth0 /dev/sda2

           vblade-persist auto 2 3

           vblade-persist start 2 3

Limit that same export to MAC addresses aa:bb:cc:dd:ee:ff and 11:22:33:44:55:66:


           vblade-persist mac 2 3 add aa:bb:cc:dd:ee:ff 11:22:33:44:55:66

Remove all MAC address restrictions on the same export:


           vblade-persist mac 2 3 clear

BUGS

You can't currently use the vblade-persist framework to export a device (or two) with the same shelf/slot identifier on two different network interfaces.

DEPENDENCIES

The exports themselves are handled by vblade(8). Supervision of the exports and convenient management is enabled by runsv(8), from the runit suite.

AUTHOR

Daniel Kahn Gillmor <[email protected]>