参考链接
openwrt wrt1900acs
openwrt mx4200
openwrt E8450
openwrt usb-drives-quickstart
openwrt Using storage devices
注意:MX4200标签没有注明V1还是V2,即默认是V1. MX4200有掉线问题,不推荐。
注意:E8450有个Kiss of Death问题,不推荐。
目前来看,wrt1900acs运行最稳定,可惜只是WiFi 5标准。
刷机
wrt1900acs原生固件刷openwrt-23.05.3-mvebu-cortexa9-linksys_wrt1900acs-squashfs-factory.img
wrt1900acs openwrt更新刷openwrt-23.05.3-mvebu-cortexa9-linksys_wrt1900acs-squashfs-sysupgrade.bin
通过WEB UI来刷,过程简单,不做叙述。
玩机
扩展overlay
- 安装驱动
opkg update
opkg install block-mount kmod-fs-ext4 e2fsprogs kmod-usb-storage-uas parted kmod-usb-storage kmod-usb3
- 挂载exfat
笔者有个金士顿U盘,只有exfat格式能最好兼容。于是学习了一下挂载exfat。参考博客OpenWrt 挂载FAT32 / exFat 硬盘
opkg install kmod-usb-storage block-mount kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1 kmod-fs-exfat usbutils
- 识别U盘
将U盘格式化成ext4,插入之后,执行block info
/dev/ubiblock0_0: UUID="717bd2c9-ad69faf3-6b367d9c-27ac56f7" VERSION="4.0" MOUNT="/rom" TYPE="squashfs"
/dev/ubi0_1: UUID="1b356301-ad42-41d3-a448-20b80a6fd110" VERSION="w5r0" TYPE="ubifs"
/dev/ubi1_0: UUID="493531ba-86cd-421e-aa0b-39fc2950eb38" VERSION="w4r0" TYPE="ubifs"
/dev/sda4: UUID="c6115da9-3e8f-4f93-9937-0e1e04531676" VERSION="1.0" MOUNT="/overlay" TYPE="ext4"
- 备份overlay
mkdir /mnt/sda1
mount /dev/sda1 /mnt/sda1
tar -C /overlay -cvf - . | tar -C /mnt/sda1 -xf -
sync
- 修改fstab
可以通过命令block detect来生成模板。
root@WRT1900ACS:~# cat /etc/config/fstab
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '5'
option check_fs '0'
config 'mount'
option target '/overlay'
option uuid 'c6115da9-3e8f-4f93-9937-0e1e04531676'
option enabled '1'
重启确认
root@WRT1900ACS:~# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 3.3M 3.3M 0 100% /rom
tmpfs 248.0M 4.6M 243.4M 2% /tmp
/dev/sda4 113.3G 41.8G 65.6G 39% /overlay
overlayfs:/overlay 113.3G 41.8G 65.6G 39% /
tmpfs 512.0K 0 512.0K 0% /dev
可见,overlay已经扩展。128G的U盘目前足够使用一段时间。
samba
- 安装
opkg update
opkg install luci-app-samba4
- 配置
通过openwrt UI配置即可。两种方式,二选其一。

重点是共享目录配置足够权限
drwxrwxrwx 6 root root 4.0K May 7 14:58 share
考虑到安全,修改/etc/passwd
root@WRT1900ACS:/etc# cat passwd | grep ethan
ethan:*:1000:65534:ethan:/var:/bin/false
设置密码
smbpasswd -a ethan
aria2
- 安装
opkg update
opkg install luci-app-aria2
配置MX4200 V1时,发现aria2启动不成功,提示。
Exception caught
Exception: [Platform.cc:125] errorCode=1 OSSL_PROVIDER_load 'legacy' failed.
解决方法
- 安装依赖
opkg update
opkg install openssl-util libopenssl libopenssl-legacy
- 修改
/etc/init.d/aria2
procd_add_jail "$NAME.$section" log
procd_add_jail_mount "/usr/lib"
procd_add_jail_mount "$ca_certificate" "$certificate" "$rpc_certificate" "$rpc_private_key"
procd_add_jail_mount_rw "$dir" "$config_dir" "$log"
procd_close_instance
- 配置
openwrt aria2的配置方式跟linux版本有点差异,举例一下。
# You can use most aria2 command-line options, replace '-' with '_'.
# eg. 'rpc-secret' ==> 'rpc_secret'
#
# We do not support all options at this time. But you can add any option
# with 'list extra_settings'.
#
# You can also add new config sections to define multi instance.
#
config aria2 'main'
option enabled '1'
option user 'aria2'
option save_session '/overlay/share/Downloads'
option dir '/overlay/share/Downloads'
option config_dir '/var/etc/aria2'
option bt_enable_lpd 'true'
option enable_dht 'true'
option enable_rpc 'true'
option follow_torrent 'true'
option bt_save_metadata 'true'
option rpc_listen_all 'true'
option rpc_secret 'JustDoIt'
option file_allocation 'none'
option save_session_interval '30'
option seed_time '0'
option max_concurrent_downloads '256'
option max_connection_per_server '16'
option max_overall_upload_limit '102400'
option max_upload_limit '102400'
option max_concurrent_downloads '256'
# Add addition Headers here.
# eg. list header 'Content-Encoding: gzip'
list header ''
# Add BT trackers here.
# eg. list bt_tracker 'http://tracker.example.com/announce'
list bt_tracker 'http://1337.abcvg.info:80/announce'
list bt_tracker 'http://bt.okmp3.ru:2710/announce'
# Add extra settings here.
# eg. list extra_settings 'option=value'
list extra_settings ''
更多设置,请参考笔者其他文章。
E8450救砖
建议用Linux系统,然后先配置好minicom。
sudo mtk_uartboot -a -p mt7622-ram-1ddr-bl2.bin -f openwrt-23.05.4-mediatek-mt7622-linksys_e8450-ubi-bl31-uboot.fip && sudo minicom
可以重新加载本地BL2,然后执行。加载完成之后,可以上下键进入uboot模式,然后通过TFTP加载itb固件救砖。
当然,上述也可以通过windows命令实现。特别地,笔者路由器BL2彻底启动失败,只能通过这办法启动了。十分无奈。
mtk_uartboot -a -s COM22 -p mt7622-ram-1ddr-bl2.bin -f openwrt-23.05.4-mediatek-mt7622-linksys_e8450-ubi-bl31-uboot.fip && putty.exe -serial COM22 -sercfg 115200,8,n,1,N
以下命令可以在当前目录设置TFTP服务器。先用网线从路由器的WAN口连接到电脑的网口。enp5s0就是ifconfig看到的端口名字。
sudo ip addr add 192.168.1.254/24 dev enp5s0
sudo dnsmasq --no-daemon --port 0 --enable-tftp --tftp-root="$(pwd)" -i enp5s0
然后在uboot界面下选择TFTP加载固件启动即可。
不会设置TFTP,也可以用串口加载
loadx 0x4007ff28
然后通过Ctrl + A在按Shift + Z进入minicom选择Send file,选择xmodem发送openwrt-23.05.4-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery.itb固件即可。
最后通过
bootm 0x4007ff28
启动路由器。正常启动之后,都属于普通操作,不再赘述。
桥接
家电换新,家里无线设备剧增,增加了一个主路由器。为方便管理,之前的路由做了桥接。记录一下,设置桥接的方法。


