跳转到内容

在虚拟机里安装 OMV ​

OMV 可以装在完整的虚拟机(KVM、VMware、VirtualBox、Hyper-V 等)里。官方文档的说法是:可以在虚拟环境里部署,但性能会因虚拟化方式而受影响。装的过程和用 ISO 安装 OMV一样,不同的是存储、网卡和备份这几件事要多想一步。

不能装在 LXC 里

官方文档在安装总览里写了一条警告:OMV 不支持安装在 LXC 或任何其他基于容器的方案里。OMV 要独占系统配置,包括网络、挂载、SSH、Samba、nginx,容器里做不到。installScript 检测到 LXC 会直接退出并提示 OMV does not work in LXC!。

在 Proxmox VE 上,要创建的是虚拟机(VM),不是 LXC 容器。

开始之前 ​

  • 一个虚拟机里至少要有两块盘:一块装系统,一块存数据。OMV 的系统盘不存数据,虚拟磁盘也一样。
  • 资源:内存官方最低 1 GiB,新手建议 4 GiB。系统盘官方文档的最小值是 4 GiB,omv-extras 的新手指南建议 8 GB 起步,16 到 32 GB 比较从容。跑容器、ZFS 要更多内存,见各自的文章。
  • 安装用的 ISO,下载校验见下载、校验并制作安装 U 盘,不用写 U 盘,直接把 ISO 挂到虚拟光驱。

虚拟机里装也会清空所选磁盘

  • 影响范围:安装器清空它选中的磁盘。数据盘如果在这时已经挂在虚拟机上,选错盘就是真实的数据丢失。把物理盘直通进来的场景尤其危险。
  • 前置条件:先只挂系统盘,装完 OMV,关机,再添加数据盘。 这和物理机上「先拔掉数据盘」是同一个道理。
  • 怎么回退:被清空的磁盘没有回退办法。装之前,已有数据的盘先确认在虚拟机之外有一份备份。

数据盘怎么给:虚拟磁盘还是直通 ​

这是装之前最重要的决定,装完再改要搬数据。

方案OMV 里看到的是SMART虚拟机备份与快照冗余由谁负责
虚拟磁盘宿主机存储上的一块虚拟磁盘通常没有,或者不反映真实硬盘数据在虚拟磁盘里,能被备份和快照宿主机
物理盘映射(整盘交给虚拟机)物理盘,经过虚拟化层取决于平台,常常不完整数据不在虚拟机备份里,快照受限OMV
控制器直通(整张 HBA 或 SATA 控制器)真实的物理盘完整数据不在虚拟机备份里,不能快照、不能热迁移OMV

几点要想清楚:

  • 用虚拟磁盘,物理盘的健康要在宿主机上监控。 OMV 里 存储器 → S.M.A.R.T.(Storage → S.M.A.R.T.)看到的不是真实硬盘的状态,界面一片绿不代表盘是好的。
  • 不要做双层冗余。 宿主机已经用 ZFS 镜像或 RAID 保护了虚拟磁盘,就不要再在 OMV 里把两块虚拟磁盘组软件 RAID,容量白白减半,也没有多一层保护。
  • 用直通,数据备份必须由 OMV 自己负责。 宿主机备份虚拟机时看不到直通的磁盘,「虚拟机有备份」不等于数据有备份。
  • 冗余不是备份。 无论哪种方案,数据的独立备份都要做,见备份策略:冗余不是备份。

快照不是备份,回滚会带走数据

虚拟机快照通常会包含它所有的虚拟磁盘。如果数据盘也是这台虚拟机的虚拟磁盘,回滚快照会把数据一起退回快照那一刻。更新、升级大版本、改网络之前打快照是好习惯,回滚之前要先弄清楚哪些盘在快照里。

安装时的几个差异 ​

