栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

CentOS7 搭建NFS服务

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CentOS7 搭建NFS服务

    NFS(Network File System)意为网络文件系统,它最大的功能就是可以通过网络,让不同的机器不同的操作系统可以共享彼此的文件。简单的讲就是可以挂载远程主机的共享目录到本地,就像操作本地磁盘一样,非常方便的操作远程文件。

环境准备
主机类型主机IP防火墙状态
NFS服务器192.168.5.133关闭
客户端192.168.5.134关闭
客户端192.168.5.135关闭
NFS服务器配置

    1.安装NFS服务

yum -y install rpcbind nfs-utils

    2.创建共享目录,并设置权限。

mkdir -p /data/share/
chmod 755 -R /data/share/

    3.配置NFS:nfs的配置文件是 /etc/exports ,在配置文件中加入一行:

vim /etc/exports
/data/share/ 192.168.5.134(rw,no_root_squash,no_all_squash,sync) 
/data/share/ 192.168.5.135(rw,no_root_squash,no_all_squash,sync)

        这行代码的意思是把共享目录/data/share/共享给192.168.5.134这个客户端ip,后面括号里的内容是权限参数,其中:
            rw 表示设置目录可读写。
            sync 表示数据会同步写入到内存和硬盘中,相反 rsync 表示数据会先暂存于内存中,而非直接写入到硬盘中。
            no_root_squash NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。
            no_all_squash 不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都不会拥有匿名用户权限。
        若nfs服务已经启动,使配置生效(若未启动,不需要执行,执行会报错):

exportfs -r  

    4.设置防火墙
        如果你的系统没有开启防火墙,那么该步骤可以省略。
        (我是直接关闭防火墙,并且开机不启动,防火墙设置这里没有亲测)NFS的防火墙特别难搞,因为除了固定的port111、2049外,还有其他服务如rpc.mounted等开启的不固定的端口,这样对防火墙来说就比较麻烦了。为了解决这个问题,我们可以设置NFS服务的端口配置文件。
        修改/etc/sysconfig/nfs文件,将下列内容的注释去掉,如果没有则添加:

RQUOTAD_PORT=1001
LOCKD_TCPPORT=30001
LOCKD_UDPPORT=30002
MOUNTD_PORT=1002

        保存好后,将端口加入到防火墙允许策略中。执行:

firewall-cmd --zone=public --add-port=111/tcp --add-port=111/udp --add-port=2049/tcp --add-port=2049/udp --add-port=1001/tcp --add-port=1001/udp --add-port=1002/tcp --add-port=1002/udp --add-port=30001/tcp --add-port=30002/udp --permanent
firewall-cmd --reload

    5.启动服务
        按顺序启动rpcbind和nfs服务:

systemctl start rpcbind
systemctl start nfs

        开机启动:

systemctl enable rpcbind 
systemctl enable nfs

        nfs服务启动后,查看端口是否生效

rpcinfo -p 

        查看服务端(本机)是否可连接,出现下面结果表明NFS服务端配置正常。

# showmount -e localhost
Export list for localhost:
/data/share 192.168.5.134,192.168.5.135
客户端配置

    1.安装rpcbind服务

yum -y install rpcbind

    2.设置防火墙(参考文件没这步,没测行不行,我自己加这一步)
    3.挂载远程nfs文件系统
        查看服务端已共享的目录:

# showmount -e 192.168.5.133
Export list for localhost:
/data/share 192.168.5.134,192.168.5.135

        建立挂载目录,执行挂载命令:

mkdir -p /mnt/share
mount -t nfs 192.168.5.133:/data/share /mnt/share/ -o nolock,nfsvers=3,vers=3

            如果不加 -onolock,nfsvers=3 则在挂载目录下的文件属主和组都是nobody,如果指定nfsvers=3则显示root。
        如果要解除挂载,可执行命令:

umount /mnt/share

    4.开机自动挂载 ,末尾追加

vim /etc/fstab
192.168.5.133:/data/share /mnt/share/ nfs defaults 0 0

    5.重启机器测试验证 ,在客户端输入:

$ df -h
文件系统                   容量  已用  可用  已用% 挂载点
Filesystem                 Size  Used Avail Use% Mounted on
...
192.168.5.133:/data/share   18G  5.9G   12G  34% /mnt/share

    这时候,你可以在客户端/mnt/share或者服务端/data/share下新建文件,在所有当前的nfs网络主机都可以看到
参考文件

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/891105.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号