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