CentOS 系统之间通过内网共享硬盘数据
在 CentOS 系统之间通过内网共享硬盘数据,可以通过多种方式实现,常见的有 NFS(Network File System)和 Samba。这里主要介绍如何使用 NFS 来实现两个 CentOS 系统之间的数据共享。
使用 NFS 实现数据共享
NFS 是一种网络文件系统协议,允许不同机器上的用户通过网络访问文件,像使用本地存储一样。
环境准备
假设有两台 CentOS 主机:
- Server(提供共享的主机):
192.168.1.100 - Client(访问共享的主机):
192.168.1.101
在 NFS Server 上配置共享目录
-
安装 NFS 服务
首先在 Server 上安装 NFS 服务。
sudo yum install nfs-utils -y -
创建共享目录
创建一个将要共享的目录,比如
/mnt/shared.sudo mkdir -p /mnt/shared -
配置 NFS 导出
编辑
/etc/exports文件,添加需要共享的目录信息。sudo nano /etc/exports添加如下行,将
/mnt/shared目录共享给指定 IP(如192.168.1.101)或整个子网(如192.168.1.0/24)。/mnt/shared 192.168.1.101(rw,sync,no_root_squash,no_subtree_check)rw: 允许读写访问sync: 同步方式写入数据no_root_squash: 允许 NFS 客户端以 root 用户身份访问(需小心使用)no_subtree_check: 关闭子树检查,提高性能
-
启动并启用 NFS 服务
启动 NFS 服务并设置为开机启动。
sudo systemctl start nfs-server sudo systemctl enable nfs-server -
配置防火墙
确保 NFS 服务可以通过防火墙。打开相应端口。
sudo firewall-cmd --permanent --add-service=nfs sudo firewall-cmd --permanent --add-service=mountd sudo firewall-cmd --permanent --add-service=rpc-bind sudo firewall-cmd --reload -
导出文件系统
使用
exportfs命令使更改生效。sudo exportfs -r
在 NFS Client 上挂载共享目录
-
安装 NFS 客户端
在 Client 上安装 NFS 客户端工具。
sudo yum install nfs-utils -y -
创建挂载点
创建一个用于挂载共享目录的本地目录,比如
/mnt/nfs_shared.sudo mkdir -p /mnt/nfs_shared -
挂载共享目录
使用
mount命令挂载远程的共享目录。sudo mount -t nfs 192.168.1.100:/mnt/shared /mnt/nfs_shared -
验证挂载
使用
df -h或mount命令确认挂载成功。df -h可以看到类似于:
192.168.1.100:/mnt/shared 10G 1.1G 8.9G 11% /mnt/nfs_shared -
自动挂载(可选)
为了在系统启动时自动挂载,可以将挂载信息添加到
/etc/fstab中。sudo nano /etc/fstab添加如下行:
192.168.1.100:/mnt/shared /mnt/nfs_shared nfs defaults 0 0
其他注意事项
-
权限设置
确保共享目录的权限设置正确,允许客户端对文件进行读取和写入。
sudo chown -R nfsnobody:nfsnobody /mnt/shared sudo chmod 777 /mnt/shared -
NFS 性能调优
如果在使用过程中发现性能问题,可以通过调整 NFS 的挂载选项来进行优化。例如,可以通过添加挂载参数来提高读写性能:
sudo mount -t nfs -o rw,nosuid,intr,noatime 192.168.1.100:/mnt/shared /mnt/nfs_sharedrw: 读写模式nosuid: 不允许在该文件系统中创建具有 set-user-ID 和 set-group-ID 权限的文件intr: 允许中断挂载操作noatime: 不更新文件的访问时间,提高性能
-
安全性
如果需要更高的安全性,可以考虑使用 Kerberos 进行身份验证,或者通过 VPN 加密传输。
通过以上步骤,可以在两台 CentOS 系统之间通过内网共享硬盘数据,实现文件的高效共享和管理。如果需要更复杂的权限管理和共享功能,也可以考虑使用 Samba 作为替代方案。