如何配置一个极简的 LXC 容器版 Samba 服务

频道:教程工具 日期: 浏览:273

使用 LXC 容器作为 Samba 服务器(轻量级 NAS)是 PVE 中的最佳实践。它的性能损耗几乎为零,且不占用虚拟机的磁盘空间。

以下是详细的操作步骤:

第一步:在 PVE 宿主机准备目录

首先在 PVE 物理机上创建一个文件夹,用来存放游戏数据。

  1. 进入 PVE 节点的 Shell

  2. 创建目录:mkdir -p /mnt/sata/shared_games

  3. 设置权限(确保容器有权读写):chmod -R 777 /mnt/sata/shared_games

第二步:创建 LXC 容器

  1. 在 PVE 网页界面,点击 “创建 CT”

  2. 模板:选择 debianubuntu

  3. 网络:设置静态 IP(例如 192.168.1.100),方便以后 Windows 挂载。

  4. 取消勾选“无特权容器 (Unprivileged container)”(建议初学者用特权容器,权限配置更简单;如果追求安全,请保持勾选但需额外配置 UID 映射)。

第三步:将宿主机目录挂载到容器 (Bind Mount)

这一步是核心,让容器能看到宿主机的硬盘。

  1. 在 PVE 宿主机 Shell 中执行(假设你的容器 ID 是 105):

    Bash
    pct set 105 -mp0 /mnt/sata/shared_games,mp=/mnt/games

    这条命令的意思是将宿主机的 /mnt/sata/shared_games 映射到容器内的 /mnt/games

第四步:在容器内安装并配置 Samba

  1. 进入该容器的控制台(Console)。

  2. 更新并安装 Samba:

    Bash
    apt update && apt install samba -y
  3. 备份原始配置:cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

  4. 编辑配置文件:nano /etc/samba/smb.conf

  5. 在文件末尾添加以下内容(极简匿名访问版):

    Ini, TOML
    [Games]
        path = /mnt/games    browseable = yes
        writable = yes
        guest ok = yes
        public = yes
        force user = root
        create mask = 0777
        directory mask = 0777
  6. 重启 Samba 服务:

    Bash
    systemctl restart smbd

第五步:在 Windows 10 虚拟机中挂载

  1. 打开 Win10 的“此电脑”。

  2. 点击上方工具栏的 “映射网络驱动器”

  3. 驱动器字母选 G: (或者你喜欢的),文件夹填:\\192.168.1.100\Games (换成你容器的实际 IP)。

  4. 勾选 “登录时重新连接”


为什么这个方案适合装游戏?

  1. 并发读取:两台 Win10 可以同时读取同一个游戏文件,互不冲突。

  2. 零复制更新:你在任意一台 VM 里更新游戏,另一台 VM 里的游戏也就同步更新好了。

  3. 独立性:你可以随时重启、重装 Win10 虚拟机,游戏数据永远稳稳地存在宿主机硬盘里。

  4. 性能:由于是在同一台物理机内部通信,走的是虚拟万兆网卡,加载速度甚至可能超过 SATA 固态硬盘。

注意: 如果你的两台虚拟机同时运行同一个在线竞技游戏(如《英雄联盟》或《反恐精英》),建议将游戏的“配置/存档”目录(通常在 C 盘或文档里)保持独立,只把游戏本体放在这个共享磁盘上。


打赏

评论留言

暂时没有留言!

我要留言