Linux环境下快速实现两台服务器上的文件夹共享

简介: Linux环境下快速实现两台服务器上的文件夹共享

 文编|JavaBuild

大家好呀,我是JavaBuild,以后可以喊我build哥,嘿嘿!俺滴座右铭是不在沉默中爆发,就在沉默中灭亡,一起加油学习,厚积薄发!

在程序员的日常工作中,我们常常会遇到这样一种场景:应用部署在通过nginx和keepalived实现的双主负载均衡的两台机器上,这时候供应用调用的文件夹就需要在部署时操作两边,有时候因为疏漏会导致两台机器上相同文件夹中的内容不一致,从而导致应用在被使用时的故障。

共享.png image.gif


很多企业都拥有类似阿里云NAS服务器进行多台机器文件的共享机制,但在测试环境下没有NAS支持,我们怎么实现呢,今天就来分享一下鸟哥日常工作中常用的Linux环境下文件夹共享方法:NFS挂载

测试环境配置NFS挂载步骤:

首先,要确认的是两台机器上均安装了NFS服务,通过以下命令查看是否安装NFS:

rpm -qa|grep nfs

image.gif

以下操作在第一台应用服务器上执行

  1. 使用test用户在/home/test目录下创建需要共享的文件夹
# 进入到对应用户路径下
cd /home/test   
# 在相应路径下创建需要共享的文件目录名
mkdir test_share

image.gif

  1. 使用root用户,修改/etc/exports文件,添加如下内容。其中XXX.XXX.XXX为服务器ip的前三段,XXX.XXX.XXX.0/24 表示拥有共享权限的IP所在网段及子网掩码
# 编辑文件
vim /etc/exports
# 在文件中填下如下内容
/home/test/test_share XXX.XXX.XXX.0/24(rw,sync,no_root_squash)

image.gif

  1. 配置的括号里,可添加的参数如下:
    ro:该主机对该共享目录有只读权限
    rw:该主机对该共享目录有读写权限
    root_squash:客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户 ;
    no_root_squash:NFS服务器共享目录用户的属性,客户机用root访问该共享文件夹时,不映射root用户;
    all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户
    anonuid 将客户机上的用户映射成指定的本地用户ID的用户
    anongid 将客户机上的用户映射成属于指定的本地用户组ID
    sync 资料同步写入到内存与硬盘中
    async 资料会先暂存于内存中,而非直接写入硬盘
    insecure 允许从这台机器过来的非授权访问
  1. 使用root用户,重启NFS服务
service nfs restart

image.gif  

以下操作在第二台应用服务器上执行

  1. 使用test用户在/home/test目录下创建需要共享的文件夹
# 进入到对应用户路径下
cd /home/test   
# 在相应路径下创建需要共享的文件目录名
mkdir test_share
  1. 使用root用户,执行挂载语句,其中ip 为第一台服务器的地址,如203.3.248.10
mount -t nfs 203.3.248.10:/home/test/test_share /home/test/test_share


3.使用root用户,将以上的挂载命令添加到/etc/rc.d/rc.local文件中

# 编辑文件
vim /etc/rc.d/rc.local
# 在文件中填下如下内容
mount -t nfs 203.3.248.10:/home/test/test_share /home/test/test_share

image.gif

完事儿!可以选择其中一个机器,在共享目录中新建一个文件,在另外一台机器上查看是否同步啦。

注意:以上的用户和对应路径都是测试使用,具体根据您们的使用时需要替换。

目录
相关文章
|
6月前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
781 11
|
7月前
|
Unix 应用服务中间件 索引
服务器数据恢复—LUN映射出错导致文件系统共享冲突的数据恢复案例
SUN光纤存储系统中有一组由6个硬盘组建的RAID6,划分为若干LUN,MAP到跑不同业务的服务器上,这些服务器上运行的是SOLARIS操作系统。 服务器不存在物理故障。由于公司业务变化,需要增加一台服务器跑新的应用。服务器管理员在原服务器在线的状态下,将其中一个lun映射到一台新服务器上。实际上,这个刚映射过去的卷已经map到了solaris生产系统上的某个lun上了。映射到新服务器后,服务器对这个卷进行初始化的操作,原solaris系统上的磁盘报错,重启服务器后这个卷已经无法挂载。 服务器管理员寻求sun原厂工程师的帮助。sun工程师检测后执行了fsck操作。执行完成后文件系统挂载成功。查
|
8月前
|
存储 监控 Linux
Linux环境锁定关键文件防止误删操作流程。
总结以上内容,在Linux环境下锁定重要文档避免误删涉及到多种技术手段与策略组合运作, 包括但不限于利用chatter指挥官固化文档状态至只读模式、运作ACL精准调整访问权利列表、编排自动化流程简
434 20
|
8月前
|
Linux
Linux环境下的UDEV机制及其与守护进程的关联
实际使用时管理员需要熟悉编写合适udev rules去满足特殊需求;同时也需要注意避免编写过度复杂导致无法预料结果rules.UDEVD虽然稳健但错误配置可能导致无法预料问题因此需谨慎处理相关配置工作.
329 16
|
8月前
|
存储 Linux
Linux环境下删除大文件后磁盘空间未释放问题诊断流程。
以上诊断流程涉及Linux底层机制与高级管理技能结合之处,并需要管理员根据实际环境灵活调整诊断策略与解决方案。
621 8
|
8月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
8月前
|
Ubuntu 安全 Linux
Ubuntu 24.10 发行版登场:Linux 6.11 内核、GNOME 47 桌面环境
Ubuntu 24.10 还带来了 GNOME 47,增强了性能和稳定性,并引入了新功能。此版本的 Ubuntu 还默认在采用 Nvidia 显卡的硬件上切换到 Wayland,并在支持的硬件上默认使用开源的 Nvidia 560 内核模块。 另外需要注意的是,Ubuntu 24.10 是稳定版本,但作为非 LTS 版本,仅支持 9 个月。
|
8月前
|
安全 Linux 网络安全
Linux系统初步设置本地Git环境和生成SSH密钥的步骤。
现在您的Linux系统已经配置好了Git环境,并创建并添加了SSH密钥,可以安全地与远端仓库进行交互,无论是克隆、推送还是拉取操作。此过程确保了数据传输的安全并使版本控制流程更为顺畅。使用Git时应考虑定期更新并管理您的凭据,以确保安全性。
1272 0
|
8月前
|
XML 缓存 Linux
在Linux环境下解决Visual Studio Code字体显示异常和字体替换方法。
解决Linux下VS Code字体显示异常,需要对Linux字体渲染机制有所理解,并对VS Code的配置选项进行合理设置。替换字体时则要通过系统字体配置或VS Code设置来完成。通过上述方法,可以有效地解决字体显示问题,从而提升代码编辑的视觉体验。
1292 0