当前位置: 首页 > news >正文

CentOS NFS共享目录

最近遇到一个问题,一台CentOS7应用服务器上的服务需要访问另外一台CentOS7应用服务器上的文件,然后传输文件给第三方。想到windows系统之间有文件共享的功能,Linux系统之间是否也有类似的文件共享功能呢?

NFS

NFS代表Network File System,即网络文件系统。它是一种分布式文件系统协议,允许一个系统在网络上与他人共享目录和文件。通过NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,这极大地促进了文件共享和协作。

NFS最初由Sun Microsystems开发,并迅速成为了Unix系统间实现文件共享的标准。随着时间的发展,它也被移植到了其他操作系统上,包括Windows、Linux以及各种版本的Unix。

使用NFS有几个主要优点:

易于文件共享:用户可以通过网络轻松访问和使用存储在不同计算机上的文件。

简化存储管理:通过集中存储数据,NFS减少了对多个副本的需求,从而简化了存储管理。

提高效率:NFS允许用户同时从多个客户端访问相同的文件,提高了工作效率。

NFS的工作原理涉及服务器和客户端之间的交互。服务器端设置并导出文件系统供网络中的其他机器访问,而客户端则挂载这些远程文件系统到本地文件树中,使得它们看起来就像本地文件一样。

NFS经历了几个版本的发展,目前最常见的是NFSv3和NFSv4,后者提供了改进的安全性和性能。

服务端

检查是否安装nfs-utils、rpcbind

rpm -qa|grep nfs-utils

[root@app-0002 temp]# rpm -qa|grep nfs-utils

nfs-utils-1.3.0-0.54.el7.x86_64

rpm -qa | grep rpcbind

[root@app-0002 temp]# rpm -qa | grep rpcbind

rpcbind-0.2.0-44.el7.x86_64

没有,则手动安装

sudo yum install -y nfs-utils rpcbind

启动rpcbind

sudo systemctl start rpcbind#开机自启sudo systemctl enable rpcbind

启动nfs-server​​​​​​​

sudo systemctl start nfs-server#开机自启sudo systemctl enable nfs-server

创建目录/disk01/temp(如果已有目录,则不需要创建)

sudo mkdir -p /disk01/temp

设置目录权限​​​​​​​

#至少644 所有用户可读sudo chmod 755 /disk01/temp #可选sudo chown nobody:nobody /disk01/temp

编辑/etc/exports文件,添加共享配置​​​​​​​

vi /etc/exports#文件最下面添加/disk01/temp 10.96.41.0/24(rw,sync,no_root_squash,no_subtree_check)

10.96.41.0/24:允许访问的客户端ip(10.96.41.1~254)

(rw,sync,no_root_squash,no_subtree_check):挂在选项(读写、同步写入、允许客户端以root用户身份访问共享目录、禁用子树选项等)

或者指定具体的ip,多个ip之间空格隔开

/disk01/temp 10.96.41.98(rw,sync,no_root_squash,no_subtree_check) 10.96.41.99(rw,sync,no_root_squash,no_subtree_check)

应用NFS配置

sudo exportfs -ra

验证共享是否生效

sudo exportfs -v

图片

客户端

检查是否安装nfs-utils

rpm -qa|grep nfs-utils

[root@app-0002 temp]# rpm -qa|grep nfs-utils

nfs-utils-1.3.0-0.54.el7.x86_64

没有,则手动安装

sudo yum install -y nfs-utils

创建目录/disk01/temp

sudo mkdir -p /disk01/temp

挂载共享目录

sudo mount 10.96.41.62:/disk01/temp  /disk01/temp

mount会根据设备的文件系统类型(如ext4、xfs、nfs)自动挂载,也可以使用-t  <文件系统类型>

sudo mount -t nfs 10.96.41.62:/disk01/temp  /disk01/temp

将10.96.41.62:/disk01/temp目录挂载在本机的/disk01/temp目录

验证挂载

df -h

图片

设置开机自动挂载

注意:不设置的话,服务器重启后,会发现挂载目录没有了,需要重新挂载。

vim /etc/fstab

最后一行下面加入

10.96.41.62:/disk01/temp  /disk01/temp  nfs defaults 0 0

测试写的配置是否有问题

mount -a

最后,在客户端或者服务端目录下创建一个测试文件,看对方是否能看到,然后删除测试文件。

问题

1、检查客户端

rpm -qa|grep nfs

mount | grep /disk01/temp

图片

2、卸载客户端挂载,重新挂载

sudo umount /disk01/temp

sudo mount -t nfs 10.96.41.62:/disk01/temp  /disk01/temp

3、设置服务端共享目录权限

sudo chmod 755 /disk01/temp    (至少644 所有用户可读)

相关文章:

  • 关于3D的一些基础知识
  • Objective-C Block 底层原理深度解析
  • WEBSTORM前端 —— 第2章:CSS —— 第4节:盒子模型
  • phpstudy修改Apache端口号
  • (开源)视频画面增强模型:Ev-DeblurVSR (可以解决视频画面不清晰的问题)
  • C++之类和对象:构造函数,析构函数,拷贝构造,赋值运算符重载
  • 从Transformer原理角度来看,prompt设置输出字数限制会生效的原因
  • 8.idea创建maven项目(使用Log4j日志记录框架+Log4j 介绍)
  • Java后端程序员学习前端之html
  • 关于浏览器对于HTML实体编码,urlencode,Unicode解析
  • gem5-gpu 安装过程碰到的问题记录 关于使用 Ruby + Garnet
  • RabbitMQ 启动报错 “crypto.app“ 的解决方法
  • 余额分账和代付有什么区别?
  • AVL树左旋右旋的实现
  • Error: error:0308010C:digital envelope routines::unsupported 高版本node启动低版本项目运行报错
  • Android启动应用时屏蔽RecyclerView滑动,延时后再允许滑动,Kotlin
  • 【免费下载】1985-2023年全国土地利用数据
  • GD32F407单片机开发入门(十七)内部RTC实时时钟及实战含源码
  • 请简述一下什么是 Kotlin?它有哪些特性?
  • React Native 太慢:kotlin-gradle-plugin-2.0.21-gradle76.jar 下载太慢
  • 江西德安回应“义门陈遗址建筑被没收”:将交由规范的义门陈相关社会组织管理
  • 美的集团一季度净利增长38%,库卡中国机器人接单增超35%
  • 五一假期上海地铁部分线路将延时运营,这些调整请查收
  • 北大深圳研究生院成立科学智能学院:培养交叉复合型人才
  • 中国体育报关注徐梦桃、王曼昱、盛李豪等获评全国先进工作者:为建设体育强国再立新功
  • 杭州一季度GDP为5715亿元,同比增长5.2%