Linux设置局域网内共享文件夹
在Linux系统上,实现类似于Windows共享磁盘的功能,可以通过网络文件系统(NFS)来完成。NFS 是一种支持在网络中共享文件夹的协议。以下是实现的步骤:
1. 设置共享服务器(NFS Server)
假设需要共享的路径是 /shared/data。
步骤:
- 安装NFS服务: 在服务器上安装 NFS 相关软件包:
sudo apt update
sudo apt install nfs-kernel-server -y # 对于Debian/Ubuntu
# 或者
sudo yum install nfs-utils -y # 对于CentOS/RHEL
- 创建共享目录: 创建需要共享的目录并设置适当的权限:
sudo mkdir -p /shared/data
sudo chmod 777 /shared/data # 根据需求调整权限
- 配置共享: 编辑
/etc/exports文件,添加共享配置:
/shared/data 192.168.1.0/24(rw,sync,no_subtree_check)
- 说明:
192.168.1.0/24:表示允许访问共享的客户端子网范围。rw:允许读写。sync:数据同步写入磁盘,确保数据一致性。no_subtree_check:提高性能,避免子目录权限检查。
- 启用并启动NFS服务:
sudo systemctl enable nfs-server
sudo systemctl start nfs-server
- 应用共享配置: 运行以下命令使配置生效:
sudo exportfs -arv
- 检查NFS服务状态: 确认NFS服务正常运行:
sudo systemctl status nfs-server
2. 在客户端挂载共享目录
假设NFS服务器的IP为 192.168.1.10,共享路径为 /shared/data。
步骤:
- 安装NFS客户端: 在客户端机器上安装 NFS 相关软件包:
sudo apt install nfs-common -y # 对于Debian/Ubuntu
# 或者
sudo yum install nfs-utils -y # 对于CentOS/RHEL
- 创建本地挂载点: 在客户端上创建一个本地目录用于挂载:
sudo mkdir -p /mnt/shared_data
- 挂载共享目录: 使用以下命令挂载远程共享目录:
sudo mount 192.168.1.10:/shared/data /mnt/shared_data
- 验证挂载: 进入挂载目录,检查是否能访问共享文件:
ls /mnt/shared_data
- 自动挂载(可选): 编辑
/etc/fstab文件,添加以下内容以便系统启动时自动挂载:
192.168.1.10:/shared/data /mnt/shared_data nfs defaults 0 0
3. 常见问题排查
- 防火墙问题: 确保服务器和客户端之间的网络通信正常,允许NFS相关端口(默认2049)。
- 权限问题: 确保共享目录的权限配置正确,必要时调整文件权限或使用
root_squash参数限制客户端权限。 - 挂载超时: 检查服务器IP是否正确、NFS服务是否正常运行。
通过NFS可以实现Linux之间类似于Windows共享磁盘的功能,并且支持多客户端同时访问,非常适合局域网文件共享场景。
