ZFS: Destroy or Remove One or More Filesystems

If you no longer want a filesystem or hierarchy of filesystems, ZFS offers an easy mechanism for removing them that is possibly too simple. The destroy option of the zfs command unshares, unmounts, and obliterates filesystems.

To destroy the single filesystem techrx/home/davak, use use the following:

zfs destroy techrx/home/davak

As long as the filesystem is not in use (as when it is your current working directory) and has no decendent filesystems, snapshots, or clones under it, the filesystem will be no more. Because it makes these checks, this is the safest way to destroy ZFS filesystems.

A more dangerous option exists that will recursively destroy child filesystems defined under the target filesystem. While this is handy on a development or testing system, its use in a production environment is unwise. To remove the techrx filesystem and all descendent filesystems, use the following:

zfs destroy -r techrx

Descendent clones and snapshots will still cause the command to bail. To destroy the filesystems without regards to those, make it a capital -R option.

Editorial note: A courteous user pointed out an error in the second example in which “remove” was substituted unintentionally for “destroy.” This error has been fixed. Thanks for your help!


About Quinn McHenry

Quinn was one of the original co-founders of Tech-Recipes. He is currently crafting iOS applications as a senior developer at Small Planet Digital in Brooklyn, New York.
View more articles by Quinn McHenry

The Conversation

Follow the reactions below and share your own thoughts.