步骤:
- 正常登录路由器
- 接口Lan选择静态地址
- 地址选择主路由器同一个网段,例如:主路由器的地址是192.168.10.1,此副路由器则设置成192.168.10.2
- 网关选择主路由器的地址192.168.10.1(不设置此步,路由器自身无法上网)
- 禁用HDCP
- 网线连接方式改为副路由器Lan口连接主路由器Lan口(普通方式是副路由器Wan口连接主路由器Lan口)。
- 保存和执行设置(此时路由器会给两种选择,a. 设置并自动恢复,b. 直接设置)。建议先用a试试,确认好再重新来选择b.
此时,副路由器的登录地址变成192.168.10.2。手机连接此路由器时,IP地址会是192.168.10.XXX,例如笔者的192.168.10.118。
特别注意:作为桥接使用时,如果主路由器不工作,那么从路由器也不工作,并且webui也无法使用。此时应使用firstboot命令恢复出厂设置。
5G WiFi修复
问题描述
- 红框部分消失

- dmesg错误LOG
[ 15.314816] mt7915e 0000:01:00.0: WM Firmware Version: ____000000, Build Time: 20220929104145
[ 15.369967] mt7915e 0000:01:00.0: WA Firmware Version: DEV_000000, Build Time: 20220929104205
[ 15.485729] mt7915e 0000:01:00.0: eeprom load fail, use default bin
[ 15.492347] mt7915e 0000:01:00.0: Direct firmware load for mediatek/mt7915_eeprom.bin failed with error -2
[ 15.502166] mt7915e 0000:01:00.0: Falling back to sysfs fallback for: mediatek/mt7915_eeprom.bin [ 16.711873] mt7915e: probe of 0000:01:00.0 failed with error -12
问题修复
opkg update
opkg remove kmod-mt7915-firmware
opkg install kmod-mt7915-firmware
wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/mediatek/mt7915_eeprom.bin
cp mt7915_eeprom.bin /lib/firmware/mediatek/
重启,然后webui重新配置WiFi即可。
GIT环境搭建
出于代码备份的目的,笔者特别购买了一个8T硬盘。但openwrt默认安装的都是精简版软件。git使用并不正常,需要安装全功能软件和库。
opkg update
opkg install python3
opkg install git-http ca-bundle
opkg install vim-full
opkg install openssh-client
opkg install libopenssl openssh-keygen
配置笔记
root@OpenWrt:~# cat ~/.vimrc
set tabstop=4
root@OpenWrt:~# ssh-keygen
root@OpenWrt:~# cat .ssh/id_ed25519.pub
ssh-ed25519 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX root@OpenWrt
20260630
由于内存比较少,克隆的时候容易死机。按AI配置一下,待验证。
git config --global color.ui never
git config --global pack.threads 1
git config --global pack.windowMemory 32m
git config --global pack.packSizeLimit 64m
git config --global pack.deltaCacheSize 16m
git config --global gc.auto 0
git config --global log.memoryCache 0
git config --global core.bigFileThreshold 1m
其他
还可以安装一些不足为外人道的小软件。例如nodejs,通过opkg install node安装。
6559

被折叠的 条评论
为什么被折叠?



