Debian 12 虚拟机挂载宿主机目录(NFS方式)

发表于 2025-09-09 13:18:44 分类于 默认分类 阅读量 83

Debian 12 虚拟机挂载宿主机目录(NFS方式)

在虚拟机中访问宿主机文件目录,最常见的方式之一就是 NFS(Network File System)。本文将介绍如何在 Debian 12 宿主机Debian 12 虚拟机 中使用 NFS 进行目录共享和挂载。


一、宿主机配置 NFS 服务

1. 安装 NFS 服务

在宿主机执行以下命令:

sudo apt update
sudo apt install -y nfs-kernel-server

2. 创建共享目录

例如我们要共享 /srv/nfs/share

sudo mkdir -p /srv/nfs/share
sudo chown nobody:nogroup /srv/nfs/share

3. 编辑共享配置

打开 /etc/exports 文件:

sudo nano /etc/exports

加入以下内容:

/srv/nfs/share 192.168.1.0/24(rw,sync,no_subtree_check)

参数说明:

  • 192.168.1.0/24:允许该网段的客户端访问(可改为单个虚拟机 IP,例如 192.168.1.100
  • rw:读写权限
  • sync:同步写入(更安全)
  • no_subtree_check:关闭子目录检查,提高性能

4. 重新加载配置并启动服务

sudo exportfs -ra
sudo systemctl restart nfs-kernel-server

5. 确认服务状态

sudo systemctl status nfs-kernel-server
sudo showmount -e

二、虚拟机挂载宿主机共享目录

1. 安装 NFS 客户端

在虚拟机执行:

sudo apt update
sudo apt install -y nfs-common

2. 挂载测试

假设宿主机 IP 为 192.168.1.10

sudo mkdir -p /mnt/share
sudo mount -t nfs 192.168.1.10:/srv/nfs/share /mnt/share

检查是否挂载成功:

df -h | grep nfs

3. 设置开机自动挂载

编辑 /etc/fstab

sudo nano /etc/fstab

添加一行:

192.168.1.10:/srv/nfs/share  /mnt/share  nfs  defaults  0  0

保存后测试:

sudo mount -a

三、注意事项

  1. 防火墙 确保宿主机防火墙允许 NFS 相关端口(2049/tcp111/tcp 等)。

  2. 网络模式 如果虚拟机和宿主机不在同一网段,需要使用 桥接网络 才能正常通信。

  3. 权限问题 默认情况下,NFS 会将 root 用户映射为 nobody,如果需要特定权限,可以调整 /etc/exports 配置。


四、总结

通过 NFS,我们可以轻松地在 Debian 12 宿主机虚拟机 之间共享目录,实现文件的读写和同步。相比于其他方式(如 Samba),NFS 更适合 Linux 环境下的虚拟机共享场景。

正物博客
一路向前,山海自平