What I have done is create several Datasets, for which I can assign different quotas and permissions, for each type of media that I have.
- 3DMovies
- Comedy
- HDMovies
- Music
- TVShows
How you set permissions on this is up to you, everyone has different needs. I'm not to bothered about security in my home media set-up as nothing personal is going to be saved here. You can set-up guest access or use local user accounts.
Go to Storage-Volumes-/mnt/<your volume> and select Create ZFS Dataset
Enter a name and click Add Dataset.
For Guest Access to CIFS
Go to Accounts and create a user called guest, add to Primary Group ID of guest and tick Disable Password Login, click OK to create.
Go to Services and select the spanner next to CIFS and change Guest account to the guest user. Save your changes and turn the CIFS service on.
Go to Storage-Volumes-/mnt/<your volume>/<your dataset> and select Change Permissions. Set Owner (user) to guest, Owner (group) to guest, tick write under group and then click change.
Go to Shares-Windows (CIFS) and click New Windows (CIFS) Share. Give the share a name, browse to the Dataset you are sharing and tick both Allow Guest Access and Only Allow Guest Access. Click OK
You should be able to brows this CIFS share as a guest without being prompted to log on.
For Guest Access to NFS
We've already set user permissions on the Dataset for CIFS. With NFS we can decide which workstations or networks (IPs) can use the share as well as which user.
Go to Shares-UNIX (NFS) and select Add Unix (NFS) Share. Give the share a name in Comment. I add my local network in CIDR form 192.168.2.0/24 to allow everything, set Mapall User and Mapall Group to guest and browse to the Dataset you are sharing. Click OK
In windows you must first install NFS tools then open a CMD and enter:-
showmount -e <ip of your FreeNAS box>
You should see your NFS shares
to mount it in type:-
mount -o nolock \\<IP of FreeNAS box>\mnt\<volume>\<dataset> <drive letter>
You should be able to brows this NFS share as a guest without being prompted to log on.