zhack — libzpool
debugging tool
This utility pokes configuration changes directly into a ZFS pool,
which is dangerous and can cause data corruption.
-
- List feature flags.
-
zhack |
feature enable [-d
description] [-r]
pool guid |
- Add a new feature to pool that is uniquely
identified by guid, which is specified in the same
form as a
zfs(8)
user property.
The description is a short human
readable explanation of the new feature.
The -r flag indicates that
pool can be safely opened in read-only mode by a
system that does not understand the guid
feature.
-
zhack |
feature ref
[-d|-m]
pool guid |
- Increment the reference count of the guid feature in
pool.
The -d flag decrements the reference
count of the guid feature in
pool instead.
The -m flag indicates that the
guid feature is now required to read the pool
MOS.
-
zhack |
label repair [-cu]
device |
- Repair labels of a specified device according to
options.
Flags may be combined to do their functions
simultaneously.
The -c flag repairs corrupted label
checksums
The -u flag restores the label on a
detached device
Example:
zhack label repair
-cu device |
Fix checksums and undetach a device |
The following can be passed to all zhack
invocations before any subcommand:
-c
cachefile
- Read pool configuration from the
cachefile, which is
/etc/zfs/zpool.cache by default.
-d
dir
- Search for pool members in
dir. Can be specified more than once.
# zhack feature stat tank
for_read_obj:
org.illumos:lz4_compress = 0
for_write_obj:
com.delphix:async_destroy = 0
com.delphix:empty_bpobj = 0
descriptions_obj:
com.delphix:async_destroy = Destroy filesystems asynchronously.
com.delphix:empty_bpobj = Snapshots use less space.
org.illumos:lz4_compress = LZ4 compression algorithm support.
# zhack feature enable -d 'Predict future disk failures.' tank com.example:clairvoyance
# zhack feature ref tank com.example:clairvoyance