NFS服务器搭建

NFS文件共享服务器介绍:

NFS可以实现通过网络让不同的操作系统,不同的主机,实现文件共享,且可以将NFS服务器的共享目录挂载至本地的文件系统中。

环境部署:

NFS-server  192.168.182.143

NFS-client    192.168.182.145

一、服务器部署

1、在服务端安装NFS服务组件

执行以下命令:yum install nfs-utils -y

 

2、编辑NFS配置文件,路径为/etc/exports文件,文件中定义了要发布的目录以及客户端的访问权限等

 

 上图的意思为:将/data/nfs目录发布到nfs共享中,*代表允许所有主机访问,(rw,sync)挂载的参数,rw表示允许挂载后可读可写,sync表示同步的方式为sync

访问控制:

允许某个网段的主机可以访问:将*改为192.168.182.0/24

允许某个IP的主机可以访问:将*改为192.168.182.145

挂载常用参数:

rw  #可读可写的权限

ro  #只读权限

no_root-squash  #客户端使用该共享目录时,以目录所有者的身份运行,如果客户端以root身份使用这个共享目录时,则对该目录行使root权限

root_squash  #客户端使用该目录时,以该目录的拥有者身份运行,如果客户端以root身份使用这个共享目录时,则使用者的权限会被压缩为nobody

all_squash  #不论客户端使用该目录的身份为何,都会被压缩为nobody

sync  #资料同步写入内存与磁盘中

async  #资料会先暂存于内存当中,而非直接写入到硬盘

insecure  #允许从这台机器过来的非授权访问

3、导出广播发文件,并重启nfs和rpcbind服务,并关闭firewalld和selinux

执行命令:exportfs -r  #导出广播文件

        systemctl restart nfs  #重启nfs服务

     systemctl restart rpcbind  #重启rpcbind服务

     systemctl stop firewalld  #关闭防火墙

        setenforce 0  #临时关闭selinux

二、客户端部署

1、客户端同样也需要安装nfs组件

执行命令:yum install nfs-utils -y  #安装nfs组件

 

2、启动nfs服务以及关闭防火墙和selinux

执行命令:systemctl start nfs      #启动nfs

        systemctl start rpcbind    #启动rpcbind

        systemctl stop firewalld     #关闭防火墙

        setenforce 0         #关闭selinux

 

3、查看服务器的发布目录,并执行挂载命令

执行命令:showmount -e 192.168.182.143   #查看NFS发布的共享目录

     mount -t nfs 192.168.182.143:/data/nfs/ /mnt  #将NFS发布的目录挂载至本地的/mnt目录下

 

4、在服务器上创建一个文件,然后在客户端的挂载目录进行验证

服务器上发布目录下执行:echo "this is nfs" > test

 

三、NFS相关优化

1、防火墙配置放过nfs相关服务

执行命令:/usr/bin/firewall-cmd --permanent --zone public --add-service mountd

     /usr/bin/firewall-cmd --permanent --zone public --add-service rpc-bind

     /usr/bin/firewall-cmd --permanent --zone public --add-service nfs

       /usr/bin/firewall-cmd --reload

2、将rpc端口设置成指定端口,编辑配置文件/etc/sysconfig/nfs,在最后添加以下内容

RQUOTAD_PORT=10001
LOCKD_TCPPORT=10002
LOCKD_UDPPORT=10002
MOUNTD_PORT=10003
STATD_port=10004

执行命令:rpcinfo -p

 

3、客户端挂载优化

noatime  #取消更新文件系统上的inode访问时间,提升I/O性能,优化I/O目的。

nodiratime  #取消更新文件系统上的directory inode访问时间。

noexec  #挂载的这个文件系统要不要执行程序(安全选项)

nosuid  #挂载的这个文件系统上面可以可以设置UID(安全选项)

rsize/wsize  #读取/写入的区块 大小,这个值可以影响客户端和服务端传输数据的缓冲存储量。

上面的挂载可以设置为:

执行命令:mount -t nfs -o noatime,noatime,noexec,nosuid,soft,timeo=1 192.168.182.143:/data/nfs /mnt  #设置挂载参数

     nfsstat -m  #查询挂载参数

posted on 2020-01-06 09:32  ꧁༺乘风、破浪༻꧂  阅读(261)  评论(0编辑  收藏  举报

导航