• 13.4 案例演练
  • 1. /tmp
  • 2. /home/nfs
  • 修改较为严格的档案权限将目录与档案设定成只读!不能写入的状态,会更保险一点!
  • 3. /home/upload
  • 先建立对应的账号与组名及 UID 喔!
  • 修改拥有者!如此,则用户与目录的权限都设定妥当啰!
  • 4. /home/andy
  • 1. 确认远程服务器的可用目录:
  • 2. 建立挂载点:
  • 3. 实际挂载:

    13.4 案例演练

    让我们来做个实际演练,在练习之前,请将服务器的 NFS 设定数据都清除,但是保留 rpcbind 不可关闭。至于客户端的环境下, 先关闭 autofs 以及取消之前在 /etc/rc.d/rc.local 里面写入的开机自动挂载项目。同时删除 /home/nfs 目录呦! 接下来请看看我们要处理的环境为何:


    模拟的环境状态中,服务器端的想法如下:

    • 假设服务器的 IP 为 192.168.100.254 这一部;
    • /tmp 分享为可擦写,并且不限制使用者身份的方式,分享给所有 192.168.100.0/24 这个网域中的所有计算机;
    • /home/nfs 分享的属性为只读,可提供除了网域内的工作站外,向 Internet 亦提供数据内容;
    • /home/upload 做为 192.168.100.0/24 这个网域的数据上传目录,其中,这个 /home/upload 的使用者及所属群组为 nfs-upload 这个名字,他的 UID 与 GID 均为 210;
    • /home/andy 这个目录仅分享给 192.168.100.10 这部主机,以提供该主机上面 andy 这个使用者来使用,也就是说, andy 在 192.168.100.10 及 192.168.100.254 均有账号,且账号均为 andy ,所以预计开放 /home/andy 给 andy 使用他的家目录啦!

    服务器端设定的实地演练:

    好了,那么请你先不要看底下的答案,先自己动笔或者直接在自己的机器上面动手作作看,等到得到你要的答案之后, 再看底下的说明吧!

    • 首先,就是要建立 /etc/exports 这个档案的内容啰,你可以这样写吧!

    [root@www ~]# vim /etc/exports
    /tmp 192.168.100.0/24(rw,no_root_squash)
    /home/nfs 192.168.100.0/24(ro) *(ro,all_squash)
    /home/upload 192.168.100.0/24(rw,all_squash,anonuid=210,anongid=210)
    /home/andy 192.168.100.10(rw)

    • 再来,就是要建立每个对应的目录的实际 Linux 权限了!我们一个一个来看:

    1. /tmp

    [root@www ~]# ll -d /tmp
    drwxrwxrwt. 12 root root 4096 2011-07-27 23:49 /tmp

    2. /home/nfs

    [root@www ~]# mkdir -p /home/nfs
    [root@www ~]# chmod 755 -R /home/nfs

    修改较为严格的档案权限将目录与档案设定成只读!不能写入的状态,会更保险一点!

    3. /home/upload

    [root@www ~]# groupadd -g 210 nfs-upload
    [root@www ~]# useradd -g 210 -u 210 -M nfs-upload

    先建立对应的账号与组名及 UID 喔!

    [root@www ~]# mkdir -p /home/upload
    [root@www ~]# chown -R nfs-upload:nfs-upload /home/upload

    修改拥有者!如此,则用户与目录的权限都设定妥当啰!

    4. /home/andy

    [root@www ~]# useradd andy
    [root@www ~]# ll -d /home/andy
    drwx———. 4 andy andy 4096 2011-07-28 00:15 /home/andy

    这样子一来,权限的问题大概就可以解决啰!

    • 重新启动 nfs 服务:

    [root@www ~]# /etc/init.d/nfs restart

    • 在 192.168.100.10 这部机器上面演练一下:

    1. 确认远程服务器的可用目录:

    [root@clientlinux ~]# showmount -e 192.168.100.254
    Export list for 192.168.100.254:
    /home/andy 192.168.100.10
    /home/upload 192.168.100.0/24
    /home/nfs (everyone)
    /tmp 192.168.100.0/24

    2. 建立挂载点:

    [root@clientlinux ~]# mkdir -p /mnt/{tmp,nfs,upload,andy}

    3. 实际挂载:

    [root@clientlinux ~]# mount -t nfs 192.168.100.254:/tmp /mnt/tmp
    [root@clientlinux ~]# mount -t nfs 192.168.100.254:/home/nfs /mnt/nfs
    [root@clientlinux ~]# mount -t nfs 192.168.100.254:/home/upload /mnt/upload
    [root@clientlinux ~]# mount -t nfs 192.168.100.254:/home/andy /mnt/andy

    整个步骤大致上就是这样吶!加油喔!


    原文: https://wizardforcel.gitbooks.io/vbird-linux-server-3e/content/94.html