[OpenWrt]给软路由安装openwrt
[Openwrt]给软路由安装openwrt
准备
- 一台电脑
- 一个U盘
- 一台软路由
openwrt镜像文件
去openwrt官网下载对应架构的稳定版镜像文件。
版本号
试了下最新的22.03.0,发现docker daemon无法正常工作。
建议不要使用小版本号为0的版本,还是回退到上一个稳定版22.02.3比较保险。
选哪个镜像
OpenWrt的镜像有很多个,大概是下面几个选项的排列组合:
- ext4还是squashfs
- 单rootfs还是combined
- efi还是legacy
ext4还是squashfs
相比普通的ext4,squashfs引入了只读区域,可以恢复出厂设置,建议选择squashfs。
单rootfs还是combined
为了以后更方便迁移扩容,建议combined,把boot和rootfs分开。
efi还是legacy
根据软路由主板来决定,一般情况两种都支持。默认efi吧。
总结一下就是默认下载generic-squashfs-combined-efi.img.gz
这个镜像。
WinPE
WinPE的全称是Windows Preinstallation Environment,是微软官方出的一个小型操作系统,用来安装、部署和修复正经操作系统。
但防人之心不可无,既然官方有,为什么要用民间的呢。
官方WinPE不能运行physdiskwrite,暂时使用优启通的ISO搭配ventoy。
安装官方WinPE
从Win10 1809开始,官方WinPE包含在ADK的加载项里。
制作WinPE启动U盘
下一步是[创建可启动WinPE介质](https://learn.microsoft.com/zh-cn/windows-hardware/manufacture/desktop/winpe-create-usb-bootable-drive?view=windows-11)。
- 首先是创建工作文件。
以管理员身份启动部署和映像工具环境(在开始菜单的程序栏Windows Kits下)运行以下脚本
1 | copype amd64 C:\WinPE_amd64 |
- 定制WinPE
默认WinPE只有一个命令行没有界面,如果想使用UI,需要在这一步定制。
对于自用来说这一步可以省略,命令行是最优雅的人机交互方式(狗头
- 烧录至U盘
烧录有两种方式,一种是使用部署和映像工具环境命令行直接烧录
1 | MakeWinPEMedia /UFD C:\WinPE_amd64 P: |
另一种是生成iso文件,然后使用通用烧录工具如rufus进行烧录,推荐这种方法,更可控些。
1 | MakeWinPEMedia /ISO C:\WinPE_amd64 C:\WinPE_amd64\WinPE_amd64.iso |
- 拷贝物料
将OpenWrt镜像文件、写盘工具等文件复制到U盘根目录,以供后续使用。
写盘工具
我们需要将openwrt.img写入软路由的磁盘,需要写盘工具来完成这一步。
首推physdiskwrite,目前最新版本为0.5.3。
使用方法:
1 | physdiskwrite.exe -u generic-squashfs-combined-efi.img |
然后选择对应的硬盘,通常是第一个,也就是0
号。注意,如果有挂载其它硬盘,这一步一定要小心别选错了。
参数-u
是因为软件作者担心用户写错盘,在写入超出2G容量的硬盘时需要显性指定-u
参数。
分区工具
写完盘后,默认会在硬盘上新建3个分区。分别是efi,boot和rootfs。这三个区一共也才100多兆,硬盘上的上百G空间就被剩了下来。
此时就需要分区工具来进行扩容,把剩余的空间都划给rootfs。
Diskpart
dispart是微软官方WinPE自带的分区工具。
进入diskpart提示符后,选择磁盘和卷,扩容(默认使用全部剩余空间),再退出(保存)即可。
1 | diskpart |
DiskGenius
如果实在不习惯命令行,想用DiskGenius,那最简单的方法是使用第三方WinPE,第三方WinPE都会集成常用工具。比如优启通。
DiskGenius的使用方法就不多说了,扩展rootfs分区使用剩余未分区空间再保存就行。
注意,我在使用DiskGenius扩容rootfs分区时,generic-squashfs-combined-efi
会出现错误,最后使用了generic-squashfs-combined
。
GParted
如果上面两种方法都不行,那么可以进入Linux系统使用GParted进行分区。
参见这篇文章OpenWrt扩容
安装Openwrt
将软路由接上显示器,键盘,鼠标,U盘,然后插电。
通电直接启动
默认软由器会通电直接开机,而不用按下开机键。这样才能在断电又来电后自动恢复。
这项设置在BIOS的Restore AC Power Loss
中,将它设为Power On
即可。
Restore AC Power Loss
通常在电源管理或者高级设置里。
进入WinPE
开机后依据屏幕提示,按F8
或F12
进入快捷启动,选择U盘启动。
完成后重启机器。
配置Openwrt
重启完成后就会进入Openwrt系统了,等待启动完成按下回车键激活命令行。
Grub
如果烧录的不是efi版本,那么进入grub引导界面将没有倒计时,需要手动选择OpenWrt
启动。
可以修改grub配置文件/boot/grub/grub.cfg
,将default
改为0
,这样就不用手动选择了。
密码
初始系统默认没有密码,无法通过ssh登录。根据提示使用passwd
命令设置密码。
配置IP
默认的IP是192.168.1.1
,很容易跟光猫或主路由冲突。我们把它改为192.168.8.1
。
1 | uci set network.lan.ipaddr='192.168.8.1' |
配置软件源
国内源的下载速度与官方比起来就像飞机和汽车。
1 | sed -i 's_downloads.openwrt.org_mirror.sjtu.edu.cn/openwrt_' /etc/opkg/distfeeds.conf |
中文界面
安装luci中文界面。
1 | opkg update |
常用软件
常用软件可参考其它文章。