--- title: NFS visible: true --- [toc] Last modified: 2024-01-26 ## Linux Server `# apt install nfs-server` Shares can be configured in `/etc/exports` ` (,) (,...)` ### Options ``` ro: specifies that the directory may only be mounted as read only rw: grants both read and write permissions on the directory no_root_squash: is an extremely dangerous option that allows remote “root” users the same privilege as the “root” user of the host machine subtree_check: specifies that, in the case of a directory is exported instead of an entire filesystem, the host should verify the location of files and directories on the host filesystem no_subtree_check: specifies that the host should not check the location of the files being accessed withing the host filesystem sync: this just ensures that the host keeps any changes uploaded to the shared directory in sync async: ignores synchronization checks in favor of increased speed ``` _Example single host:_ `/mnt/nfs 192.168.1.123(rw,sync,no_subtree_check)` _Example whole subnet:_ `/mnt/nfs 192.168.1.0/24(rw,sync,no_subtree_check)` Apply new config by restarting the service. `# systemctl restart nfs-server` Show configured shares `$ cat /var/lib/nfs/etab` ### UID mapping > [Mapping UID and GID of local user to the mounted NFS share](https://serverfault.com/a/632315) ## Linux Client `# pacman -S nfs-utils` `# apt install nfs-common` Mount through terminal `# mount -t nfs4 (ip):(mountpoint) (local mountpoint)` Can also be mounted with fstab ## Windows Client Search for `Turn Windows features on or off` Check everything under `Services for NFS` and click "OK" Mount as mapped network drive `mount -o anon \\(ip)\(mountpoint) (letter):`