To the point & Out of the box


Yesterday I installed ZFS support for OSX to give it a try. It’s not ready for prime-time yet but you can get read/write ZFS support pretty easy for OSX.

The question is: Why bother with a new filesystem at all? Well, there are quite some reasons.

  1. Most filesystems are drive centric. This means, if you have three drives, you have three data storage devices. These don’t share anything. And that’s a big problem especially regarding capacity. Because having 3 * 1TB don’t give you 3TB storage but three times 1 TB, which is quite something different. So, adding more drives doesn’t really help to scale your storage.
  2. Most filesystems don’t care about backups. If you use a modern filesystem you won’t have problems with data loss or so. But doing backups to save a specific state is up to you. You need to choose a backup software, setup the right backup cycles, manage all the backups etc. For me the biggest problem is how to handle several sets of 1TB backups? I don’t want to build-up a hard-drive warehouse at home.
  3. Multiplatform support. The XP filesystem NTFS is not open, which locks you into the Windows world. Yes there are NTFS drivers for Linux etc. but it’s a hack, and if you are on OSX you are out of luck. There are tools that can read Apple’s HFS+ filesystem on Windows. But even these solutions are fragile. I use OSX, Linux and Windows. And I need to exchange data not only via network. At the moment I don’t know of any ZFS support for Windows but at least the ZFS filesystem is open-sourced by Sun.
  4. Security. These days I don’t like keeping any hard-drives unencrypted. Being a road-warrior you have to encrypt sensible data all the time. Most solutions these days are add-ons to existing filesystems. Some provide encryption options but either these are not trusted or it’s not very practicable to use them.
  5. Safety. Yes, you can add RAID, mirroring etc. to your system. But do you really understand what it helps for? The checksum stuff is a disk-only checksum and doesn't help against faults in the I/O path before that data gets written to disk. So, you can ruin a RAID array quite easily. And if it can recover, it takes ages to re-build. Expecting more and more data in the next years, this time will become critical if you need your equipment for work.

As you can guess, ZFS address all of these points with a very nice solution. Others have written a lot about ZFS features so I don’t list them here in all detail. Here are some features from
SUN’s official site:

  • Mind-boggling scalability—128-bit file system 16 billion billion times the capacity of 32- or 64-bit file system
  • Rock-solid data integrity—all data is protected by 64-bit checksums, consistency of data is maintained at all times
  • Breathtaking speed—proven and cutting edge technologies combine to optimize performance
  • Unprecedented manageability—eliminates the need for a volume manager, GUI automates administrator intent
  • POSIX compliant—applications run without modification

To me the most useful features today are:

  1. Snapshots: Make an instant backup of a ZFS data-set via a snapshot. This works like a version control system. ZFS just don’t overwrite the last state of disk blocks belonging to the data-set. Instead it uses it copy-on-write approach and maintains the different revisions for each file.
  2. Simple for administration. It’s mostly invisible. Things like block-size, striping etc. is all build-in and simple to handle. At the moment you have to use the command-line. But it’s simple, you mostly have two commands: ZFS and ZPOOL to deal with.
  3. It’s there today. Not perfect at the moment but useable for daily work. If you can live with some „not-so-nicely OSX integration“ give it a try. You won’t see it in finder but you can use aliases.

To get started take a look at
Apple’s web site for ZFS.