文章目录
前言
在实际工作中,避免不了需要在linux服务器或者linux与windows之间互相传数据,所以文件共享就显得比较重要。那本文就NFS展开介绍。初出茅庐,不喜勿喷。
一、NFS是什么?
NFS:Network File System,网络文件系统。
工作原理:
- 通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,使得每个计算机的节点能够像使用本地资源一样方便地使用网上资源。换言之,NFS可用于不同类型计算机、操作系统、网络架构和传输协议运行环境中的网络文件远程访问和共享。
- NFS的工作原理是使用客户端/服务器架构,由一个客户端程序和服务器程序组成。服务器程序向其他计算机提供对文件系统的访问,其过程称为输出。NFS客户端程序对共享文件系统进行访问时,把它们从NFS服务器中“输送”出来。文件通常以块为单位进行传输。其大小是8KB(虽然它可能会将操作分成更小尺寸的分片)。NFS传输协议用于服务器和客户机之间文件访问和共享的通信,从而使客户机远程地访问保存在存储设备上的数据
二、如何搭建NFS(内网环境)
我们在掌握了NFS的原理之后,接下来就开始搭建属于自己的NFS服务。
二(一)基于linux-to-linux的nfs搭建&测试
0.准备实验环境
Server-nfs | 192.168.189.151 |
---|---|
Client-nfs-linux | 192.168.189.150 |
Client-nfs-windows | 192.168.189.1 |
1.配置网络环境(ip地址)
vi /etc/sysconfig/network-scripts/ifcfg-ens33
- 修改BOOTPROTO=static,OnBOOT=yes,删除UUID,增加IPADDR=ip
- 重启网络:systemctl restart network
- windows也需要修改ip(方法百度)
2.在服务端安装nfs服务(nfs-utils、rpcbind)
# 安装nfs软件
yum install -y nfs-utils rpcbind
# 启动nfs服务,并设置开机自启动
systemctl start nfs && systemctl enable nfs
3.创建共享目录(任意位置)
mkdir /opt/share
4.共享目录(修改配置文件:/etc/exports)
/opt/share/ 192.168.189.0/24(rw,all_squash)
5.重启nfs
systemctl restart nfs
6.客户端测试(挂载)(linux)
6.1创建挂载点
cd /mnt/
mkdir nfs_sharesh
6.2挂载共享目录
mount -t nfs 192.168.189.151:/opt/share /mnt/nfs_share
报错:客户端需要安装nfs-utils
再次挂载,可以成功看到服务端的文件信息,可以测试是否拥有写入权限,发现根本无法写入,原因是other用户对共享目录不具有写入的权限。
解决方法:
给共享目录写入权限:chmod o+w share/;再次在客户端创建文件,发现可以操作。可以发现用户和组都是nfsnobody这个用户组(other组)。
至此,linux的共享测试完成。接下来测试windows和linux的共享。
二(二)基于linux-to-windows的nfs搭建&测试
1.客户端测试(挂载)(windows)由于我windows系统版本是win10家庭版,不支持nfs服务,故不能测试
1.1确保网络能够互通
1.2在windows的控制面板-打开或关闭windows功能找到nfs客户端,并安装。
1.3安装好客户端之后,可以在windows命令提示符输入showmount -e nfs-server ip 查看挂载点
1.4windows的挂载不是挂载目录,而是挂载盘符:例如X,Y等,mount \\server_ip:挂载点 Z:
如果看到成功的提示,则windows的挂载完成,可以进行读写测试。
至此,windows和linux的文件共享也完成
总结
第一次的csdn之旅正式开启,记录分享工作和学习心得体会,感兴趣的朋友们记得点个关注,在看。期待和各位大佬共同进步,互相学习!