pve虚拟机安装openwrt官方固件、扩容、按需安装插件

2024-03-17 16:20:10 13点赞 88收藏 0评论
pve虚拟机安装openwrt官方固件、扩容、按需安装插件

一、前言

目前使用的软路由系统是从github fork别人的actions自动编译项目,根据自己需求修改定制的系统,最近折腾完ipv6公网ip,想安装wireguard直连回家访问家里的设备,发现wireguard被我去掉了,因为系统是2022年9月编译的lean源码版本,wireguard是需要跟内核版本对应才能安装的,现在找不到相应版本了,用docker版也缺了kmod-wireguard等相关软件包无法使用,尝试折腾了从路由上socat转发流量到lxc容器上装在docker里的wg-easy也搞不通,最后放弃,选择重新建立一个虚拟机安装官方openwrt,把路由系统迁移过来,方便以后安装应用。

二、pve安装openwrt官方固件

这里我已经有一个在运行的openwrt虚拟机了,偷懒直接克隆了,然后把下载好官方镜像openwrt-23.05.2-x86-64-generic-squashfs-combined-efi.img上传到pve,使用以下命令将镜像导入转换生成新硬盘

qm importdisk 103 /var/lib/vz/template/iso/openwrt-23.05.2-x86-64-generic-squashfs-combined-efi.img local-lvm

然后将克隆过来的旧硬盘分离删除,把新生成的硬盘添加到虚拟机。具体详细操作这里不详细叙述,网上教程很多。

三、系统网络修改

启动系统后,进入openwrt shell界面,修改/etc/config/network文件lan部分参数,目的让路由器可以在局域网内访问登录管理页面,参数修改完重启network服务生效,登录管理页面后,根据个人网络实际情况修改设置参数让路由器可以联互联网下载应用。

四、更换软件源镜像

官方源国内速度很慢,将其更换为国内镜像,这里选择腾讯服务器,编辑/etc/opkg/distfeeds.conf文件,将所有网址中的download.openwrt.org替换成mirrors.cloud.tencent.com/openwrt,我装的是目前最新官方稳定版23.05.2,最终修改成类似如下内容:

src/gz openwrt_core https://mirrors.cloud.tencent.com/openwrt/releases/23.05.2/targets/x86/64/packages

src/gz openwrt_base https://mirrors.cloud.tencent.com/openwrt/releases/23.05.2/packages/x86_64/base

src/gz openwrt_luci https://mirrors.cloud.tencent.com/openwrt/releases/23.05.2/packages/x86_64/luci

src/gz openwrt_packages https://mirrors.cloud.tencent.com/openwrt/releases/23.05.2/packages/x86_64/packages

src/gz openwrt_routing https://mirrors.cloud.tencent.com/openwrt/releases/23.05.2/packages/x86_64/routing

src/gz openwrt_telephony https://mirrors.cloud.tencent.com/openwrt/releases/23.05.2/packages/x86_64/telephony

修改自定义软件源,添加第三方软件源,编辑/etc/opkg/customfeeds.conf,在文件最后添加如下内容:

src/gz openwrt_kiddin9 https://dl.openwrt.ai/latest/packages/x86_64/kiddin9

src/gz openwrt_kenzok8 https://op.dllkids.xyz/packages/x86_64

上面两个源有很多官方源没有收录但国内很多人使用的插件,很多重复,建议二选一,推荐第一个,方便后续安装,就不用到处找安装包。

还要修改/etc/opkg.conf,把验证签名设置option check_signature注释掉,才能正常使用第三方软件源,改成如下:

#option check_signature

注意:如果使用的不是x86_64平台cpu要修改成相应平台目录。

五、安装中文语言包

opkg install luci-i18n-base-zh-cn

六、overlay分区扩容

官方镜像硬盘空间只有一百多兆,如果安装比较多的插件空间会比较紧张,需要扩容,网上找到使用最多的教程方法,不知道为什么在我这里一直无法成功扩容,常见教程都是将硬盘剩余空间新建分区,然后迁移overlay分区文件到新分区,再挂载为外部/overlay,或者迁移根目录下所有内容再挂载为根目录/,这两种我试了不下5次,均告失败,还有按openwrt官方方法也是未能成功扩容,最后找到较少见的直接扩容原overlay空间的方法,好不容易成功扩容,记录一下,以防忘记。

1. 安装必要工具

opkg install losetup parted cfdisk block-mount fdisk resize2fs

2. 调整硬盘大小

在pve中调整硬盘大小,然后启动虚拟机。

3. 扩容操作

ssh登录openwrt,运行以下命令:

cfdisk #查看硬盘分区信息,检查是不是有一个调整硬盘大小后多出来的free space,一般overlay目录挂载的是/dev/sda2

parted /dev/sda

print #查看硬盘信息,第二个分区即sda2,注意现在空间大小(size)

resizepart 2 100% #修改第二个分区sda2大小为100%,即将所有free space划入sda2

print #检查看空间大小是不是变了

losetup #记住/dev/loop0的offset偏移值

losetup -o offset偏移值 /dev/loop100 /dev/sda2 #offset偏移值换成上一命令显示的offset值,loop100可以改成其他,只要不跟现有loop设备重复就行

e2fsck /dev/loop100 #检查文件系统,一路按y确认就可以

resize2fs /dev/loop100 #修改分区空间大小

reboot #重启系统后可使用df -h命令检查overlay是不是变大了,或者进入软件安装界面查看剩余空间

至此完成overlay分区扩容。

七、按需安装插件

到这里可以方便的按需安装插件了。

八、安装第三方插件后管理页面出现错误的解决办法

安装完第三方应用后重启系统,发现点插件入口菜单无法正常显示界面会出现错误提示,内容含有下面内容:

> module 'luci.cbi' not found:

运行下面命令重新安装luci基础应用进行修复:

opkg install luci luci-base luci-compat

参考资料:

[超详细,多图 PVE 安装 OpenWRT 教程(个人记录)_pve安装openwrt-CSDN博客](https://blog.csdn.net/u012374381/article/details/130650909)

[openwrt 19.07报错:module ‘luci.cbi‘ not found_/usr/lib/lua/luci/dispatcher.lua:1379: module 'luc-CSDN博客](https://blog.csdn.net/weixin_43274097/article/details/107197717)

[OpenWrt之网络配置文件(基于新三mt7621)_/etc/config/network-CSDN博客](https://blog.csdn.net/hzlarm/article/details/109892791)

[[OpenWrt Wiki] 网络基础知识 /etc/config/network](https://openwrt.org/zh/docs/guide-user/base-system/basic-networking)

[OpenWrt扩容(Overlay扩容 启动前后两种)-CSDN博客](https://blog.csdn.net/Miss_Mario/article/details/136598925)

[使用resize2fs调整ext4分区大小_resize2fs调整分区大小-CSDN博客](https://blog.csdn.net/yyyyyyyyyywwwwwwwwww/article/details/51535477)

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
88
扫一下,分享更方便,购买更轻松