Skip to content

NAS sharing

Configure uCore's NFS and Samba tools, firewall services, and SELinux contexts.

ucore adds storage tools including duperemove, mergerfs, and SnapRAID, plus NFS server utilities and Samba. These packages do not configure a share or storage policy for you. Plan permissions, redundancy, backups, and network exposure before enabling file sharing.

The examples below come from the uCore project README. Adapt firewall zones and paths to the host, and test access from the clients that should be allowed.

NFS

Read Fedora’s NFS server guide before configuring exports. If firewalld is enabled, allow NFS in the server zone:

shellAllow NFS through firewalld
sudo firewall-cmd --permanent --zone=FedoraServer --add-service=nfssudo firewall-cmd --reload

SELinux blocks NFS exports by default unless the shared directory has an appropriate context. For a read-only export:

shellSet SELinux context for a read-only NFS share
sudo semanage fcontext \    --add --type "public_content_t" \    "/path/to/share/ro(/.*)?"

For a read-write export, use public_content_rw_t for the matching path:

shellSet SELinux context for a read-write NFS share
sudo semanage fcontext \    --add --type "public_content_rw_t" \    "/path/to/share/rw(/.*)?"

NFS exports are configured in /etc/exports or /etc/exports.d/. After reviewing the export rules, enable and start the server:

shellEnable and inspect the NFS server
sudo systemctl enable --now nfs-server.servicesudo systemctl status nfs-server.service

Samba

Read Fedora’s Samba guide. Allow Samba in the server’s firewalld zone:

shellAllow Samba through firewalld
sudo firewall-cmd --permanent --zone=FedoraServer --add-service=sambasudo firewall-cmd --reload

For a file-context rule, replace the example path with the actual share directory:

shellSet SELinux context for a Samba share
sudo semanage fcontext \    --add --type "samba_share_t" \    "/path/to/share(/.*)?"

Configure shares in /etc/samba/smb.conf or use Samba user shares. Review the access controls before enabling guest or broad network access. Then start the service:

The upstream README gives this net usershare command shape; set a real share path and appropriate access options rather than copying placeholders literally:

shellSamba user share template
net usershare add sharename /path/to/share \    [comment] [user:{R|D|F}] [guest_ok={y|n}]
shellEnable and inspect Samba
sudo systemctl enable --now smb.servicesudo systemctl status smb.service

For details on SELinux share contexts and troubleshooting, see SELinux guidance.

Source: uCore NAS guidance, Fedora NFS server documentation, and Fedora Samba documentation. Checked September 18, 2026.