在同一局域网下,不同ip的linux服务器之间硬盘或者文件夹的挂载

应用场景

本人有两台服务器A和B,服务器A的ip地址对应为127.0.0.1,服务器B的ip地址对应为127.0.0.2。本人在服务器A上收集了大量的数据(/data/dataset)用于神经网络模型的训练,为了充分利用两台电脑的计算资源,要在两台服务器上基于该数据同时进行模型训练。

解决办法1:

将服务器A上的数据通过scp或者rsync远程传输到服务器B上。

# 在服务器A的终端下操作
rsync -av /data/dataset username@127.0.0.2:/data/dataset  # 需要输入用户密码

注:当该数据量非常大时,就会导致存储资源的严重浪费

解决办法2:

将服务器A的数据文件夹/data/dataset挂载到服务器B下(需要管理员权限)

su root
# Step1:在服务器A下设置要挂载的文件夹
cat /etc/exports # 查看是否已经设置该文件路径,如果没有的话,按照改格式添加要挂载的路径
> /data/bak        127.0.0.2/24(ro,sync,all_squash,root_squash)
> /data/userdata   127.0.0.2/24(ro,sync,no_all_squash,root_squash)

vim /etc/exports  # 添加 /data/dataset   127.0.0.2/24(ro,sync,no_all_squash,root_squash)
# Step2: 重置nfs
exportfs -a
su username  # 退出管理员模式

# Step3: 切换到服务器B上
su root
mkdir /data/dataset   # 在服务器B上创建挂载的文件夹
mount -t nfs -o ro 127.0.0.1:/data/dataset /data/dataset

su username  # 退出管理员模式
posted @ 2025-08-07 11:31  Lewen  阅读(36)  评论(0)    收藏  举报