固件:BIOS 还是 UEFI。 官方文档说官网 ISO 目前只支持 AMD64 的 BIOS 引导。所以用 ISO 安装时,虚拟机选传统 BIOS 固件,在 Proxmox VE 里就是默认的 SeaBIOS。一定要用 OVMF(UEFI)的话,先在虚拟机里装 Debian 13,再按在 Debian 13 上安装 OMV安装。姊妹站 PVE 指南里的 q35 加 OVMF 写法以本站为准;有人在 OVMF 下用 ISO 装成功过,但这不在官方支持范围内。

装完弹出 ISO。 安装结束时屏幕会提示取出安装介质。在虚拟机里,要把 ISO 从虚拟光驱里弹出(或者改成不使用介质),否则重启后又从光盘启动。

网卡。 Debian 13 的内核自带 VirtIO 等常见虚拟网卡的驱动,用半虚拟化网卡性能更好。装完在控制台能看到 IP 即可。

网卡换了,网络就断了。 OMV 记录网卡配置时,按网卡的 MAC 地址(硬件 MAC 固定时)或设备名匹配。虚拟机里换了网卡型号、删掉重新添加,或者克隆出来的新虚拟机 MAC 变了,旧配置就匹配不到,机器会没有 IP。这时在虚拟机控制台里用 omv-firstaid 重新配置网络,见改坏网络后怎么救。虚拟机比物理机方便的一点是:宿主机的 Web 控制台随时能进去。

guest agent。 KVM 类平台(包括 Proxmox VE)上,OMV 里装上 QEMU guest agent,宿主机才能看到虚拟机的 IP,备份时也能让文件系统静默:

sh
# 在 OMV 的 shell 里执行
apt-get update
apt-get install qemu-guest-agent

还要在宿主机上启用这个虚拟机的 guest agent 选项,并完整关机再开机一次。它是 Debian 自带的小工具,一般不会和 OMV 冲突。其他平台装对应的包,例如 VMware 的 open-vm-tools,以平台文档为准。

宿主机与 NAS 的先后。 宿主机重启或停机,NAS 就跟着停,所有依赖它的服务也停。让虚拟机随宿主机自动启动,关宿主机前先正常关闭 OMV,别让它被强行断电。

完整的 Proxmox VE 操作,包括创建虚拟机时的选项、磁盘直通、备份分工,见姊妹站的 OpenMediaVault:在 PVE 上跑一台轻量 NAS。这里不重复。

检查结果 ​

sh
# 在 OMV 的 shell 里执行
systemd-detect-virt
lsblk -o NAME,SIZE,MODEL,SERIAL,TRAN
  • systemd-detect-virt 输出虚拟化类型,比如 kvm,说明 OMV 认出自己跑在虚拟机里。
  • lsblk 里,系统盘和数据盘的容量符合你的设置。虚拟磁盘的型号一般是虚拟化平台的名字,不是真实硬盘的型号。
  • 在 OMV 界面的 存储器 → 磁盘(Storage → Disks)里能看到数据盘。
  • 宿主机上能看到虚拟机的 IP,说明 guest agent 正常。
  • 把虚拟机完整关机再开机,OMV 能自动起来,共享自动恢复。

常见问题 ​

存储器 → 磁盘 里看不到数据盘。 虚拟磁盘要在虚拟机的硬件里添加,总线选 SCSI 或 VirtIO,添加之后要完整关机再开机(不是在系统里重启)。直通的盘,去宿主机确认映射真的写进了虚拟机配置。

安装器一遍遍从光盘启动。 ISO 没弹出,见上面「装完弹出 ISO」。

S.M.A.R.T. 页面是空的,或者报错。 用虚拟磁盘时这是正常的,盘的健康请在宿主机上监控。

OMV 里想跑 Docker 应用。 可以,通过 omv-extras 和 Compose 插件,见安装 Docker 与 Compose 插件。如果主要目的是跑容器,在宿主机上单独开一台跑容器的虚拟机,通常比堆在 NAS 里更好管。

想把 OMV 迁移到物理机,或者反过来。 系统盘整盘迁移和重装接回数据盘两条路,见迁移到新硬件。

参考资料 ​

OpenMediaVault 非官方中文使用指南,与 openmediavault 项目及其开发者无隶属关系。