Debian(Linux)局域网共享文件-NFS

NFS (Network File system) 是一种客户端-服务器文件系统协议,允许多个系统或用户访问相同的共享文件夹或文件。最新版本是 NFS-V4,共享文件就像存储在本地一样。它提供了中央管理,可以使用防火墙和 Kerberos 身份验证进行保护。

本文将指导您在 Debian 10 中安装 NFS 服务器,并将其挂载到客户机上。

实验准备

  • NFS server : 192.168.122.126 (Debian 10)
  • NFS Client : 192.168.122.173 (Any Linux system)

安装 NFS Server

更新系统

复制代码
$ sudo apt-get update

安装 nfs 软件包

复制代码
$ sudo apt install nfs-kernel-server

创建一个目录,通过 NFS 服务器共享文件和文件夹

复制代码
$ sudo mkdir --p /mnt/nfsshare

由于共享将被客户端中的任何用户使用,因此权限设置为 nobody 用户和 nogroup 组

复制代码
$ sudo chown nobody:nogroup /mnt/nfsshare

使用户共享文件夹具有足够的读写权限,您也可以根据自己的需要设置

复制代码
$ sudo chmod 755 /mnt/nfsshare

编辑 /etc/exports 配置文件

复制代码
$ sudo vi /etc/exports

在文件末尾添加以下内容

复制代码
/mnt/nfsshare 192.168.122.173(rw,sync,no_subtree_check)

参数说明:

* rw: 读写操作
* sync: 在应用更改之前,将更改写入磁盘
* no_subtree_check: 禁用子树检查

最终 /etc/export 文件内容如下

导出共享目录,如果没有显示任何错误,说明您的配置正确

复制代码
$ sudo exportfs --a

如果您在 Debian 上运行防火墙,请允许客户端连接到 NFS

复制代码
$ sudo ufw allow from 192.168.122.173/32 to any port nfs

挂载 NFS Client

现在,让我们在客户机上挂载 NFS 共享,先安装 nfs-common 包

For Ubuntu Debian / Ubuntu

复制代码
$ sudo apt install nfs-common

创建一个从服务器访问共享文件夹的目录

复制代码
$ sudo mkdir -p /mnt/shared_nfs

对于永久挂载,请在 /etc/fstab 文件中添加以下内容

复制代码
$ sudo vi /etc/fstab

在文件末尾添加以下内容

复制代码
192.168.122.126:/mnt/nfsshare  /mnt/shared_nfs  nfs4 defaults,user,exec  0 0

参数说明:

  • 192.168.122.126:/mnt/nfsshare = 来自 NFS 服务器的共享文件夹
  • /mnt/shared_nfs = 在客户端机器上挂载的目录
  • nfs4 = nfs version 4
  • defaults,user,exec = 允许任何用户挂载文件系统,也允许他们执行二进制文件

使用 mount 命令挂载 NFS 文件系统

复制代码
$ sudo mount -a

使用 df -h 命令查看挂载点,如下所示

让我们尝试在 NFS 共享上创建一个目录

复制代码
$ cd /mnt/shared_nfs
$ mkdir test_dir

让我们尝试在 NFS 共享上创建一个文件

复制代码
$ cd /mnt/shared_nfs
$ touch test_file.txt

如果没有显示任何错误,说明您的配置是正确的,您可以使用 NFS 共享系统。

相关推荐
Decay__6 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
HideF8 小时前
Linux
linux·服务器·网络
小徐不徐说10 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
Ruiery10 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
论文复现现场11 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
Decay__12 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
丰锋ff13 小时前
压缩命令笔记
linux
心梦缘-雪雁13 小时前
SQL Server 查询数据存在哪个表里
数据库
lusklusklusk14 小时前
Python 巡检脚本:进程运行状态、数据库写入时效检查及邮件通知与告警
数据库·python·oracle
GeW14 小时前
产业新优势基础软件的人才底盘,从Linux与数据库开始
linux·数据库