共计 1193 个字符,预计需要花费 3 分钟才能阅读完成。
本文使用 Openwrt 编译官方固件详解 这篇文章编译出来的镜像进行虚拟机的创建,注意编译 x86 镜像时,需要勾选上 grub 选项,勾选其中一个就可以。否则编译出来的只有根文件系统的镜像,没有引导程序将无法在 pve 上运行。
比如这里选择生成的镜像时,可以进行选择:
编译后会生成如下文件:
只有根分区的镜像是用不到的,同样,压缩包也是,这个是提供给 lxc 容器使用的,可以看 Pve 使用 lxc 创建 openwrt 软路由容器 这篇文章。
这里能用的有 iso 镜像,可以直接上传到 pve 的 iso 镜像存储中,使用普通创建 linux 虚拟机的方式进行创建 openwrt 虚拟机。另外一个是内核和根文件系统分区的组合镜像,这个可以用于创建虚拟机。接下来,对两种方式都进行讲解。
1. ISO创建虚拟机
虚拟机软件通常支持加载 ISO 映像文件作为虚拟光驱,并从中启动操作系统安装过程,平常的 linux 发行版本也基本都是 ISO 格式的文件。
首先将编译出来的 iso 镜像上传到 pve,然后点击右上角的创建虚拟机。
选择刚刚上传的镜像。
其他的磁盘、CPU、内存自己需要修改,不修改默认下一步即可。创建完以后启动虚拟机,可以正常启动。
接下来配置就可以配置网络了,这里就不赘述,也可以看之前的文章。
2. 组合镜像创建虚拟机
而解压出来的 openwrt-x86-64-generic-squashfs-combined-efi.img 是 OpenWrt 固件的镜像文件,不能像 ISO 那样安装,需要像烧录那样,将镜像文件导入到磁盘。
但是,同样的需要先将文件上传到 pve,其实可以时 pve 任意目录,这里为了方便还是上传到 iso 存储目录。
然后点击右上角创建虚拟机。
操作系统选择不使用任何介质。
磁盘这里可以删除。
其他的根据自己的需要选择,创建好虚拟机以后,先不要点击启动。然后在 pve 执行如下命令:
qm importdisk 113 /var/lib/vz/template/iso/openwrt-x86-64-generic-squashfs-combined-efi.img local
-
qm importdisk 113: 这是用于导入磁盘镜像文件的命令,113 为虚拟机的 id,
表示要将磁盘镜像导入的目标虚拟机。 -
/var/lib/vz/template/iso/openwrt-x86-64-generic-squashfs-combined-efi.img: 这是要导入的 OpenWrt 固件的镜像文件路径
-
local: 这是要将磁盘镜像导入到的目标存储。local 表示虚拟机的本地存储,也可以是其他存储类型,如 NFS、iSCSI 等。
然后继续进入 pve 界面,点击虚拟机的硬件信息,可以看见一块未使用的磁盘,双击添加给虚拟机。
点击虚拟机的选项页面,再点击引导顺序,将刚刚添加的磁盘勾选,并将其移到最上面。
启动虚拟机,看见 openwrt 可以正常进入引导页面。
启动后同样是配置网络,不赘述。
提醒:本文发布于407天前,文中所关联的信息可能已发生改变,请知悉!