Skip to content
This repository has been archived by the owner on Feb 16, 2020. It is now read-only.
smuckola edited this page Mar 7, 2012 · 100 revisions
  1. summary Frequently Asked Questions about MacZFS
  2. labels Featured

Table of Contents

Frequently Asked Questions about MacZFS

  • Index*
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Where_do_I_get_MacZFS_and_how_do_I_install_it? Where do I get MacZFS and how do I install it?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#On_what_systems_does_MacZFS_run? On what systems does MacZFS run?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#How_stable_is_MacZFS?__Can_I_totally_trust_it? How stable is MacZFS?  Can I totally trust it?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#What_is_the_future_of_MacZFS? What is the future of MacZFS?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Does_Apple_support_or_interact_with_MacZFS? Does Apple support or interact with MacZFS?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Is_there_any_negative_ramification_from_the_fact_that_Apple_does Is there any negative ramification from the fact that Apple doesn't support ZFS?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Who_is_MacZFS_intended_for?__Is_it_easy_to_set_up?__Is_it_Mac-li Who is MacZFS intended for? Is it easy to set up? Is it Mac-like?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#What_quality_assurance_methods_can_I_use_to_ensure_MacZFS's What quality assurance methods can I use to ensure MacZFS's stability for my needs?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Is_there_a_GUI_with_which_to_manage_MacZFS? Is there a GUI with which to manage MacZFS?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Can_it_fill_and_empty_the_Trash_in_the_normal_Mac_way? Can it fill and empty the Trash in the normal Mac way?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Should_I_install_one_of_the_development_versions,_one_that' Should I install one of the development versions, one that's not the stable version? The number is higher!]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#Well,_I_did.__And_I_learned_my_lesson.__How_do_I_go_back? Well, I did. And I learned my lesson. How do I go back?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#What_software_versions_and_features_does_MacZFS_support? What software versions and features does MacZFS support?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#How_does_it_compare_to_the_current,_free_Solaris-based_release? How does it compare to the current, free Solaris-based release?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#How_does_MacZFS_compare_to_Apple's_10a286_beta_release? How does MacZFS compare to Apple's 10a286 beta release?]
  * [http://code.google.com/p/maczfs/wiki/FAQ?ts=1300860697&updated=FAQ#What_do_I_do_if_I_absolutely_need_ZFS_features_which_are_more_ad What do I do if I absolutely need ZFS features which are more advanced than MacZFS's current implementation, or which are found only on another OS?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Can_I_boot_from_ZFS?__Can_I_convert_totally_from_HFS+_to_ZFS? Can I boot from ZFS? Can I convert totally from HFS+ to ZFS?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Will_my_ZFS_volumes_automatically_appear_upon_boot_and_then_prop Will my ZFS volumes automatically appear upon boot and then properly shut down?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Does_MacZFS_work_with_Spotlight? Does MacZFS work with Spotlight?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Can_I_share_zpools_between_other_operating_systems_such_as_Linux Can I share zpools between other operating systems such as Linux, FreeBSD, or Solaris?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Can_I_host_my_Time_Machine_archives_on_a_ZFS_target? Can I host my Time Machine archives on a ZFS target?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Will_Time_Machine_back_up_from_a_ZFS_source? Will Time Machine back up from a ZFS source?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Does_anyone_have_MacZFS_in_commercial_production,_with_their_rep Does anyone have MacZFS in commercial production, with their reputations staked on it?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Is_there_any_point_of_using_it_on_a_laptop_or_a_system_with_only Is there any point of using it on a laptop or a system with only one hard drive?]
  * [http://code.google.com/p/maczfs/wiki/FAQ#Does_ZFS_run_on_iOS? Does ZFS run on iOS?]

_*Where do I get MacZFS and how do I install it?*_

MacZFS 74.1 is the current stable release. Click here to download it. Just download on a supported system and double click that file. There is a release of PureDarwin which includes an older ZFS, and other info about it. Then you're ready to follow our Getting Started Guide to partition your drives, make a zpool, and use ZFS.

_*On what systems does MacZFS run?*_

Supported systems include any system running MacOS 10.5/10.6/10.7 or PureDarwin, with either PowerPC or Intel CPUs, 32-bit or 64-bit. Many people have run it for years on 32-bit CPUs, or on 64-bit CPUs in 32-bit kernel mode. But ZFS has always been fundamentally performance-optimized for 64-bit operation. 64-bit mode and at least 1 or 2 GB of RAM are recommended on any ZFS platform.

_*How stable is MacZFS? Can I totally trust it?*_

First and foremost, MacZFS is ZFS. MacZFS 74.1 is a stable release based on Oracle's stable onnv_74. It is from a timeframe where ZFS was already almost ten years mature, in massively widespread and large-scale enterprise usage, and was already several years beyond virtually any other storage platform in the world. Its zpool version 8 is about a year or two behind the mainstream free release found in OpenIndiana, but is nevertheless a highly venerable, stable, widely tested, and mature product.

MacZFS is ZFS. Kernel panics are truly rare, and are unheard of for most users. If your system crashes, you can be sure that all of your data will still be there. There have been no reported cases of data loss using any implementation of ZFS on MacOS in recent history. That history spans years, if ever.

We believe it to be the best storage solution currently available for most MacOS users, at any price.

Please see our suggested quality assurance methods.

Your typical point of comparison on MacOS is the mighty HFS+. So let's rephrase the question. Do you consider HFS+ to be perfectly stable? Do you trust HFS+ with your money and your time? Is all of your HFS+ data still there? Are you sure? We hope that helps to put things into perspective.

_*What is the future of MacZFS?*_

Development is moving along, although slowly. At the risk of sounding self-aggrandizing, the primary reason for this pace is that it's a huge project for a niche community, and the second reason is actually *the fact that it's so good and stable*. Developers are devoutly participating in the mailing list and making periodic releases, but nobody in the world is being forced by pain and suffering to hack or fix it.

Because as far as we know, it absolutely just works.

However, we are *very* enthusiastically accepting any new developers or sponsors. We will *joyfully* find any appropriate way to collaborate with Ten's Complement upon their imminent source code release.

In any case, MacOS's architectural development path has been so stable that the old svn 119 ZFS still loads on MacOS 10.6, and MacZFS 74 loads on MacOS 10.7 beta. So we expect it to continue to work.

_*Does Apple support or interact with MacZFS?*_

No, we have had no contact from any current Apple employees. But we would love to hear from past or present Apple employees, on any level! Good job, guys. We're kinda fans.

_*Is there any negative ramification from the fact that Apple doesn't support ZFS?*_

There is no absolute technical detriment. But it would be really really nice to have completed the low level integration with XNU and with Finder and maybe with a few APIs. And it would be very helpful if Mac OS and various applications were not hardcoded to be based on case-insensitivity and on HFS+.

Thanks to Sun's initial release years ago, ZFS is forever free software. Existentially speaking, there is no tangible thing which the community had, or was entitled to receive, which was truly taken away by Apple's withdrawal. The free software volunteer community loves its corporate benefactors, but corporations neither grant nor deny a community its right to exist, and they don't define who the community are as people. Not even those who own all of the copyrights can completely grant or define such things, as long as the software is truly free. This is the case with ZFS.

Apple started things off in a big, big way. They marshalled a global groundswell of awareness and support for ZFS and for the concept of data integrity, for which the MacZFS project is forever grateful. The company withdrew amicably from the project, in their impersonally policy-driven corporate fashion; we picked up the pieces and moved on. We maintained the viability and market share of ZFS on MacOS beyond *two* -- going on three -- major operating system releases, should they ever return.

When Apple left, the world missed out on a lot of anticipated software gifts, to which the world was never entitled to begin with. Similarly, the canonical free ZFS platform -- the whole operating system of OpenSolaris -- has been completely discontinued by Oracle, and yet their community has carried on in full force nevertheless. There is a ZFS working group, so that ZFS can theoretically exist independently of any operating system, any entity, or any private interest.

Apple continues to actively bolster countless free software projects and open standards that we all use daily. We regret to see them leave the project, and the whole world hopes that they return at any time.

_*Who is MacZFS intended for? Is it easy to set up? Is it Mac-like?*_

MacZFS is for people who have MacOS, who have data, and who really *care* about keeping *all* of their data. It'll store your petabytes with raging speed, or it'll keep the bit-rotted bleeps and bloops out of your iTunes library.

Assuming that you're not terrified of Terminal.app, it's about as easy as you make it. The simplest MacZFS setup can begin with one partition on one hard drive, double-clicking the installer, and typing one or two commands. Boom, guaranteed data integrity on all platforms, forever. That may include dozens of terabytes and the ability to withstand the loss of several hard drives.

Then, all of your hard drives automatically pop up as one giant hard drive in the Finder from then on, just like any other hard drive. Your files look and act exactly like any other files, appearing in all your applications, except that they're case-sensitive. MacOS makes it all magically work just how you expected.

We have one intrepid user who quickly set up a four-drive raidz1 array by himself, with no prior Unix experience, just by following the instructions on this web site. Then he got minimal post-installation configuration help (how to use 'chmod') from our volunteers on IRC. No joke.

Some people have a single laptop drive shared with HFS+, some people have eSATA JBODs on a Mac Mini, and some people have 16 terabytes on a Mac clone. MacZFS can handle the biggest, most expensive setup that you can probably imagine seeing in your home or office. Given any MacOS system, there is no limit to the size or complexity.

As with other ZFS systems, MacZFS is *generally* for system administrators, for people who follow that mentality, and for people who can follow written instructions. But you retain the familiarity and niceness of the surrounding MacOS environment. Its one-time initial setup is command line only, but ideally you just set it up and forget it. You just need to develop a basic storage strategy, about how to allocate your hard drives and to plan for the future. You can do web searches, or chat with us on the mailing list or on IRC, to quickly sum up such a strategy.

MacZFS suits the raw technological needs of Mac users who have the drive (ha!) to set it up, ranging from personal to small enterprise level users. The only features that it lacks are the higher end features which are largely unique to ZFS and which are found near the enterprise level of IT, in major data centers. And even then, those missing features are usually provided only by ZFS on another platform.

If you're reading this, then it's almost certainly for you.

See an old movie on ZFS basics.

_*What quality assurance methods can I use to ensure MacZFS's stability for my needs?*_

Please see our suggested quality assurance methods.

_*Is there a GUI with which to manage MacZFS?*_

Not officially, but we need someone to see if ZFSGuru's web-based GUI works on MacOS! Here is the feature list with screenshots.

_*Can it fill and empty the Trash in the normal Mac way?*_

Yes!

_*Should I install one of the development versions, one that's not the stable version? The number is higher!*_

No!

_*Well, I did. And I learned my lesson. How do I go back?*_

You should completely uninstall it, reboot, and then install the latest stable package. If you had created a zpool with a zpool version higher than that which is supported by the stable release, then you must either destroy and recreate that zpool, or you must use the development MacZFS to create an additional and backward-compatible zpool on another partition using and possibly and then copy your data.

_*What software versions and features does MacZFS support?*_

MacZFS 74.1 is the current stable release, based on Oracle's , providing zpool version 8 and zfs version 2. This supports hot spares, raidz2/mirror/stripe, gzip compression, block duplication, separate ZIL devices, and every bit of bit-for-bit data integrity guarantee that ZFS ever provided. Zpool version 8 is a highly venerable and mature codebase which provides all functionality and integrity that are absolutely essential.

The unstable MacZFS 77, based on Oracle's is at zpool version 9. It will panic, and is only to be used by ZFS developers.

_*How does it compare to the current, free Solaris-based release?*_

It's missing some of the more high-end features, including deduplication, encryption, raidz3, relocatable ZIL support, ACL support, L2ARC, and it's missing case insensitivity. It's missing some non-critical bug fixes. It's missing some higher end internal performance enhancements. See Wikipedia's list of notable features above zpool version 8.

Here's the list of all zpool versions on any platform.

If you have to ask whether you need any of that, then the answer is *no*. For the rest of you, you almost certainly don't absolutely require it, at least not on your MacOS system. You can still make a totally reliable and fast system with dozens of hard drives using the same strategies which almost all of the world's ZFS users still use anyway. As with ZFS standard practice, you can scale by striping your raidz1/2 vdevs, and you can speed it up by adding an SSD and/or a hard drive stripe and/or ZIL. And you can make sparse bundles containing HFS+, for your case insensitivity.

_*How does MacZFS compare to Apple's 10a286 beta release?*_

Apple obviously had done some amazing work, and we thank them for the partial source code release (not all of which we have incorporated into MacZFS), but that release is not to be put into use. Please take a look at the 10a286 source code which Apple released.

_*What do I do if I absolutely need ZFS features which are more advanced than MacZFS's current implementation, or which are found only on another OS?*_

If that's the case, then you probably aren't reading this because you already know what to do. ;-) You can get another machine to use as a ZFS server running a different OS and share that via NFS, iSCSI, AFP, or whatever. Or you can run, say, OpenIndiana, inside a virtual machine such as VMware or VirtualBox hosted on MacOS, giving the VM access to a host file or to your raw hard drives containing its own zpool, and exporting that zpool back to the MacOS host using iSCSI/NFS/AFP. *Whew*. There are several people doing this, in order to achieve deduplication of things like source code repositories.

_*Can I boot from ZFS? Can I convert totally from HFS+ to ZFS?*_

No, you can't boot from ZFS on MacOS. MacOS can currently only boot from HFS+ volumes. That would require another level of work.

You can carefully move a lot of things to ZFS. It was said years ago, that some people migrated almost everything to ZFS except for /System and /Library and a few other ancillary and boot-related directories. The other issue is a lack of case insensitivity in MacZFS.

Some apps, such as Adobe Creative Suite, and some of the art from Final Cut Studio, are case-insensitive. And MacZFS doesn't support case insensitivity, requiring you to install them to HFS+-formatted DMGs using symlinks or something like that with a tool like 'shove'.

``/System//Library/PrivateFrameworks/PackageKit.framework/Versions/A/Resources/shove``

Furthermore, if you have auto-login enabled for your user's desktop, it is recommended that you keep your ~/Library on HFS+ just in case ZFS hasn't mounted by the time your user has logged in.

_*Will my ZFS volumes automatically appear upon boot and then properly shut down?*_

Yes, if you followed the instructions in the Getting Started guide upon the initial creation of your zpools. All it requires is a valid hard drive partition type on a GPT volume. If not, such as with zpools you moved from another system or zpools you created inside of a loopback file, you can instruct MacOS to manually execute an import/export command upon startup and shutdown. See the bottom of the Getting Started guide for more information.

Here are tentative workarounds as discussed here. Don't forget how paranoid launchd is, and do this: Please read about `launchd` and submit something better! See Apple's launchd documentation and this discussion.

_*Does MacZFS work with Spotlight?*_

Not really. It'll waste resources scanning your volumes but then you can't search them. Some people disable Spotlight from their ZFS volumes using `mdutil -i off /Volumes/myzpool`.

_*Can I share zpools between other operating systems such as Linux, FreeBSD, or Solaris?*_

Yes. ZFS was always designed to be portable and to respect cross-platform behavior, including endianness. As with almost any other data format, you have to use the lowest common denominator of versions. MacZFS 74 supports zpool version 8. So if you create a zpool on MacZFS, it'll work on any recent version of Linux, FreeBSD, or Solaris. But if you create a zpool on those other systems, you must create it at version 8 using this:

If you do not, it will be permanently unreadable in any ZFS system of a lower zpool version, such as MacZFS 74. In this case, you will have to *copy* your data over from the previous system to another zpool on your MacZFS system. You can use to preserve all basic ZFS metadata, or use the totally generic rsync.

Beware of filenames containing non-ASCII characters. Any such filename needs to be encoded in utf-8 with MacOS's peculiar normalization, or you won't be able to access the file on MacOS, not even to delete it.

And as with any cross-platform filesystem access, beware of ACL incompatibilities.

_*Can I host my Time Machine archives on a ZFS target?*_

Yes, but not directly. Time Machine, itself, requires either a raw block device formatted with HFS+, or the latest version of AFP. To host your Time Machine on a local MacZFS volume, you must do one of the following:

  * set up an AFP server such as netatalk on your LAN or on localhost
  * Create a sparsebundle disk image, formatted to HFS+, and run this systemwide command once:

Alternatively, if your ZFS is hosted on a platform other than MacOS, you can either use netatalk or you can export a zvol as an iSCSI device, to a Mac OS iSCSI connector, and format that as HFS+.

See this or this.

Here is an introduction to the reason why Time Machine is hardcoded to HFS+.

_*Will Time Machine back up from a ZFS source?*_

No. Time Machine is another one of Mac OS's features which is predominantly based on HFS+. Please feel free to post to the MacZFS mailing list to contribute background information to explain this issue.

_*Does anyone have MacZFS in commercial production, with their reputations staked on it?*_

Yes, although it's impossible to count the users of free software. They range from personal installations, to consultants, to several unattended Mac Mini server deployments in dental offices. All ZFS users tend to have some *serious* hardware and livelihoods devoted to it. If they have critical problems, it's safe to bet that we hear about them. Check the mailing list archives and IRC channel for stories!

_*Is there any point of using it on a laptop or a system with only one hard drive?*_

We have lots of users, including primary MacZFS developers, who have a single-drive laptop partitioned as HFS+ for booting and ZFS for data. No problem. The total failure of an entire hard drive is not necessarily one's greatest concern. Silent data corruption, also known as "bit rot", is everpresent. ZFS protects against that whether you have a lot of files, or DMGs/sparsebundles/clones. And ZFS can give you some single-drive redundancy anyway by making copies.

_*Does ZFS run on iOS?*_

Here is an older article with speculation and here's a newer article with an unsubstantiated claim that it has arrived in iOS 5.1 beta, although that may actually be an unreleased internal-only experimental build. iOS is essentially an embedded MacOS, and it would take about the same effort to port. iOS is based on case-sensitive HFS+. As a side note, NEC has created an embedded ZFS for ARM, mentioned here

Clone this wiki locally