如何在 PVE 上安装一个官方版的 Openwrt
Openwrt 装得多了,但之前大都是被人定制后的版本。本着简单就是最好的原则,大致研究了下官方原版的安装。简单的做个笔记如下。
首先去 OpenWRT 官网下载最新的固件(https://downloads.openwrt.org)。
需要注意下 ext4 与 squashfs 格式的区别:
ext4 格式的 rootfs 可以扩展磁盘空间大小,而 squashfs 不能。
squashfs 格式的 rootfs 可以使用重置功能(恢复出厂设置),而 ext4 不能。
我们这里选择 combined-ext4.img.gz。
使用国内的源,我们直接在 PVE 上下载好了。
wget http://mirror.sjtu.edu.cn/openwrt/releases/22.03.5/targets/x86/64/openwrt-22.03.5-x86-64-generic-ext4-combined-efi.img.gz
将下载好的文件解压:
gzip -d openwrt-22.03.5-x86-64-generic-ext4-combined-efi.img.gz
得到一个 openwrt-22.03.5-x86-64-generic-ext4-combined-efi.img 文件。
在 PVE 上新建一个虚拟机。不要硬盘和光驱,其它的按实际情况选好就行。然后将 Openwrt 的镜像导入到虚拟机中:
qm importdisk 100 /var/lib/vz/template/iso/openwrt-22.03.5-x86-64-generic-ext4-combined-efi.img local-lvm
然后可以看到虚拟机中多了个硬盘,把它加入到虚拟机中,再把它改成用这个硬盘启动。
因为官方固件硬盘很小,为了方便后面我们的使用,把硬盘可以改大一点,如 1~2G 左右。
好,启动虚拟机。
启动好之后,进入控制台,修改 IP 地址:
vi /etc/config/network
按实际情况修改,如:192.168.1.1
改好了之后保存,重启网络服务:
service network restart
在控制台 Ping 一下外网,确定网络通畅。如果不行,很多时候是 DNS 的问题,在 /etc/resolv.conf 配置一个可用的 dns 服务器就可以了。
然后再给官方固件的硬盘扩容,扩容的话,需要一些软件,我们先改成国内源:
sed -i 's_downloads.openwrt.org_mirrors.tuna.tsinghua.edu.cn/openwrt_' /etc/opkg/distfeeds.conf
然后 opkg update 一下,果然快很多。
然后安装几个工具:
opkg install parted opkg install fdisk opkg install block-mount opkg install blockdev
装完之后,用 parted -l 修复一下扩容的硬盘空间。
然后用 fdisk /dev/sda 来新增一个分区。默认情况下会把未使用空间都加到 sda3 ,然后保存退出。
使用 mkfs.ext4 /dev/sda3 对新分区进行格式化。
然后执行如下命令:
DEVICE="/dev/sda3" eval $(block info "${DEVICE}" | grep -o -e "UUID=\S*") uci -q delete fstab.overlay uci set fstab.overlay="mount" uci set fstab.overlay.uuid="${UUID}" uci set fstab.overlay.target="/overlay" uci commit fstab
好,至此空间扩容完毕。
后面就可以装一些其它用得上的东西了:
opkg install luci-i18n-acl-zh-cn opkg install luci-compat opkg install luci-lib-ipkg wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.3.1/luci-theme-argon_2.3.1_all.ipk -O luci-theme-argon_2.3.1_all.ipk opkg install luci-theme-argon*.ipk wget --no-check-certificate https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.9/luci-app-argon-config_0.9_all.ipk -O luci-app-argon-config_0.9_all.ipk opkg install luci-app-argon-config*.ipk
去 https://github.com/xiaorouji/openwrt-passwall/releases 下载最新的 passwall 及相关依赖,一般主要是这几个:
https://github.com/xiaorouji/openwrt-passwall/releases/download/4.66-8/luci-app-passwall_4.66-8_all.ipk https://github.com/xiaorouji/openwrt-passwall/releases/download/4.66-8/luci-i18n-passwall-zh-cn_4.66-8_all.ipk https://github.com/xiaorouji/openwrt-passwall/releases/download/4.66-8/passwall_packages_ipk_x86_64.zip
解压放到一起,然后用 opkg install *.ipk 一并安装就可以了。
在 Openwrt 上面装个 vlmcsd 跑跑 kms 服务:
在 https://github.com/cokebar/openwrt-vlmcsd/tree/gh-pages 和 https://github.com/cokebar/luci-app-vlmcsd/releases 上面下载最新的文件,如:
vlmcsd_svn1113-1_x86_64.ipk
luci-app-vlmcsd_1.0.2-1_all.ipk
然后再安装它们就可以了。
再去刷新页面,就可以看到这些组件了。
完毕。今后想到什么再补充吧。