当前位置 主页 > 服务器问题 > Linux/apache问题 >

    CentOS6.9下NFS服务安装配置教程

    栏目:Linux/apache问题 时间:2019-10-17 09:26

    服务器环境:CentOS6.9  Linux 2.6.32-696.el6.x86_64

    安装NFS服务

    nfs客户端和服务端都只需要安装nfs-utils包即可,并且yum安装时会连带安装rpcbind服务

    # yum -y install nfs-utils

    开机启动

    # chkconfig rpcbind on
    # chkconfig nfs on
    

    出于运维管理的需要,能够快速查找相关启动的服务,配置chkconfig的同时,追加开机启动脚本

    # tail -2 /etc/rc.local
    /etc/init.d/rpcbind start 
    /etc/init.d/nfs start
    

    配置端口

    nfs除了主程序端口2049和rpcbind的端口111是固定以外,还会使用一些随机端口,以下配置将定义这些端口,以便配置防火墙

    # vim /etc/sysconfig/nfs
    #追加端口配置
    MOUNT_PORT=4001  
    STATD_PORT=4002
    LOCKD_TCPPORT=4003
    LOCKD_UDPPORT=4004
    RQUOTAD_PORT=4005
    

    配置要共享的目录

    # mkdir -p /var/nfs/simple-nfs  #要共享的目录
    # vim /etc/exports  #配置访问权限
    /var/nfs/simple-nfs  192.168.100.0/24(rw,async,root_squash)

    访问权限:

    rw:read-write,可读写; 注意,仅仅这里设置成读写客户端还是不能正常写入,还要正确地设置共享目录的权限,参考问题7
    ro:read-only,只读;
    sync:文件同时写入硬盘和内存;
    async:文件暂存于内存,而不是直接写入内存;
    no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
    root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
    all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
    anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
    anongid:匿名用户的GID值。

    配置防火墙

    # vim /etc/sysconfig/iptables
    -A INPUT -p tcp -m tcp --dport 111 -j ACCEPT
    -A INPUT -p udp -m udp --dport 111 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 2049 -j ACCEPT
    -A INPUT -p udp -m udp --dport 2049 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 4001:4005 -j ACCEPT
    -A INPUT -p udp -m udp --dport 4001:4005 -j ACCEPT

    重启服务和防火墙

    # service nfs restart
    # service iptables restart  #或reload
    

    Linux客户端挂载

    # mount -t nfs 192.168.100.110:/var/nfs/simple-nfs /mnt
    

    也可将挂载配置写入fstab文件中,与普通磁盘挂载一样,挂载时同样可以指定权限,只是类型为nfs。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持IIS7站长之家。