目录
4、修改 /etc/exports 内容,它相当于一个配置文件,配置服务端共享的文件内容和共享的对象
我们需要准备两台装有ubuntu的主机或者虚拟机,将虚拟机A作为服务端,将虚拟机B作为客户端。
首先配置服务端
1、由于很多命令需要root权限,我们首先进入root
su
接下来需要你输入root密码,不知道没有关系
sudo passwd root
提示你输入主机密码,然后输入自定义的root密码,重复密码(注意,输入主机密码和root密码都不显示,输入完回车就好),修改完之后再次输入 “su”,输入root密码
2、变为root用户后执行nfs服务安装
apt update
apt install nfs-kernel-server -y
第一个命令为检查更新,第二个命令为安装。 -y的用途是安装过程中不需要确定
中间可能存在缓存锁问题,导致无法安装
rm var/lib/dpkg/lock
rm 为删除,后面的路径一般为这个,具体可以看他的错误信息
3、创建我们的共享文件
mkdir /test --创建文件夹mkdir 后面跟文件路径和名称
cd /test --将新创建目录作为工作目录
touch inhao.txt --后面为创建文件touch 和编辑文件vim ,vim第一次使用要下载,使用
apt install vim
vim nihao.txt
touch welcome.txt
vim welcome.txt
4、修改 /etc/exports 内容,它相当于一个配置文件,配置服务端共享的文件内容和共享的对象
vim /etc/exports
进入vim编辑器后
【共享文件绝对路径】 【共享对象的ip地址】(ro/rw)
这是最简单的语句,括号中有很多可以配置的内容,IP地址也有很多方式表达,可以百度。ro为文件共享后只允许客户端读,rw允许读写,下面为一个小例子
/test 192.168.247.123(rw)
我们此时不知道共享对象的IP地址,启动nfs再次修改/etc/exports后使用下面命令可以不必重新启动nfs
exportfs -r
5、启动rpc和nfs
首先安装rpc
apt install rpcbind
启动rpc
systemctl start rpcbind
检查rpc启动状态,显示runing为启动成功
systemctl status rpcbind
安装、启动、检查nfs类似,显示exited为启动成功
apt install nfs-kernel-server
systemctl start nfs-kernel-server
systemctl status nfs-kernel-server
6、了解服务端ip地址
首先安装net-tools
apt install net-tools
然后查询ip
ifconfig
在后面客户端找到服务端和挂载文件都需要ip才可以
客户端
1、同样进入root,操作过程可以看服务端。
2、安装nfs客户端
apt update
apt install net-common
第一步为检查更新,第二步为安装
3、创建挂载文件地址
mkdir 绝对路径
注意,不了解linux不建议鼠标创建文件,后面挂载容易报错“找不到文件或者目录”
4、查询IP地址,在服务端修改配置文件
安装net-tools
apt install net-tools
查询ip
ifconfig
5、查看是否可以ping通服务端
ping 服务端ip
如果失败可以查看一下服务端ip地址是否正确,其他问题百度
6、查看服务端共享文件
shoumount -e 服务端ip
7、挂载共享文件
mount 服务端ip:共享文件绝对路径 客户端准备挂载的位置的绝对路径
示例
mount 192.168.247.123:/test /test1
8、完成后到挂载文件目录查看是否成功
ls后出现共享目录即为成功
1、cd 挂载文件绝对目录
示例
cd /test
2、查看文件夹内挂载文件
ls
9、最后卸载挂载文件,这样共享文件就消失了
umount 挂载文件绝对路径
注意,使用mount和umount 命令时不要将挂载文件夹内部作为工作空间,否则可能报错
写在最后
由于实验使用的是一台电脑上的两台虚拟机,在实际两台主机是还是出现了许多问题
,虚拟机网络适配器要选择桥接模式,这样更接近真实的网络状况,以及当客户端进行写入操作时,服务端不能把共享目录当做工作目录