FreeBSD ZFS NFS share issues

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

weust

Active Member
Aug 15, 2014
353
44
28
44
I have some issues with NFS sharing/permissions I hope somehow has a solution too.
Been searching all over the internet, but good information is very hard to find.
All bits and pieces, and old or plain useless.

I've set up FreeBSD (actually HardenedBSD) as a ZFS server.
Home use, only user, so not too fussed with locking things down too much atm.
Created a mirrored pool and added a log and cache disk to that pool.
Created datasets, and set 777 on the dataset directories.

Then I shared a dataset using NFS (zfs set sharenfs="network=192.168.1.0/24" pool-mirror/data).
In both Linux and Windows 10 (with the added NFS feature) I can create and modify files and directories, but when I try to copy a file to it, Windows throws me this error:
Error 0x8007045D: The request could not be performed because of an I/O device error
Doing the same in Linux is just fine.

I also notice that pretty much everything is very slow in Windows.
Accessing the share, deleting a file, saving a file, creating a directory.
It all takes 10 seconds or so before something is happening.
Also, file transfer is capped at 60MByte/s it seems.

Does anyone have ideas on how to get this working, or should I leave NFS alone and just stick to SMB?
 

rysti32

New Member
Apr 14, 2018
10
3
3
39
Do you see any error messages in /var/log/messages on the NFS server at the time of the Windows error?
 

weust

Active Member
Aug 15, 2014
353
44
28
44
Haven't checked that log yet. Will do so when I've booted the system up again.
 

whitey

Moderator
Jun 30, 2014
2,766
868
113
41
In general at least in my experience use SMB for Windows and NFS for Linux. Multi-protocol to same share/export makes this possible.
 

weust

Active Member
Aug 15, 2014
353
44
28
44
I thought I read somewhere that sharing a directory with NFS and SMB a the same time wasn't wise?
Forgot why though.