[MacPorts] #51246: submission: port:zfs and port:zfs-devel
MacPorts
noreply at macports.org
Wed Apr 27 02:19:08 PDT 2016
#51246: submission: port:zfs and port:zfs-devel
-------------------------+--------------------------------
Reporter: rjvbertin@… | Owner: macports-tickets@…
Type: submission | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Keywords: | Port:
-------------------------+--------------------------------
I've finally gotten around to making a port for the OS X implementation of
the ZFS filesystem, now that it seems to have reached a sufficient
maturity (read: it no longer causes system instability after having done a
few simple tests).
I don't think I have to introduce ZFS here, but for those who really don't
know what it is: It's the filesystem that Apple once considered as an
officially supported FS, if not the default for OS X. It provides very
high data reliability (*), is extremely flexible & scalable and has a
potential for very good performance (though not necessarily trivial and
probably not yet in the OS X implementation). It also offers optional on-
the-fly compression including using the lz4 scheme which is fast enough to
improve I/O to slow media (time spent de/compressing is less than the
increase in data transfer times).
*) even when using a single partition because it can write each file in
multiple copies - a feature that prevented me from losing no more than a
single trivial file from my Linux rig when a disk started dropping sectors
on me at a rate I never saw before a few days ago.
I already tested an earlier release from an officialy installer on
Bradley's (pixilla) VM about a year ago, using it to put a whole MacPorts
install in a dataset mounted on /opt/local, with compression, case
sensitivity and redundancy for important parts like the registry.
The current implementation installs everything properly into ${prefix},
kernel extensions included. That works fine on OS X 10.9 (with a single
warning when loading eacho of the kexts the 1st time).
I'd be very interested in feedback from users on more recent versions of
OS X, notably 10.11 . I suspect it might be necessary to put the kernel
stuff into /Library when SIP is not disabled (?)
Notes:
- ZFS does tend to like having sufficient memory. On systems with <8Gb it
might be wise to read up on reducing the max. amount used by ARC (not
related to ObjC's ARC ;))
- This is a project that's seeing active development and continuous
improvement. There's a `port:zfs` but I would strongly suggest to test
`port:zfs-devel`.
- In fact, I'd (almost) suggest to use an official installer from the
project's website instead of using `port:zfs`, because that should give
better system integration "out of the box". On the other hand, the
MacPorts version should be less intrusive/invasive and easier to
uninstall.
WARNING:
This port installs kernel extensions which get loaded automatically when
using ZFS. As a result it should PROBABLY NOT be deactivated, uninstalled
or reinstalled without taking the following precautions:
1) unmount (export) all ZFS datasets and pools
2) kextunload zfs.kext
3) kextunload spl.kext
Question: is there a phase where one could check if either of the kexts is
loaded, and raise an error if that is the case (pre-deactivate would be
perfect)?
--
Ticket URL: <https://trac.macports.org/ticket/51246>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list