NFS,全称为Network File System,网络文件系统,是在Linux之间共享文件的一种方式。使用NFS协议,客户机可以和服务器的资源共享。
我们要分别在服务端和客户端分别做相应配置,才能完成nfs的搭建和使用。
先把服务端和客户端的ip列出来
服务端ip:192.168.20.136
客户端ip:192.168.20.137
服务端
linux 默认自带的有nfs的服务,就要不用安装了。(但是客户端还是要装负责接收nfs协议的工具nfs-utils)
①进入配置文件/etc/exports写入要共享的目录、客户信息以及具体权限。
我们vim /etc/exports
在里面写入以下信息
意思就是共享的目录设置为在/nfsServer下面,然后运行192.168.20.0网段的ip共享,权限为可读可写。
所以我们还要创建共享目录/nfsServer
mkdir /nfsServer
(权限可以是:①ro 只读;②rw 读写;③sync 同时刷新到磁盘;④async 先保存到内存; ⑤root_squash 当客户端为 root 登录时,映射 nfs 匿名用户使用;⑥no_root_squash 当客户端为 root 登录时,映射为 root 用户使用;⑦all_squash 无论客户端使用什么账户,都映射为 root 使用。配置多个权限时用逗号,隔开)
配置完后开启服务,关闭防火墙和关闭selinux
(开启rpcbind服务是为了确保nfs服务成功,增加nfs服务的共享和加载)
客服端
客户端安装处理nfs协议的工具nfs-utils
yum install -y nfs-utils
然后创建要共享的目录
我们在根目录下创建一个名为nfsClient的目录作为和服务端共享的目录,并为他权限
mkdir /nfsClient
chmod 757 /nfsServer
然后和服务端进行连接达成共享,就是挂载服务端的共享目录
输入mount -t nfs 192.168.20.136:/nfsServer /nfsClient
(意思就是类型选择nfs协议,挂载服务端ip为192.168.20.136的共享目录/nfsServer到自身的目录nfsClient下面)
然后用df -h查看到已经成功挂载上了
然后使用验证一下
我们在客户端的共享目录/nfsClient下创建一个东西,看服务端的共享目录/nfsServer下面会不会出现这个东西。
客户端:
服务端:
可以看到已经共享成功了
最后注意的是,nfs虽然简单好用,但是不像samba那样有用户认证机制,而且数据在网络上明文传输,所以安全性较差,一般只能在局域网中使用。