一些使用 TrueNAS 作为家里 All-in-One 宿主机过程中的麻烦之处。
1. Display 不好用
SPICE 还要输密码,然后每次 session 都很短。虽然布置好正经的 SPICE client 应该能解决这个问题,但这不还是多了一步嘛。
不知道为什么,Ubuntu VM 开机一段时间之后,再用 SPICE Display 就无论如何都无法接通 keyboard input。需要reboot VM才行。
Display 似乎模拟的显存还非常小,docker logs -f
就经常撑爆了,然后就就得刷新页面,再输一次密码。
2. VM网络层有些麻烦和奇怪
- Apps
之前的 24.10 track,TrueNAS application 用的是单节点k3s(本质上还是docker,但是非要要套一层k8s,而且还不支持拓展多节点,完全意义上的脱了xx放x。)。 唯一的特点就是不好用,麻烦。如果就是拿来玩玩也成,但是一旦涉及到添加vmbr,或者迁移一下之类的问题,多这么一层导致出来好多 network config 的问题。
现在25版本应该都是直接用 docker 了。apps 这方面应该好了一些。
- vmbr
再就是出场默认是没有 vmbr 的。默认是只有你的 nic 配置了IP。如果你要使用VM,然后还要VM桥接在你的 nic 上面,就需要:
- 首先创建一个 vmbr
- 把你的 IP 地址从你的 nic (类似 enp4s0 这样的)上边拿掉。
- 把你的IP地址给你新建的 vmbr
- 然后把把你的 nic 加入到 vmbr 中作为一个 bridge member。
- 最后都做完了,一起 apply。
这样一个网络操作是有断网的可能的(假设你就一个网口)。做好了都好说,做不好就麻烦了,就得准备鼠标键盘显示器了。。。
- (不确定) VM 里面的 docker network NAT 似乎有问题
我在 TrueNAS 里面跑 Ubuntu VM,然后上面跑 Docker。用的都是默认的 bridge network。然后我在 OPNSense 上面,还能看到 docker container 在 Ubuntu VM 里面的 IP。 按理说,这个 IP 应该已经被 docker 出站的时候 NAT 掉了。但是为什么在 Firewall 上面还能看到?
Ubuntu VM 用的 adapter type 就是 virtIO。这点现在大多数 VM 应该都是这样。但是我似乎只在我以TrueNAS当 hyperV用的这个机器上看到过这个现象。 (TrueNAS version: 24.10)。
3. 缺少原生的 VM snapshot 和 Backup 功能
这个也是没办法,毕竟 TrueNAS 主业不是 HyperV。相应的,Proxmox 也没有那么多原生功能给 storage 方面。