Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
howtos:network_services:nfs-quick_and_dirty_setup [2014/01/20 23:07 (UTC)] arfon created ! |
howtos:network_services:nfs-quick_and_dirty_setup [2019/10/08 04:38 (UTC)] (current) bassmadrigal Fix filename typo per Skaendo on LQ forum |
||
---|---|---|---|
Line 1: | Line 1: | ||
<!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> | <!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> | ||
- | Known to work on Slackware 14 & 14.1 \\ | + | ====== NFS - Quick and Dirty Setup ====== |
+ | |||
+ | Known to work on Slackware 14, 14.1 and 14.2 \\ | ||
====== Assumptions ====== | ====== Assumptions ====== | ||
Line 17: | Line 19: | ||
<code>vi /etc/exports</code> | <code>vi /etc/exports</code> | ||
add: \\ | add: \\ | ||
- | <code>/nfs_share 192.168.1.1/24(rw,sync,no_subtree_check)</code> | + | <file sh /etc/exports>/nfs_share 192.168.1.1/24(rw,sync,no_subtree_check)</file> |
Start the NFS and RPC daemons \\ | Start the NFS and RPC daemons \\ | ||
Line 23: | Line 25: | ||
chmod 755 /etc/rc.d/rc.rpc | chmod 755 /etc/rc.d/rc.rpc | ||
/etc/rc.d/rc.nfsd start | /etc/rc.d/rc.nfsd start | ||
- | /etc/rc.d/rpc start</code> | + | /etc/rc.d/rc.rpc start</code> |
Export the shares \\ | Export the shares \\ | ||
Line 34: | Line 36: | ||
Create the mount point \\ | Create the mount point \\ | ||
<code>mkdir /mnt/nfs_share</code> | <code>mkdir /mnt/nfs_share</code> | ||
+ | Start the RPC daemon \\ | ||
+ | <code>chmod 755 /etc/rc.d/rc.rpc | ||
+ | /etc/rc.d/rc.rpc start</code> | ||
Line 46: | Line 51: | ||
<code> vi /etc/fstab</code> | <code> vi /etc/fstab</code> | ||
add: \\ | add: \\ | ||
- | <code>my.nfs.server:/nfs_share /mnt/nfs_share nfs rw,defaults 0 0</code> | + | <file sh /etc/fstab>my.nfs.server:/nfs_share /mnt/nfs_share nfs rw,defaults 0 0</file> |
**SEMI-AUTO-MOUNT** \\ | **SEMI-AUTO-MOUNT** \\ | ||
Line 52: | Line 57: | ||
<code> vi /etc/fstab</code> | <code> vi /etc/fstab</code> | ||
add: \\ | add: \\ | ||
- | <code>my.nfs.server:/nfs_share /mnt/nfs_share nfs rw,noauto 0 0</code> | + | <file sh /etc/fstab>my.nfs.server:/nfs_share /mnt/nfs_share nfs rw,noauto 0 0</file> |
then when you want to mount, just run: \\ | then when you want to mount, just run: \\ | ||
<code>mount /mnt/nfs_share</code> | <code>mount /mnt/nfs_share</code> | ||
Line 67: | Line 72: | ||
chmod 755 /etc/rc.d/rc.rpc | chmod 755 /etc/rc.d/rc.rpc | ||
/etc/rc.d/rc.nfsd start | /etc/rc.d/rc.nfsd start | ||
- | /etc/rc.d/rpc start | + | /etc/rc.d/rc.rpc start |
exportfs -a</code> | exportfs -a</code> | ||
**CLIENT:** \\ | **CLIENT:** \\ | ||
<code>mkdir /mnt/nfs_share | <code>mkdir /mnt/nfs_share | ||
+ | chmod 755 /etc/rc.d/rc.rpc | ||
+ | /etc/rc.d/rc.rpc start | ||
echo "YOUR_NFS_SERVER:/SHARED_DIR /CLIENT_MOUNT_POINT nfs rw,defaults 0 0" >> /etc/fstab | echo "YOUR_NFS_SERVER:/SHARED_DIR /CLIENT_MOUNT_POINT nfs rw,defaults 0 0" >> /etc/fstab | ||
mount /CLIENT_MOUNT_POINT | mount /CLIENT_MOUNT_POINT | ||
Line 79: | Line 86: | ||
PROBLEM: NFS shares won't mount on client box with a "Stale NFS file handle" error.\\ | PROBLEM: NFS shares won't mount on client box with a "Stale NFS file handle" error.\\ | ||
- | SOLUTION: | + | SOLUTION: \\ |
- | 1) Forcibly unmount the directory on the CLIENT machine (if mounted): <code>umount -f /mnt/nfs_share</code> | + | 1) Forcibly unmount the directory on the CLIENT machine (if mounted): |
- | 2) Flush the NFS registry on the SERVER machine: <code>exportfs -f</code> | + | <code>umount -f /mnt/nfs_share</code> |
- | 3) Remount the NFS share | + | 2) Flush the NFS registry on the SERVER machine: |
- | + | <code>exportfs -f</code> | |
+ | 3) Remount the NFS share | ||
+ | 4) No Root Squash: | ||
+ | There are many options for NFS and I want to keep this article short but effective so I am leaving out many of the various configuration items that you could do. However there is one option that is worth mentioning, **no_root_squash**. By default NFS will downgrade any files created with the root permissions to the nobody user. This is a security feature that prevents privileges from being shared unless specifically requested. | ||
+ | If I create a file as the root user on the client on the NFS share, by default that file is owned by the nobody user. | ||
+ | <code> | ||
+ | root@client:~# touch /shared/nfs1/file2 | ||
+ | root@server:/nfs# ls -la file2 | ||
+ | -rw-r--r-- 1 nobody nogroup 0 Nov 18 18:06 file2 | ||
+ | </code> | ||
+ | Sometimes it is important to share files that are owned as root with the proper permissions, in these cases this can be done by simply adding the **no_root_squash** attribute to the **/etc/exports** configuration. | ||
+ | **Edit the /etc/exports file:** | ||
+ | <code> | ||
+ | /nfs_share 192.168.1.1/24(rw,sync,no_root_squash) | ||
+ | </code> | ||
====== Sources ====== | ====== Sources ====== | ||
<!-- If you are copying information from another source, then specify that source --> | <!-- If you are copying information from another source, then specify that source --> |