发布于 

基于pve的Openwrt安装及配置

机器介绍

类别 型号
CPU Xeon X3440 @ 2.53GHz
主板 Supermicro X8SIL
内存 Kingston ECC 8GB DDR3-1600
硬盘 Kingston UV400
系统 Proxmox VE 7.2

Proxmox VE的安装与配置

Step.1 制作启动盘

pve官网下载pve的镜像(我这里使用的是7.2版,下载速度可能很慢,方法…你们懂得)然后使用相关工具写入即可,推荐使用balenaEtcher

写入启动盘
写入启动盘

Step.2 安装pve

将U盘插入电脑,开机选择U盘启动,进入引导界面,选择Install Proxmox VE进入pve安装程序

pve引导界面
pve引导界面

点agree同意协议

pve-license
pve-license

选择安装磁盘(这里开了个虚拟机来截图)

pve-seldisk
pve-seldisk

设置root密码和邮箱

pve-password
pve-password

按实际情况配置网络,一般情况下会自动获取ip等信息

pve-setnetwork
pve-setnetwork

最后确认信息,点Install安装系统

pve-confirm
pve-confirm

Step.3 配置pve

安装完后通过https://[你设置的ip,如图中的192.168.3.7]:8006访问pve管理界面

username填root,密码填安装系统时设置的密码

pve-login
pve-login

进入管理界面会弹出无有效订阅的提示,这个我们稍后会消除

选择左边数据中心下的唯一一个节点,点击Shell进入终端,运行以下命令安装pvetools:

1
echo "nameserver  8.8.8.8" >> /etc/resolv.conf && rm /etc/apt/sources.list.d/pve-enterprise.list && export LC_ALL=en_US.UTF-8 && apt update && apt -y install git && git clone https://github.com/ivanhao/pvetools.git && cd pvetools && ./pvetools.sh

安装完成后会自动打开pvetools,语言选择中文

pve-pvetools
pve-pvetools

配置国内源并去除订阅提示,其他按需求选择(我的Openwrt需要一个直通网口,这里配置了直通)

完成后执行reboot重启,这时再打开管理界面,烦人的订阅提示已经消失了

OpenWrt的安装与配置

Step.1 配置虚拟机

点击管理界面右上角的创建虚拟机,名称随便

pve-createvm
pve-createvm

选择不使用任何介质

pve-selsystem
pve-selsystem

机型,BIOS什么的保持默认。磁盘大小默认,待会要删除

CPU这里我选择1核

pve-cpu
pve-cpu

内存按需求定,这里我填1024MB

pve-memory
pve-memory

网络这里,模型选virtio(性能较高,除了OpenWrt里会提示半双工,实际上是全双工)。这里使用OpenWrt的防火墙,将防火墙一项取消选择

pve-network2
pve-network2

最后创建虚拟机,完成后在左边列表里选择虚拟机,点击右边的硬件,选中刚创建的虚拟磁盘,点击分离,选中分离出的硬盘,点击删除

pve-deldisk
pve-deldisk

Step.2 安装OpenWrt

选取适合自己的OpenWrt镜像,这里推荐一个

将镜像(img格式)上传到pve中

注:这里我合并了local和local-lvm,因此图中只显示local

pve-uploadiso
pve-uploadiso

在pve的shell中输入:

1
qm importdisk 虚拟机id /var/lib/vz/template/iso/镜像名字.img local-lvm

导入成功后显示successful

回到虚拟机硬件界面,选中新添加的硬盘,点击编辑,选择设备类型为SATA,点击添加,完成

pve-add-disk
pve-add-disk

进入虚拟机选项页面,点击引导顺序,只选择新添加的SATA硬盘,点击OK保存

pve-boot-order
pve-boot-order

启动虚拟机,进入openwrt

若启动虚拟机时报错:failed to set iommu for container

请执行以下命令:

1
echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf

而后重启即可解决问题

未完待续…