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 |
-
zhack |
metaslab leak [-f]
pool |
- Apply a fragmentation profile generated by
zdb to the
specified pool.
The -f flag forces the profile to
apply even if the vdevs in the pool don't have the
same number of metaslabs as the fragmentation profile.
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.
-o
var=value
- Set the given tunable to the provided value.
# 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