Unfortunately we didn't have much time and resources to test with older versions of ZFS, so to protect
your data, we conservatively auto-import older pools as read-only.
There can be significant on-disk differences between ZFS pool versions and the way ZEVO writes vdev labels (using persistent /dev/dsk/GPTE..." device paths) is different from prior Mac versions. ZEVO also use the dnode System Attributes layout to store things like the FinderInfo and Lion "Date Added" values which requires version 24. It also has a different ACL format. When using older pools, different code paths are used.
You can over-ride this defaulting to read-only using zpool export/import as in the following live example.
1. Verify that it's older and read-only:
- Code: Select all
$ zpool list
NAME SIZE ALLOC FREE CAP HEALTH ALTROOT
version_20 3.41Gi 668Ki 3.41Gi 0% ONLINE -
...
$ zpool get version,readonly version_20
NAME PROPERTY VALUE SOURCE
version_20 version 20 local
version_20 readonly on -
$ zfs get readonly version_20
NAME PROPERTY VALUE SOURCE
version_20 readonly on temporary
$ mount
...
/dev/disk4 on /Volumes/version_20 (zfs, local, read-only, journaled)
2. Override the default to make it writable:
- Code: Select all
$ sudo zpool export version_20
$ sudo zpool import -o readonly=off version_20
$ zpool get version,readonly version_20
NAME PROPERTY VALUE SOURCE
version_20 version 20 local
version_20 readonly off -
$ zfs get readonly version_20
NAME PROPERTY VALUE SOURCE
version_20 readonly off default
$ mount
...
/dev/disk4 on /Volumes/version_20 (zfs, local, journaled)