前言

本文介绍如何使用 PVE 安装 OpenWrt,并利用其实现更丰富的网络功能。OpenWrt 提供了丰富的可定制化功能,使得我们可以自由定制路由器的配置和性能。文章详细介绍了如何设置 PVE 虚拟机,并在其中安装 OpenWrt。

PVE

来自维基百科:

Proxmox VE(英语:Proxmox Virtual Environment,通常简称为PVEProxmox),是一个开源的服务器虚拟化环境Linux发行版。Proxmox VE基于Debian,使用基于Ubuntu的定制内核[2] [3],包含安装程序[4]、网页控制台和命令行工具,并且向第三方工具提供了REST API,在Affero通用公共许可证第三版下发行。[5]。Proxmox VE支持两类虚拟化技术:基于容器的LXC(自4.0版开始,3.4版及以前使用OpenVZ技术[6])和硬件抽象层全虚拟化的KVM

OpenWrt

来自维基百科:

OpenWrt是适用于嵌入式设备的一个Linux发行版。

相对原厂固件而言,OpenWrt不是一个单一、静态的固件,而是提供了一个可添加软件包的可写的文件系统。这使用户可以自由的选择应用程序和配置,而不必受设备提供商的限制,并且可以使用一些适合某方面应用的软件包来定制你的设备。对于开发者来说,OpenWrt是一个框架,开发者不必麻烦地构建整个固件就能得到想要的应用程序;对于用户来说,这意味着完全定制的能力,与以往不同的方式使用设备,OPKG包含超过3500个软件。 默认使用LuCI作为web交互界面。

OpenWrt另有一个复刻分支项目,名为LEDE,两者于2018年1月合并,合并后的项目使用OpenWrt的名字、LEDE的源代码。

后面的教程在PVE上安装OpenWrt,使用的是LEDE的源码。

教程

前提

  • 安装好PVE
  • 有一个OpenWrt镜像,镜像后缀为.img

创建虚拟机

进入PVE管理页面,右键点pve,然后点创建虚拟机

image-20230406143903078

填入名称,其他配置不变,然后点击下一步

image-20230406144112559

选择不使用任何介质,操作系统类别选Linux,版本选5.x - 2.6 Kernel,然后点下一步

image-20230406144235404

系统不调整,直接点下一步

image-20230406144409209

磁盘类型选SATA,容量随便(因为等会我们会删除该硬盘),然后点下一步

image-20230406144526286

CPU调整核心数,比如我是1核,然后点下一步

image-20230406144605324

内存设置,我这里是2G,然后点下一步

image-20230406144649297

网络默认即可,某些设备识别不出网卡,可以用尝试E1000,然后点下一步

image-20230406144853895

确认配置正确后,不要打开创建后启动(我们还要调配置),然后点完成

image-20230406144953470

删除原硬盘

点刚刚创建的虚拟机,在硬件找到磁盘,选中后点上面的分离

Snipaste_2023-04-04_20-18-19

看到弹窗后,点

Snipaste_2023-04-04_20-18-32

然后可以看到一个未使用的磁盘0,选中并点上面的删除

Snipaste_2023-04-04_20-19-00

弹窗选

Snipaste_2023-04-04_20-19-08

上传镜像

  • 如果镜像是压缩文件(.gz结尾),则利用FTP将文件上传到pve服务器,我这里上传到的是tmp目录

    Snipaste_2023-04-04_20-15-51

    然后用gzip命令将文件解压gzip -d openwrt.img.gz

    Snipaste_2023-04-04_20-27-01

    Snipaste_2023-04-04_20-27-08

  • 如果文件已经是镜像(.img结尾),则可以直接用FTP上传到服务器,或利用PVE上传,在页面local(pve)->ISO镜像->上传,将文件上传到服务器

    image-20230406145833082

    上传后,可以用Shell命令查找文件位置

    find / -name ubuntu-20.04.4-live-server-amd64.iso
    

    得到结果,这就是文件上传的目录

    image-20230406150107883

转换镜像

可以用SSH客户端连接PVE,也可以用PVE自带的shell客户端连接

image-20230406150239565

进入镜像所在位置,我这里是/tmp

Snipaste_2023-04-04_20-27-08

使用命令转换镜像

qm importdisk 101 openwrt.img local-lvm

说明:

  • 101是机器的ID,可以在左上角看到,比如这里101(Openwrt),101就是机器的ID
  • openwrt.img是镜像名称
  • local-lvm是转换镜像的地址,也是在左上角看

Snipaste_2023-04-04_20-28-58

执行后,可以看到导入的日志

Snipaste_2023-04-04_20-27-51

当出现下面的日志时,则代表导入完成

Snipaste_2023-04-04_20-28-01

挂载磁盘

回到虚拟机硬件,可以看到一块未使用的磁盘0,点击编辑

Snipaste_2023-04-04_20-22-23

选择SATA,然后点添加

Snipaste_2023-04-04_20-22-40

添加成功后如下

Snipaste_2023-04-04_20-22-57

配置引导

选项,找到引导顺序,双击

Snipaste_2023-04-04_20-23-23

sata0勾选已启用,将优先级调到第1位,点OK

Snipaste_2023-04-04_20-23-42

成功后可以看到引导顺序位sata0优先

Snipaste_2023-04-04_20-23-55

开机启动

点右上角的启动即可开机

Snipaste_2023-04-04_20-24-06

配置Openwrt的IP

启动后,点击控制台可以看到OpenWrt的启动情况,当看到Please press Enter to activate this console.时,敲键盘上的回车键可以进入到终端

Snipaste_2023-04-04_20-29-13

输入vi /etc/config/network进入修改配置

Snipaste_2023-04-04_20-30-03

按需调整红框内的配置,ipaddr就是访问Openwrt的页面,调整后输入:,在输入wq,再按回车

Snipaste_2023-04-04_20-30-22

访问Openwrt

输入上面调整后的IP,比如我的是192.168.14.2,就可以访问Openwrt了

Snipaste_2023-04-04_20-30-42

参考文档

  1. PVE安装Openwrt/LEDE软路由保姆级图文教程
  2. [PVE][04]Openwrt(LEDE)安装及配置
  3. Pve安装OpenWrt教程
  4. 【教程二】软路由pve、openwrt安装,上网配置教程
  5. PVE——OP的安装和设置