You are not logged in.
Hello,
My home server is running arch linux for years now and a few years ago I created a zfs zpool using 4 x 4TB disks.
Recently I migrated the disks to a new setup and although everything seems fine, the "zpool status" command shows me the following.
pool: storage
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
the pool may no longer be accessible by software that does not support
the features. See zpool-features(5) for details.
scan: scrub in progress since Wed Aug 14 15:46:31 2019
1.46T scanned at 4.52G/s, 128G issued at 397M/s, 10.4T total
0B repaired, 1.20% done, 0 days 07:33:19 to go
config:
NAME STATE READ WRITE CKSUM
storage ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
sdd ONLINE 0 0 0
sde ONLINE 0 0 0
errors: No known data errorsIt appears my zpool is not up-to-date (I update my system frequently, including the kernel and the zfs modules when they are available).
The "zfs get all" command shows me the following: (which makes me believe my pool version is currently version 5, although the "zpool get version storage" command shows only a "-")
$ _ zfs get all storage
NAME PROPERTY VALUE SOURCE
storage type filesystem -
storage creation Thu Dec 31 17:57 2015 -
storage used 7.58T -
storage available 2.63T -
storage referenced 64.8G -
storage compressratio 1.00x -
storage mounted yes -
storage quota none default
storage reservation none default
storage recordsize 128K default
storage mountpoint /storage local
storage sharenfs off default
storage checksum on default
storage compression off default
storage atime off local
storage devices on default
storage exec on default
storage setuid on default
storage readonly off default
storage zoned off default
storage snapdir hidden default
storage aclinherit restricted default
storage createtxg 1 -
storage canmount on default
storage xattr on default
storage copies 1 default
storage version 5 -
storage utf8only off -
storage normalization none -
storage casesensitivity sensitive -
storage vscan off default
storage nbmand off default
storage sharesmb off default
storage refquota none default
storage refreservation none default
storage guid 12565084853281277616 -
storage primarycache all default
storage secondarycache all default
storage usedbysnapshots 0B -
storage usedbydataset 64.8G -
storage usedbychildren 7.51T -
storage usedbyrefreservation 0B -
storage logbias latency default
storage objsetid 21 -
storage dedup off default
storage mlslabel none default
storage sync standard default
storage dnodesize legacy default
storage refcompressratio 1.00x -
storage written 64.8G -
storage logicalused 7.57T -
storage logicalreferenced 64.4G -
storage volmode default default
storage filesystem_limit none default
storage snapshot_limit none default
storage filesystem_count none default
storage snapshot_count none default
storage snapdev hidden default
storage acltype off default
storage context none default
storage fscontext none default
storage defcontext none default
storage rootcontext none default
storage relatime off default
storage redundant_metadata all default
storage overlay off default
storage encryption off default
storage keylocation none default
storage keyformat none default
storage pbkdf2iters 0 default
storage special_small_blocks 0 defaultThe "zpool upgrade -v" command tells me there are 28 legacy versions already, so I guess the current version is 29..
This system supports ZFS pool feature flags.
The following features are supported:
FEAT DESCRIPTION
-------------------------------------------------------------
async_destroy (read-only compatible)
Destroy filesystems asynchronously.
empty_bpobj (read-only compatible)
Snapshots use less space.
lz4_compress
LZ4 compression algorithm support.
multi_vdev_crash_dump
Crash dumps to multiple vdev pools.
spacemap_histogram (read-only compatible)
Spacemaps maintain space histograms.
enabled_txg (read-only compatible)
Record txg at which a feature is enabled
hole_birth
Retain hole birth txg for more precise zfs send
extensible_dataset
Enhanced dataset functionality, used by other features.
embedded_data
Blocks which compress very well use even less space.
bookmarks (read-only compatible)
"zfs bookmark" command
filesystem_limits (read-only compatible)
Filesystem and snapshot limits.
large_blocks
Support for blocks larger than 128KB.
large_dnode
Variable on-disk size of dnodes.
sha512
SHA-512/256 hash algorithm.
skein
Skein hash algorithm.
edonr
Edon-R hash algorithm.
userobj_accounting (read-only compatible)
User/Group object accounting.
encryption
Support for dataset level encryption
project_quota (read-only compatible)
space/object accounting based on project ID.
device_removal
Top-level vdevs can be removed, reducing logical pool size.
obsolete_counts (read-only compatible)
Reduce memory used by removed devices when their blocks are freed or remapped.
zpool_checkpoint (read-only compatible)
Pool state can be checkpointed, allowing rewind later.
spacemap_v2 (read-only compatible)
Space maps representing large segments are more efficient.
allocation_classes (read-only compatible)
Support for separate allocation classes.
resilver_defer (read-only compatible)
Support for defering new resilvers when one is already running.
bookmark_v2
Support for larger bookmarks
The following legacy versions are also supported:
VER DESCRIPTION
--- --------------------------------------------------------
1 Initial ZFS version
2 Ditto blocks (replicated metadata)
3 Hot spares and double parity RAID-Z
4 zpool history
5 Compression using the gzip algorithm
6 bootfs pool property
7 Separate intent log devices
8 Delegated administration
9 refquota and refreservation properties
10 Cache devices
11 Improved scrub performance
12 Snapshot properties
13 snapused property
14 passthrough-x aclinherit
15 user/group space accounting
16 stmf property support
17 Triple-parity RAID-Z
18 Snapshot user holds
19 Log device removal
20 Compression using zle (zero-length encoding)
21 Deduplication
22 Received properties
23 Slim ZIL
24 System attributes
25 Improved scrub stats
26 Improved snapshot deletion performance
27 Improved snapshot creation performance
28 Multiple vdev replacements
For more information on a particular version, including supported releases,
see the ZFS Administration Guide.The currently installed zfs-linux package is version 0.8.1
pacman -Q | grep zfs
zfs-linux 0.8.1_5.2.8.arch1.1-1
zfs-utils 0.8.1-1My questions is, should I do anything or is my zpool working correctly and should I just ignore the message that some features are unavailable?
And if I need to something, can I run the "zpool upgrade" command safely without losing any data?
Thanks.
Last edited by CyberJack (2019-08-14 14:31:00)
Offline
should I do anything or is my zpool working correctly and should I just ignore the message that some features are unavailable? And if I need to something, can I run the "zpool upgrade" command safely without losing any data?
Your pool is working correctly. Like the message indicates, it is not using the new pool features - this is harmless.
Compatibility with other (older) versions of ZFS is the issue - they don't understand what to do with these features. So a newly-created pool with the current ZoL version may (will) be incompatible with older versions of ZFS - and they'll be unable to import it. But a pool brought forward from an older version of ZFS can be used with any version of ZFS that supports all the features in-use by that pool.
If you have no other hosts running ZFS that you want to keep at an older revision for some reason, or no requirement to mount pools on other hosts, then go ahead and upgrade.
Zpool upgrade should be perfectly safe. That said, neither RAID nor ZFS snapshots are any substitute for backups. (But a ZFS snapshot transferred to another host *is* a backup)...
Offline
Compatibility with other (older) versions of ZFS is the issue - they don't understand what to do with these features. So a newly-created pool with the current ZoL version may (will) be incompatible with older versions of ZFS - and they'll be unable to import it. But a pool brought forward from an older version of ZFS can be used with any version of ZFS that supports all the features in-use by that pool.
If you have no other hosts running ZFS that you want to keep at an older revision for some reason, or no requirement to mount pools on other hosts, then go ahead and upgrade.
Thanks. This makes perfect sense.
That said, neither RAID nor ZFS snapshots are any substitute for backups. (But a ZFS snapshot transferred to another host *is* a backup)...
I know neither RAID nor ZFS snapshots are any substitute for backups. Backups of all the important stuff are stored encrypted on a cloud service (encrypted before being places on the cloud storage), so that should not be a problem.
The only question I had was if I could loose data by doing the upgrade. I can always restore data from the backups, but it might take up quite to time.
But that question is answered now, so thanks.
Offline