(Delete a volume, tracking down what servers it's on)


volnuke [-dFhvn] [-f list-file] volume

volnuke [-Fn] [-f list-file] -m mountpoint


volnuke is a smart vos remove that figures out what servers the volume is on to delete it, including replication sites for replicated volumes. As a safety measure, it prompts the user whether they're sure they want to delete the volume, and for replicated volumes it also checks if any of the replicas have had accesses and prompts the user again to be sure if they do.

Normally, volnuke takes a volume as an argument, but with the -m option it takes a mount point instead and gets the volume name with fs lsmount, and then removes that mount point when it finishes.


-d, --date

When writing the name of the deleted volume to a file (see the -f option), prepend the current date as YYYY-MM-DD and then a space to each line.

-F, --force

Don't prompt before deleting the volume. This option is NOT RECOMMENDED and is here solely for sysctl/remctl backend scripts.

-f list-file, --file=list-file

Append the name of the deleted volume to the given file. This is used to accumulate a list of volumes to purge from backups.

-h, --help

Print out this documentation (which is done simply by feeding the script to perldoc -t).

-m, --mountpoint

Rather than a volume name, take the argument to volnuke as a mount point and get the volume name from fs lsmount. Also removes the mount point after volnuke finishes.

-n, --dry-run, --just-print

Print out volume status information and the commands that mvto would run, but don't execute any of them.

-v, --version

Print out the version of mvto and exit.


volnuke loads configuration settings from /etc/afs-admin-tools/config if that file exists. If it exists, it must be Perl code suitable for loading with require. This means that each line of the configuration file should be of the form:

    our $VARIABLE = VALUE;

where $VARIABLE is the configuration variable being set and VALUE is the value to set it to (which should be enclosed in quotes if it's not a number). The file should end with:


so that Perl knows the file was loaded correctly.

The supported configuration variables are:


The full path to the AFS fs utility. If this variable is not set, volnuke defaults to looking for fs on the user's PATH.


The full path to the AFS vos utility. If this variable is not set, volnuke defaults to /usr/local/sbin/vos or /usr/sbin/vos if they exist, and otherwise looks for vos on the user's PATH.


Delete the volume ls.trip.windlord:

    volnuke ls.trip.windlord

The user will be prompted to confirm the action, and possibly prompted again if the volume is replicated and the read-only replicas have accesses.


Russ Allbery <eagle@eyrie.org>


Copyright 2002, 2003, 2004, 2010, 2011 The Board of Trustees of the Leland Stanford Junior University.

This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself.


fs_lsmount(1), vos(1), vos_examine(1), vos_remove(1)

This script is part of the afs-admin-tools package. The most recent version is available from the afs-admin-tools web page at <http://www.eyrie.org/~eagle/software/afs-admin-tools/>.

Last spun 2014-08-10 from POD modified 2014-04-14