折腾软路由真的是一个相当耗时间的事情,之前图省事都是直接下载别人编译好的版本,各种插件都有了,开箱即用。
但是现在有点受够各种所谓大神编译,但是夹带私活的版本了,还有些是从某个snapshot的源码拉出来,opkg源也只能写snapshot,导致后面装包一堆问题,一头乱麻。
所以这次打算直接装官方的版本了。
从官网下载镜像
现在最新的稳定版是21.02.02
,https://downloads.openwrt.org/releases/21.02.0/targets/x86/64/openwrt-21.02.0-x86-64-generic-ext4-combined.img.gz,硬盘足够,下载的是ext4
分区的镜像,嫌太慢也可以去腾讯的镜像下载。
镜像写入到路由器磁盘
先用u盘做个启动盘,如果是linux的livecd,可以直接用dd
命令写入,我的硬盘设备是/dev/sda
dd if=./openwrt-21.02.0-x86-64-generic-ext4-combined.img of=/dev/sda
如果是winpe
,可以用physdiskwrite.exe
,不需要解压。
physdiskwrite.exe -u openwrt-21.02.0-x86-64-generic-ext4-combined.img.gz -d 0
调整分区大小
其实写完之后路由器就能用了,如果要改ip,可以编辑一下/etc/config/network
,然后去网页里完成拨号上网之类的操作。
但是默认的root
分区太小了,只有一百来兆,随便装几个包就满了,所以要调整一下。
为了装包更快,先将opkg源改为腾讯的:
sed -i 's/https\:\/\/downloads.openwrt.org\//https\:\/\/mirrors.cloud.tencent.com\/openwrt\//g' /etc/opkg/distfeeds.conf
然后装上cfdisk
opkg update
opkg install cfdisk
cfdisk操作很直观,选择rootfs
分区后选择[resize]
,然后再[write]
之后就好了。
但是用df -h
查看,根目录分区的大小并没有变化,还需要resize2fs
操作一下
opkg install resize2fs
resize2fs /dev/sda2
不过我的在这一步报错了
resize2fs: Invalid argument While checking for on-line resizing support
搜了下可能是这个原因https://bugs.openwrt.org/index.php?do=details&task_id=2951
然后这样操作一下
opkg install tune2fs
mount -o remount,ro /
e2fsck -f /dev/sda2
# 一路按y
e2fsck -f /dev/sda2
重启reboot
再resize2fs
,
resize2fs /dev/sda2
用df -h
看一下,充足的硬盘空间,心情愉悦。