The Computer Oracle

Access a ZFS volume in Windows?

--------------------------------------------------
Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------

Music by Eric Matyas
https://www.soundimage.org
Track title: Techno Intrigue Looping

--

Chapters
00:00 Access A Zfs Volume In Windows?
00:43 Accepted Answer Score 10
01:23 Answer 2 Score 13
02:52 Answer 3 Score 21
03:41 Answer 4 Score 8
05:04 Thank you

--

Full question
https://superuser.com/questions/289189/a...

--

Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...

--

Tags
#windows7 #zfs

#avk47



ANSWER 1

Score 21


zfs-win

… read-only drive can be mounted …

— and I guess that further development might enable write access.

Following installation on Windows 7:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\Administrator>chdir "C:\Program Files (x86)"

c:\Program Files (x86)>zfs-win
ZFS for Windows

usage:
  mount <mountpoint> <dataset> <pool ..>
  list <pool ..>

examples:
  zfs-win.exe mount "m:\" "rpool/ROOT/opensolaris" "\\.\PhysicalDrive1" "\\.\PhysicalDrive2"
  zfs-win.exe list "Virtual Machine-flat.vmdk"

Whilst editing the compatibility section of the OpenZFS wiki I was advised that zfs-win can not read ZFS pool version 28. (I don't do code, so from the source I can't tell which version is supported – sorry.)




ANSWER 2

Score 13


ZFS in virtual machine can work just fine if follow one simple rule never ever lie to ZFS. ZFS goes to great length to keep your data from getting corrupted (checksums, copy-on-write, dittoblocks, mirrors or raid-z, etc) so you should do everything in your power to let ZFS directly access your disks. All the horror stories of virtualized ZFS issues come from some level of buffered IO from virtualization software buffers, disk controller cache or even windows with writethrough cache if you're dumb enough to use virtual disks instead of whole raw disks. Each virtualization package does raw disks slightly differently, but VMWare Workstation, VMWare Fusion and VirtualBox all support it without too much effort.

You mentioned attaching it to your Mac, so you could either use something OSX native like ZEVO (formerly Z-410) or run a ZFS virtual machine just like you would from Windows 7. If your moving your pool between mac/windows (ZEVO <-> VM) you'll want to zpool export poolname before switching. No need if your booting the same VM on both sides. You should strive to have no virtual disks (vmdk files) hosted on HFS+ or NTFS but instead make one of the external disks (or an partition of your internal disk) bootable so you can boot it non-virtually without too much effort.

Of note if your Mac has Thunderbolt you can use that instead of USB2 or FireWire to connect multiple disks for ZFS. Something like a SonnetTech Thunderbolt PCIe bridge (ExpressCard or PCIe) combined with an eSATA or SAS card (or even a USB3 card) will be orders of magnitudes faster than regular USB2.




ACCEPTED ANSWER

Score 10


There is no OS level support for ZFS in Windows.

As other posters have said, your best bet is to use a ZFS aware OS in a VM.

Options are:

  • Open Solaris
  • FreeBSD
  • Linux (through zfs-fuse, or zfs-on-linux)

One other possibility is to get hold of a small low-powered computer (say an Atom based system) to connect to the drives and act as a network head unit to the disks sharing the data out through the network through a standard protocol like CIFS (Samba). Then you can run the ZFS aware OS direct on the metal.




ANSWER 4

Score 8


I'll bet by the age of this thread that you've already moved on, but I'll put my two cents in for the sake of anyone else who still has questions on this matter.

I have built several NAS machines using ZFS as the file system. One of the easiest to use is either FreeNAS or NAS4Free. I've also used Solaris before the previous two offered de-duplication and encryption in their ZFS release versions. As was mentioned, you can use the Atom processors with success as a low power motherboard solution. Just be sure to feed them as much RAM as the board can support to make up for the lack of power from the CPU. Obviously, a NAS isn't quite as fast as a local disk, but it's better than not reaping the benefits of ZFS at all.

I've used a VM to access some USB sticks that I in turn formatted with ZFS in a RaidZ pool. I then shared them tho the host machine through a virtualized LAN connection. While it did work, I don't know what kind of reliability or performance issues you would be up against doing something like that. USB drives are so inherently slow that no worthwhile data would have been obtainable from that setup... so, I never bothered to test it. However, I imagine there would be a lot of CPU overhead doing something like that.

In all, if you have the budget, I would suggest doing a NAS over a VM. Last month I built one with a small Chenbro case and a Supermicro Atom board. I fed it 4GB of RAM and 4x3TB SATA drives in RaidZ. It bench-marked at 135MBps sustained. I've not performed any other tests.