跳转到内容

MicroVM 插件 ​

完成后,OMV 上有一台用 Firecracker 启动的 Linux 微型虚拟机:启动快、占内存少、没有图形界面,只通过串口控制台和网络使用。它适合做实验和轻量的 Linux 服务,不是 KVM 插件的替代品。

新插件:成熟度低,先在不重要的数据上试

  • 成熟度:openmediavault-microvm 的第一个版本 8.0.0 在 2026-09-16 才发布,omv-extras wiki 上还没有它的页面,官方中文翻译也全部缺失,界面是英文。用户基数小,踩坑的资料少,别用它承载重要业务。
  • 影响范围:删除虚拟机时,它的工作目录(可写的 rootfs 副本)和所有数据盘,包括放在其他共享文件夹里的,都会被一起删除;还原备份会覆盖目标虚拟机现有的磁盘。
  • 供应链:Firecracker 没有 Debian 软件包,插件从 GitHub 下载静态二进制(默认 v1.17.0),安装到 /usr/local/bin。按 8.0.0 的源码,这一步没有校验和或签名验证,信任的是 GitHub 上的发布文件。系统镜像默认来自 Firecracker 的 CI 构建产物,是测试用的内核和 rootfs,不是发行版镜像。
  • 前置条件:CPU 虚拟化已开启,/dev/kvm 存在;只支持 x86_64 和 aarch64;虚拟机文件放在数据盘的共享文件夹里;先在测试环境验证。
  • 怎么回退:停用或停止虚拟机,卸载插件前先导出需要的数据;虚拟机里重要的数据另有备份。

适合谁 ​

  • 想试 Firecracker、需要快速创建和销毁的 Linux 实验环境。
  • 熟悉命令行,能自己处理内核参数、rootfs 镜像和网络。

大多数人更适合:

你的需求选什么
通用虚拟机:Windows、图形界面、UEFI、TPM、USB 设备、更多功能KVM 插件
跑应用,不需要完整系统容器,见 Docker 与应用
多台虚拟机、稳定可靠、可迁移Proxmox VE

与 KVM 插件的区别 ​

KVM 插件(libvirt/QEMU)MicroVM 插件(Firecracker)
定位通用虚拟机极简、启动快的微型虚拟机
客户机Linux、Windows 等,ISO 安装以 Linux 内核加 rootfs 镜像启动
显示VNC、Spice、noVNC 图形控制台只有串口控制台,通过 cterm 在网页里看
硬件UEFI、TPM、虚拟光驱等内核参数里默认 pci=off,没有 PCI 设备,磁盘不能热插拔
成熟度迭代多年,8.x 功能很多8.0.0 首发
二者关系互相独立独立于 KVM 插件,不使用 libvirt

插件信息 ​

项内容
包名openmediavault-microvm
来源omv-extras。Firecracker 本体是第三方软件
OMV 8 状态截至 2026-10-22 的 omv-extras synchrony 软件源为 8.0.0(amd64、arm64)
菜单位置服务 → MicroVM(Services → MicroVM):VMs、Disks、Images、Networks、Backup、Schedule、Settings。官方中文基本没有翻译,以界面显示为准
依赖curl、dnsmasq-base、dtach、e2fsprogs、squashfs-tools、openmediavault-sharerootfs;推荐安装 openmediavault-cterm(网页终端)。卸载 sharerootfs 会连带卸载本插件

先装 omv-extras。

安装 ​

  1. 在 OMV 的 shell(root)里只读检查虚拟化可用:
sh
ls -l /dev/kvm
  1. 系统 → 插件(System → Plugins)搜索 microvm,安装 openmediavault-microvm,硬刷新浏览器。
  2. 到 服务 → MicroVM → Settings:勾选 Enable(默认开),Shared folder 选一个放在数据盘上的共享文件夹,用来存放每台虚拟机的工作目录(可写的 rootfs 副本)和下载的镜像;Install cterm 默认开,会安装网页终端供你查看控制台。保存、应用后,页面底部会显示已安装的 Firecracker 版本。

配置与使用 ​

1. 下载镜像 ​

服务 → MicroVM → Images:

  • Download from catalog:从插件内置目录选一个镜像下载。目录来自 Firecracker CI,下载的 .squashfs rootfs 会自动转换成普通的 rootfs.ext4。
  • Download from URL:自己给出内核和 rootfs 的 URL。只用你信任的来源。

2. 建网络 ​

