linux共享文件夹原理,Linux NFS机制工作原理及实例解析

什么是NFS?

network file system 网络文件系统

通过网络存储和组织文件的一种方法或机制。

为什么要用NFS?

前端所有的应用服务器接收到用户上传的图片、文件、视频,都会统一放到后端的存储上。

共享存储的好处:方便数据的查找与取出,缺点:存储服务器压力大,坏了丢失全部数据。

NFS工作原理

NFS功能,有很多服务,每个服务都有自己的端口,并且经常变换。

客户端查找这些端口,就需要一个中间人---RPC服务(默认端口号111)。

工作流程:

1.启动RPC服务

2.启动NFS服务(同时向RPC服务注册启动的端口)

3.客户端向RPC请求NFS服务

4.RPC返回端口到客户端

5.客户端用返回的端口地址向NFS请求传输数据。

5b58914726e1e8f8783f90ee76600ddb.png

安装NFS服务

安装:yum install nfs-utils rpcbind

查看:rpm -qa nfs-utils rpcbind

开启服务并设置开机自启:systemctl start rpcbind.service  systemctl enable rpcbind.service

systemctl start nfs  systemctl enable nfs

549290e475b5b227850c593122234867.png

配置NFS

nfs配置文件 /etc/exports

执行命令man exports 找到其中的:

7930506872fc407f0d8f92ec0be12a85.png

配置文件的格式:

要共享的目录  访问的主机(权限)

①要共享的目录:存取数据的目录

②访问的主机:单个主机:172.16.1.7或主机名  网段:172.16.1.0/24或172.16.1.*

③权限:rw 可读  ro 只读  sync 写到远端磁盘(慢,安全)  async 异步写到远端缓冲区(快,不安全)

root_squash  anonuid=匿名用户的UID  anongid=匿名用户的GID

all_squash 无论客户端是什么用户,到服务端都当做nfsnobody

[root@nfs01 ~]# vim /etc/exports

7a1af756dcbd59b2a2c5ea86b0d5bacb.png

注:一个目录可同时给多个主机共享,如上图test。注意小括号和前面的字符中间没有空格。

创建目录:[root@nfs01 ~]# mkdir -p /data

nfs的默认用户是nfsnobody,所以要对目录进行授权:[root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data

重启NFS:[root@nfs01 ~]# systemctl reload nfs 或者 exportfs -r (平滑重启)

检查:

9cec1987fc7e985165baa1629422c34f.png

打开web01虚拟机,安装rpc和nfs服务(原则上客户端只安装rpc即可,我们这里是为了测试showmount命令)

挂载共享目录,并创建文件测试

8c0f5da05a2c30e164f20cbe0cd2f116.png

57af700a56920c2f20af95a351e2c7c3.png

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
创建共享文件夹可以实现多台计算机之间的数据共享,其原理是通过网络共享协议来实现文件和文件夹的共享。常见的网络共享协议有Server Message Block (SMB)和Network File System (NFS)。 在Windows操作系统中,可以通过创建共享文件夹来实现数据共享。具体步骤如下: 1. 选择要共享的文件夹,并右键单击该文件夹,选择“属性”选项。 2. 在属性窗口中,选择“共享”选项卡,然后点击“高级共享”按钮。 3. 在“高级共享”窗口中,勾选“共享此文件夹”选项,然后输入共享名称。可以选择设置访问权限和密码保护选项。 4. 点击“确定”按钮保存设置。 5. 在其他计算机上,可以通过访问共享文件夹的网络路径来访问共享文件夹,例如在文件资源管理器中输入“\\计算机名\共享名称”即可访问。 在Linux操作系统中,可以通过安装和配置NFS来实现数据共享。具体步骤如下: 1. 在NFS服务器上,安装nfs-utils软件包:`sudo yum install nfs-utils`(CentOS)或`sudo apt-get install nfs-kernel-server`(Ubuntu)。 2. 配置NFS共享目录,例如在/etc/exports文件中添加一行:`/shared *(rw,no_root_squash)`,表示将/shared目录共享给所有客户端,并设置读写权限。 3. 启动NFS服务:`sudo systemctl start nfs-server`。 4. 在客户端上,可以通过mount命令将共享目录挂载到本地目录,例如:`sudo mount server:/shared /mnt/shared`,表示将NFS服务器上的/shared目录挂载到本地的/mnt/shared目录。 需要注意的是,共享文件夹的安全性和访问控制需要进行适当的设置,以确保数据的安全性和保密性。同时,也需要定期备份共享数据,以便在数据丢失或损坏时进行恢复。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值