1.NFS服务
NFS-Network FileSystem的缩写,NFS是由Sun开发并发展起来的一项用于在不同机器,不同操作系统之间通过网络互相分享各自的文件。NFS server也可以看作是一个FILE SERVER,它可以让你的PC通过网络将远端得NFS SERVER共享出来的档案MOUNT到自己的系统中,在CLIENT看来使用NFS的远端文件就象是在使用本地文件一样。
NFS协议从诞生到现在为止,已经有多个版本,如NFS V2(rfc1094),NFS V3(rfc1813)(***的版本是V4(rfc3010)。
#检测是否安装NFS
dpkg -l | grep -i nfs
#安装NFS服务器
sudo apt-get install nfs-kernel-server
#sudo apt-get install nfs-common #客户端
#启动与停止NFS服务
sudo /etc/init.d/nfs-kernel-server start
#其他命令
service nfs-kernel-server restart
service nfs-kernel-server stop
service nfs-kernel-server start
#查看NFS服务
ps -aux | grep -i nfs
#配置NFS服务:共享目录 主机名1或IP1(参数1,参数2) 主机名2或IP2(参数1,参数2)
mkdir /home/xxx/testnfs
sudo vim /etc/exports
/home/xxx/testnfs *(rw,sync,no_subtree_check)
sudo service nfs-kernel-server restart
showmount -e #显示当前所有的nfs共享目录
#如果nfs服务已经启动,但是后续修改了/etc/exports配置,需要新配置生效,使用此命令
exportfs -arv //不用重启nfs服务,配置文件就会生效
showmount [选项] [NFS服务器名称或地址]
-a //显示指定NFS服务器的所有客户端主机及其所连接的目录
-d //显示指定的NFS服务器中已被客户端连接的所有输出目录
-e //显示指定的NFS服务器上所有输出的共享目录(最常用)
参考1:其它配置,Ubuntu下配置NFS
参考2:linux nfs 多个ip,linux基础之NFS
nfs设置权限
/test *(ro) #任何ip地址都能访问,但是权限为只读。
/test 192.168.1.0/24(ro) #指定网段的地址都能访问,但是权限为只读。
/test 192.168.1.11(ro) 192.168.1.12(rw)#第一个ip地址拥有只读权限,第二个ip地址拥有读写权限。
测试:
#使用mount挂载nfs文件系统
cd /mnt
sudo mkdir nfs
#mount -t nfs localhost: /mnt/nfs
ip addr show 查看ip地址
sudo mount -t nfs -o nolock ip:/home/xxx/testnfs /mnt/nfs #-o options参数, nolock 非阻塞式
参考:https://www.linuxidc.com/Linux/2018-11/155331.htm
参考:https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nfs-mount-on-ubuntu-18-04
客户端nfs自动挂载
linux系统挂载nfs
注意不要挂载到系统目录,建议挂载到新目录下:/mnt/nfs
sudo apt install nfs-common
sudo showmount -e 192.168.3.167 #ip addr根据自行修改
sudo apt-get install autofs
man autofs #查看帮助手册
sudo vim /etc/auto.master
/nfs_mount_root_dir /etc/auto.nfs #/nfs_mount_root_dir为一级挂载目录
sudo vim /etc/auto.nfs
nfs -fstype=nfs,rw server_ip:/file_dir #nfs为二级挂载目录,即/nfs_mount_root_dir/nfs
#建议配置
sudo vim /etc/auto.master
#再#/misc行添加如下配置
/- /etc/auto.nfs #/- 表示无一级挂载点
sudo vim /etc/auto.nfs
/mnt/nfs -fstype=nfs,rw server_ip:/file_dir #/mnt/nfs为二级挂载目录
sudo systemctl enable autofs.service
sudo systemctl reload autofs.service
sudo systemctl restart autofs.service
#service autofs enable
#service autofs reload
#service autofs restart
windows挂载nfs
- 启动windos NFS客户端服务
打开控制面板 -> 程序 -> 打开或关闭windows功能 -> NFS客户端 -> 勾选NFS客户端,即开启windows NFS客户端服务.
- 挂载nfs
挂载方法: mount IP:/共享目录位置 + 挂载点
卸载方法: umount + 挂载点# 查看Linux NFS远端服务器导出的目录资源 showmount -e 192.168.15.60 # 将 192.168.15.60 上的 /data/mdlib_data 挂载为本地 X 盘 mount 192.168.15.60:/data/mdlib_data X:
此时,你本地电脑上就会多出一个盘符,至此挂载成功: