Skip to content

NFS Shares

Export ZFS filesystems as NFS shares for Linux and macOS clients. MayaNAS supports NFSv3, NFSv4, NFSv4.1, and NFSv4.2, with optional Kerberos authentication.

Navigate to NFS Shares in the Web UI sidebar.

  1. Click New
  2. Select a ZFS filesystem (from Volumes & Pools)
  3. Configure export options:
FieldDescriptionDefault
VolumeZFS filesystem to export
Allowed ClientsIP/subnet filter (e.g., 10.0.0.0/24 or *)*
OptionsNFS export optionsrw,no_root_squash
  1. Click Create
OptionDescription
rwRead-write access
roRead-only access
no_root_squashAllow root access from clients
root_squashMap root to anonymous user
syncSynchronous writes (safer)
asyncAsynchronous writes (faster)
sec=krb5Require Kerberos authentication
sec=krb5iKerberos with integrity checking
sec=krb5pKerberos with privacy (encryption)

Select an inactive share and click Bind to make it available to NFS clients.

Select an active share and click Unbind to stop serving it. Connected clients will lose access.

Select a share and click Delete to remove the mapping entirely.

  • View All — All shares
  • View Exported — Active shares only
  • View Inactive — Shares not currently exported
Terminal window
# NFSv4 (recommended)
sudo mount -t nfs4 <VIP>:/tank/data /mnt/data
# NFSv3
sudo mount -t nfs -o vers=3 <VIP>:/tank/data /mnt/data
Terminal window
sudo mount -t nfs4 <NODE_IP>:/tank/data /mnt/data
# VIP-based mount (survives failover)
10.0.1.100:/tank/data /mnt/data nfs4 defaults,_netdev 0 0

Navigate to Configure Server > NFS to tune NFS server settings:

SettingDescriptionDefault
NFSd ThreadsNumber of NFS server threads (1 per CPU core recommended)Auto
NFS VersionsEnable/disable v3, v4, v4.1, v4.2v3, v4, v4.1, v4.2
TCPTCP transport (port 2049)Enabled
RDMARDMA transport (port 20049)Disabled (unless hardware present)
NFSv4 Lease TimeClient lease duration (10–3600 seconds)90 seconds
NFSv4 Grace PeriodRecovery window after server restart (10–3600 seconds)90 seconds

When Active Directory or standalone Kerberos is configured, NFS shares can require authentication. See Active Directory & Kerberos for setup.

Once configured:

  • The NFS Shares panel shows a lock icon on Kerberos-secured exports
  • Clients must have valid Kerberos tickets to mount
Terminal window
# Client-side Kerberos mount
kinit user@DOMAIN.COM
sudo mount -t nfs4 -o sec=krb5 <VIP>:/tank/data /mnt/data
Terminal window
# Create an NFS share (volume must be a ZFS filesystem)
mayacli create mapping volume=tank/data controller=nfs3 \
options='"*(rw,no_root_squash)"'
# Create an NFS share restricted to a subnet
mayacli create mapping volume=tank/data controller=nfs3 \
options='"10.0.0.0/24(rw,sync)"'
# Export (bind) a share
mayacli bind mapping volume=tank/data
# Unexport (unbind) a share
mayacli unbind mapping volume=tank/data
# Show all NFS mappings
mayacli show mapping controller=nfs
# Delete a share mapping
mayacli delete mapping volume=tank/data controller=nfs

See CLI Guide for the full command reference.