服务 → MicroVM → Networks 有两类网络:

  • 私有 NAT 网络:要填 Subnet (CIDR)。每台虚拟机得到一个固定地址,同一网络里的虚拟机互通。可以勾选 Run DHCP for this network,让 dnsmasq 在网桥上给虚拟机发地址并提供 DNS。
  • 宿主网桥网络:选一个已有的网桥,虚拟机会出现在局域网里。这会让它被局域网里的其他设备访问到,见 网桥。

3. 创建虚拟机 ​

服务 → MicroVM → VMs → Add new VM:

字段默认说明
Name同时用来派生 systemd 实例名和 TAP 设备名,创建后不能改
Enabled开
Autostart on boot关开机自动启动
Image / Network选上面准备的
vCPUs / Memory (MiB)1 / 512按需要调整
MAC address空留空则按名字生成固定的 02:fc:… 地址
Boot argumentsconsole=ttyS0 reboot=k panic=1 pci=off保留 console=ttyS0,去掉它串口控制台会没有输出
Shutdown timeout (seconds)30优雅关机的最长等待,0 表示总是强制停止
Run in jailer通过 Firecracker 的 jailer 在 chroot 里以独立 uid 运行,隔离更好;开关改变后,已有的热快照和热备份只能在相同设置下还原

创建后用工具栏启动。Console 按钮打开网页终端,Details 里能看到最近 200 行控制台输出。停止和重启会先向客户机发 Ctrl+Alt+Del,等待超时后才强制停止;强制停止和删除虚拟机不会等待。

4. 数据盘 ​

服务 → MicroVM → Disks 添加的磁盘按名字顺序出现在客户机里,是 /dev/vdb、/dev/vdc 等。Firecracker 不支持热插拔,新磁盘要下次启动才会出现。ext4 数据盘以磁盘名为标签,建议在客户机里按标签挂载,这样增删别的磁盘不会让设备名错位,例如客户机的 /etc/fstab:

text
LABEL=data  /data  ext4  defaults,nofail  0  2

磁盘镜像默认放在虚拟机自己的目录里,也可以放到别的共享文件夹的 microvm-disks/<虚拟机>/ 下。默认会随快照和备份一起复制,可以关掉磁盘上的 Include in snapshots and backups 选项。

5. 快照、备份与还原 ​

  • Snapshots:Create、Restore、Delete。Resize root disk 以 MiB 为单位调整根盘大小。
  • Backup 页:Backup now 选虚拟机、Destination directory 和 Keep(保留几份,0 为全部);Restore 选备份和 Restore onto VM。热(warm)备份包含内存和设备状态,不只是磁盘。还原会覆盖目标虚拟机当前的磁盘;还原到不是原来那台的虚拟机时,不使用保存的内存状态,虚拟机冷启动。Sync backup list 用来把备份列表和磁盘上的实际文件同步。
  • Schedule 页可以设置定时备份。

备份放哪、口令怎么保管 ​

  • 放哪:备份目录选在另一块盘上,而不是和虚拟机文件同盘。
  • 口令:插件不做加密,没有口令;备份包含虚拟机的全部磁盘。盘要物理保管。
  • 客户机里的数据要另外做文件级备份,见 备份策略。

做一次恢复测试 ​

  1. 对一台测试虚拟机用 Backup now 做一次备份,选一个独立的目录。
  2. 新建第二台测试虚拟机(空的,用同一个镜像)。
  3. 在 Restore 里选刚才的备份,Restore onto VM 选第二台,等待完成。
  4. 启动第二台,用控制台登录,确认系统和你放进去的数据都在,网络可用。
  5. 删除两台测试虚拟机,注意删除会带走它们的磁盘。

检查结果 ​

  1. Settings 页能显示 Firecracker 的版本。
  2. 虚拟机能启动,Details 里能看到控制台输出,网页终端能进入。
  3. 重启 OMV,设为 Autostart on boot 的虚拟机自动起来。
  4. 备份和还原按上面的演练跑通。

备份与维护 ​

  • 插件配置在 OMV 数据库里,虚拟机文件在你选的共享文件夹里,两者都要备份。
  • 更新:这是新插件,更新前看 changelog,Firecracker 的内置版本也可能随之变动。
  • 卸载:先停止所有虚拟机,备份需要的数据,不要卸载 sharerootfs。

常见问题 ​

启动失败,提示没有 KVM。 检查 BIOS 里的虚拟化和 /dev/kvm;在虚拟机里装 OMV 时要开嵌套虚拟化。

控制台没有输出。 检查 Boot arguments 是否还保留 console=ttyS0。

新增的磁盘没出现。 不支持热插拔,重启这台虚拟机。

还原到另一台虚拟机后行为不同。 非原机还原不用内存状态,是冷启动,属正常。

参考资料 ​

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