前言 小米AX9000折腾记录, 官方固件版本为AX9000 1.0.108.bin
不是全量文章,整合流程,挑出部分重点,防止重复踩坑。
正文 通过虚拟机开启AX9000的SSH 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 # 比较重点的一个脚本 下面会用到 # /usr/lib/lua/luci/controller/admin/xqsystem.lua module ("luci.controller.admin.xqsystem" , package .seeall )function index () local page = node("api" ) page.target = firstchild() page.title = ("" ) page.order = 100 page.index = true page = node("api" ,"xqsystem" ) page.target = firstchild() page.title = ("" ) page.order = 100 page.index = true entry({"api" , "xqsystem" , "token" }, call("getToken" ), ("" ), 103 , 0x08 ) end local LuciHttp = require ("luci.http" )function getToken () local result = {} result["code" ] = 0 result["token" ] = "; nvram set ssh_en=1; nvram set uart_en=1; nvram set boot_wait=on; nvram commit; uci set wireless.@wifi-iface[0].key=\`mkxqimage -I\`; uci commit; sed -i 's/channel=.*/channel=\"debug\"/g' /etc/init.d/dropbear; /etc/init.d/dropbear start;" LuciHttp.write_json(result) end
重点是将OPENWRT路由器ip设置为169.254.31.1, 然后关闭DHCP。不然会出现各式报错。
AX9000和AX6000获取SSH的方法
重点是热点改成OpenWrt,密码12345678。以及热点网络适配器去掉ipv4的勾选项目。
0成本用Win10热点和openwrt的vm虚拟机开启AX6000和AX9000的ssh
重点是 wireless-ax9000.sh
,也可以手动写入最上面的代码块。
小米 AX9000 解锁 SSH 安装 ShellClash 教程
1 2 3 4 5 6 # 注意URL的参数,按实际情况替换。 # 05f18fc74244d28dea39a5b537765e92要替换成自己的 # 如果ssid不是OpenWrt 或者密码不为12345678 也需要替换 测试: http://192.168.1.1/cgi-bin/luci/api/xqsystem/token 测试: http://192.168.31.1/cgi-bin/luci/;stok=05f18fc74244d28dea39a5b537765e92/api/xqsystem/token http://192.168.31.1/cgi-bin/luci/;stok=05f18fc74244d28dea39a5b537765e92/api/xqsystem/extendwifi_connect_inited_router?ssid=OpenWrt&password=12345678&encryption=WPA2PSKenctype=CCMP&channel=11&band=2g&admin_username=root&admin_password=admin&admin_nonce=xxx
虚拟机搭建OpenWrt
将OPENWRT路由器ip设置为169.254.31.1
关闭OpenWrt的DHCP
使用wireless-ax9000.sh 或者 手动写入代码块 xqsystem.lua
成功后再次打开路由器后台查看 5G 频段 Wi-Fi 密码,这个 Wi-Fi 密码就是我们默认的 ssh 密码,
以上最好是都在2.4G频段进行。几个教程需要搭配使用,看重点,可以多阅读几遍。
永久获取SSH权限(固化SSH)
请注意有变砖风险,可以跳过这部分。
项目地址 paldier/ax3600_tool
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 # 提前备份(最好下载保存) $ nanddump -f /tmp/bdata_mtd9.img /dev/mtd9 # 将项目文件传到/tmp目录 给权限 $ chmod +x /tmp/mitool*# 解锁分区锁 $ /tmp/mitool.sh unlock # 自动重启并重新锁定分区锁 $ /tmp/mitool.sh hack # 显示密码 $ /tmp/mitool.sh password # 显示SN $ /tmp/mitool.sh sn # 如升级后ssh被禁用可以用telnet登录 $ sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear $ /etc/init.d/dropbear start # 至此基本可以保证机器长期拥有root权限
参考教程:小米ax3600/ax6000/ax9000/ax5/ax6获取root权限 ax9000永久获取ssh权限
刷QSDK&&OpenWrt的方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 # 1.这一部是设置env 保证小米固件在分区rootfs里,为下一部把qsdk刷到rootfs_1做准备 $ nvram set flag_last_success=0 $ nvram set flag_boot_rootfs=0 $ nvram set flag_try_sys1_failed=0 $ nvram set flag_try_sys2_failed=0 $ nvram commit $ reboot # 2.小米原版固件下ssh命令写入qsdk固件,把固件上传到/tmp目录 $ . /lib/upgrade/platform.sh $ switch_layout linux $ ubiformat /dev/mtd22 -y -f /tmp/openwrt-ipq807x-generic-xiaomi_ax9000-squashfs-nand-factory.bin $ nvram set flag_last_success=1 $ nvram set flag_boot_rootfs=1 $ nvram commit $ reboot # 这里刷固件就结束了,以下是切换分区。 # 3.QSDK固件下恢复到原版固件 $ fw_setenv flag_last_success 0 $ fw_setenv flag_boot_rootfs 0 $ reboot # 4.原版固件恢复到QSDK固件 $ nvram set flag_last_success=1 $ nvram set flag_boot_rootfs=1 $ nvram commit $ reboot
这里刷完是两个分区,可以官方固件和openwrt来回切换。 注意如果要重新刷,需要先执行3到原版固件,再执行2写入固件。
参考教程:
小米ax9000刷qsdk,openwrt的方法
小米红米路由器AX6刷第三方openwrt固件
第三方固件地址
【Openwrt开发版每周五更新】新版AX6/AX3600/AX9000(QSDK),NSS,组网,jd,多播,小猫咪
开发版 jingleijack/Openwrt_Beta
小米 AX9000 OpenWrt R21.7.1.10 最新源码、V兔出国海淘海淘、clash、打倒美帝、JD.
AdGuardHome
AdGuardHome去广告和DNS正确姿势
AdGuard Home设置指南
openwrt插件 AdGuardHome学习与分享
AdGuard Home正确使用姿势/去广告/防污/加速解析
1 2 1. AdGuardHome管理面板账号密码 root-admin 或者root-password 2.
挂载U盘到/overlay AX9000默认的分区大小不足以正常使用软件,所以需要挂载U盘扩容空间 请注意要提前把U盘格式化成ext4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 # 检测U盘是否插入 $ cat /proc/scsi/usb-storage/0# 写入以下代码块 $ vim /etc/init.d/miwifi_overlay # 这里使用AX6的一段代码来挂载overlay # !/bin/sh /etc/rc.common START=00 . /lib/functions/preinit.sh start() { [ -e /data/overlay ] || mkdir /data/overlay [ -e /data/overlay/upper ] || mkdir /data/overlay/upper [ -e /data/overlay/work ] || mkdir /data/overlay/work mount --bind /data/overlay /overlay fopivot /overlay/upper /overlay/work /rom 1 #Fixup miwifi misc, and DO NOT use /overlay/upper/etc instead, /etc/uci-defaults/* may be already removed /bin/mount -o noatime,move /rom/data /data 2>&- /bin/mount -o noatime,move /rom/etc /etc 2>&- /bin/mount -o noatime,move /rom/ini /ini 2>&- /bin/mount -o noatime,move /rom/userdisk /userdisk 2>&- return 0 } # 给权限 $ chmod 755 /etc/init.d/miwifi_overlay$ /etc/init.d/miwifi_overlay enable $ sync $ reboot
重启后浏览器登录luci界面,点击系统->挂载点。在挂载点的下方点击修改按钮。
挂载点选择作为外部overlay使用(/overlay)(不要选择其他选项),点击保存,再点击保存&应用。
在命令行输入reboot执行路由器重启。重启后路由器可能会恢复出厂设置。 重启后打开系统->软件包,可以看见空闲空间已经变大。
挂载完成,这里参考了OpenWrt挂载U盘 OPENWRT | ESXI 下 OpenWrt扩容Overlay,增加安装插件空间
解决OpenWRT安装第三方包错误 1 2 3 4 root@OpenWrt:~# opkg print-architecture arch all 1 arch noarch 1 arch aarch64_cortex-a53_neon-vfpv4 10
把返回的回显复制到opkg的设置里 倒数第二行加一行,修改后如下
1 2 3 4 5 root@OpenWrt:~# opkg print-architecture arch all 1 arch noarch 1 arch aarch64_cortex-a53 8 arch aarch64_cortex-a53_neon-vfpv4 10
但是因为ipq807x
并没有适配,所以一些包最好是手动下载安装,手动安装依赖。
换国内源 1 2 3 4 5 6 # 注意 19.07-SNAPSHOT https://mirrors.tuna.tsinghua.edu.cn/openwrt/releases/19.07-SNAPSHOT/packages/ # 注意 ipq807x https://mirrors.tuna.tsinghua.edu.cn/openwrt/releases/19.07-SNAPSHOT/targets/ipq807x/ # 注意 aarch64_cortex-a53 https://mirrors.tuna.tsinghua.edu.cn/openwrt/releases/19.07-SNAPSHOT/packages/aarch64_cortex-a53/
额外的插件
解锁网易云灰色歌曲
UnblockNeteaseMusic
luci-app-unblockmusic(二次修改)
UnblockNeteaseMusic(在用)
sirpdboy-package
安装额外软件
1 2 3 4 5 6 7 # 软件包界面手动安装或者命令 # Python $ opkg install python3 $ opkg install python3-pip # gcc $ opkg install gcc automake autoconf libtool make
别名 1 2 # 或者写入/etc/profile $ alias pq3='pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple $1'
额外命令 1 2 3 4 5 6 7 8 9 # 安装用户相关 $ opkg install shadow-groupadd shadow-groupdel shadow-useradd shadow-userdel shadow-usermod # 添加普通用户并且设置密码 $ echo "testuser:*:1000:65534:testuser:/tmp:/bin/ash" >> /etc/passwd$ passwd testuser # 删除用户 $ userdel -r testuser
安装libcap* 安装libcap libcap-bin
, 因为新版本变成了libcap-ng libcap-ng-bin
1 2 3 4 5 6 7 8 9 10 # 手动 https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/libcap_2.51-1_aarch64_cortex-a53.ipk https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/libcap-bin_2.51-1_aarch64_cortex-a53.ipk # 修改下快照源,替换自己架构 $ src/gz snapshots https://downloads.openwrt.org/snapshots/packages/{architecture}/base # $ opkg update $ opkg install libcap libcap-bin --force-depends
AX9000(开发版)1.0.140 挂载/overlay 给U盘分区,ext4格式。分两个或者多个以上,第一个分区要大,给Docker用的 ,第二个分区给/overlay。
注意要关闭docker
1 2 3 4 5 6 7 # 查看挂载的U盘分区 $ df -h/dev/sda1 55.0G 4.7G 47.5G 9% /extdisks/sda1 /dev/sda1 55.0G 4.7G 47.5G 9% /mnt/docker_disk /dev/sda2 2.5G 43.6M 2.3G 2% /extdisks/sda2 /dev/sda1 55.0G 4.7G 47.5G 9% /mnt/docker_disk/mi_docker/lib/docker
把分区好挂载到mount /sda3
1 2 3 4 # 如果报错不存在文件夹 可能需要手动创建/mnt/sda2 $ mount /dev/sda2 /mnt/sda2 # 如果上面报错 使用这个 $ mount -o rw /dev/sda2 /mnt/sda2
挂载检测是否完成
迁移Overly
1 2 3 $ cd /overlay$ cp -r /overlay/* /mnt/sda2$ ls /mnt/sda2
设置开机自动挂载
1 2 3 4 5 6 # /etc/rc.local echo 1 > /sys/fs/cgroup/memory/memory.use_hierarchy # 添加以下这句挂载命令 mount /dev/sda2 /overlay exit 0
AX9000(开发版)1.0.140 Docker创建macvlan(这个版本暂时不支持) 1 2 3 4 5 6 7 8 # 开启网卡混杂模式 $ ip link set br-lan promisc on $ docker network create -d macvlan \ --subnet=192.168.31.0/24 --gateway=192.168.31.1 \ -o parent=br-lan \ -o macvlan_mode=bridge \ macnet
AX9000(开发版)1.0.140 Docker安装使用AdGuard Home AX9000 Docker介绍
以下大部分bash命令需要在ssh里操作
Docker国内镜像源
拉取镜像 1 2 3 4 5 adguard/adguardhome $ docker pull adguard/adguardhome
部署镜像
Name, 随意
Image, adguard/adguardhome
Always pull the image, 可以关掉
Volumes, 设置挂载目录持久化(可选) e.g /root/workspace/adguard/workdir:/opt/adguardhome/work /root/workspace/adguard/confdir: /opt/adguardhome/conf
Publish all exposed network ports to random host ports, (随机暴露端口)打开
Manual network port publishing, 手动添加 5553:53 tcp|5553:53 udp|3000:3000 tcp
Network, bridge
Restart policy, Always
等待部署完成, 设置地址访问192.168.31.1:3000, 根据需求设置(可百度设置教程)。
汉化Portainer 1 2 3 4 5 6 7 $ cd /tmp $ curl -sL https://ghproxy.com/https://github.com/eysp/public/archive/public.tar.gz | tar xz $ rm -rf public $ mv public-public public $ docker stop portainer $ docker cp public portainer:/ $ docker start portainer
刷新页面即可
Dnsmasq转发到AdgHome 1 2 3 4 5 6 7 server=127.0.0.1 server=192.168.31.1 no-resolv dns-forward-max=100000
重启后即可使用AdgHome,注意这里使用的是转发,所以Adg里的客户端显示的都是本地地址。 不要尝试使用Adg的53端口来替换dnsmasq的53,会有大问题。 也不要尝试再DCHP里设置DNS,会有大问题。
备份AdGuardHome.yaml 仅供参考
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 bind_host: 0.0 .0 .0 bind_port: 3000 beta_bind_port: 0 users: - name: root password: $2y$10$FfeQavihMUiXCuJhHuQwy.6EOXDvkXb/S50qI5fXizqarNT/ShhQm auth_attempts: 5 block_auth_min: 15 http_proxy: "" language: "" rlimit_nofile: 0 debug_pprof: false web_session_ttl: 720 dns: bind_hosts: - 0.0 .0 .0 port: 5553 statistics_interval: 7 querylog_enabled: true querylog_file_enabled: true querylog_interval: 1 querylog_size_memory: 1000 anonymize_client_ip: false protection_enabled: true blocking_mode: nxdomain blocking_ipv4: "" blocking_ipv6: "" blocked_response_ttl: 10 parental_block_host: family-block.dns.adguard.com safebrowsing_block_host: standard-block.dns.adguard.com ratelimit: 0 ratelimit_whitelist: [ ] refuse_any: false upstream_dns: - 221.7 .92 .98 - 221.5 .203 .98 - 114.114 .114 .114 - 223.5 .5 .5 - 114.114 .115 .115 - 119.29 .29 .29 - 8.8 .8 .8 - 1.1 .1 .1 - 2408 :8663::2 - 2408 :8662::2 - https://dns.alidns.com/dns-query - https://doh.pub/dns-query - https://doh.360.cn/dns-query - https://doh.pub/dns-query - https://dns.google/dns-query - https://dns.adguard.com/dns-query - https://dns.quad9.net/dns-query upstream_dns_file: "" bootstrap_dns: - 221.7 .92 .98 - 221.5 .203 .98 - 2408 :8663::2 - 2408 :8662::2 - 114.114 .114 .114 - 223.5 .5 .5 - 119.29 .29 .29 - 1.1 .1 .1 - 8.8 .8 .8 all_servers: true fastest_addr: false allowed_clients: [ ] disallowed_clients: [ ] blocked_hosts: - version.bind - id.server - hostname.bind cache_size: 4194304 cache_ttl_min: 0 cache_ttl_max: 0 bogus_nxdomain: [ ] aaaa_disabled: false enable_dnssec: false edns_client_subnet: false max_goroutines: 300 ipset: [ ] filtering_enabled: true filters_update_interval: 24 parental_enabled: false safesearch_enabled: false safebrowsing_enabled: false safebrowsing_cache_size: 1048576 safesearch_cache_size: 1048576 parental_cache_size: 1048576 cache_time: 30 rewrites: [ ] blocked_services: [ ] local_domain_name: lan resolve_clients: true local_ptr_upstreams: [ ] tls: enabled: false server_name: "" force_https: false port_https: 443 port_dns_over_tls: 853 port_dns_over_quic: 784 port_dnscrypt: 0 dnscrypt_config_file: "" allow_unencrypted_doh: false strict_sni_check: false certificate_chain: "" private_key: "" certificate_path: "" private_key_path: "" filters: - enabled: true url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt name: AdGuard Simplified Domain Names filter id: 1 - enabled: false url: https://adaway.org/hosts.txt name: AdAway id: 2 - enabled: false url: https://hosts-file.net/ad_servers.txt name: hpHosts - Ad and Tracking servers only id: 3 - enabled: false url: https://www.malwaredomainlist.com/hostslist/hosts.txt name: MalwareDomainList.com Hosts List id: 4 - enabled: false url: https://raw.githubusercontent.com/vokins/yhosts/master/data/tvbox.txt name: tvbox id: 1575018007 - enabled: false url: https://cdn.jsdelivr.net/gh/neoFelhz/neohosts@gh-pages/full/hosts.txt name: neoHosts full id: 1575618240 - enabled: false url: https://hosts.nfz.moe/basic/hosts name: neoHosts basic id: 1575618241 - enabled: false url: http://sbc.io/hosts/hosts name: StevenBlack host basic id: 1575618242 - enabled: false url: http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts name: StevenBlack host+fakenews + gambling + porn + social id: 1575618243 - enabled: true url: https://anti-ad.net/easylist.txt name: anti-AD 命中率高、兼容性强 id: 1632419612 - enabled: true url: https://gitee.com/halflife/list/raw/master/ad.txt name: halflife合并乘风 id: 1632419613 - enabled: true url: https://banbendalao.coding.net/p/adgk/d/ADgk/git/raw/master/ADgk.txt name: adgk手机去广告规则 id: 1632419619 - enabled: true url: https://cdn.jsdelivr.net/gh/zsakvo/AdGuard-Custom-Rule@master/rule/zhihu.txt name: Zhihu App 广告屏蔽 id: 1632824652 - enabled: true url: https://www.i-dont-care-about-cookies.eu/abp name: I don't care about cookies id: 1636012831 - enabled: true url: https://cdn.jsdelivr.net/gh/Goooler/1024_hosts@master/hosts name: 1024_hosts id: 1636012832 - enabled: true url: https://cdn.jsdelivr.net/gh/jdlingyu/ad-wars@master/hosts name: 大圣净化 id: 1636012833 - enabled: true url: https://cdn.jsdelivr.net/gh/cjx82630/cjxlist@master/cjx-annoyance.txt name: CJX's Annoyance List id: 1636012834 - enabled: true url: https://cdn.jsdelivr.net/gh/Moexin/AdGuardHome/AdGuardHome.list name: AdGuardHome.list id: 1636012836 - enabled: true url: https://cdn.jsdelivr.net/gh/Moexin/AdGuardHome/Neo-Dev-Host.list name: Neo-Dev-Host.list id: 1636012837 whitelist_filters: [ ]user_rules: - '||active.tc.skysrt.com^' - '||ad.3.cn^' - '||admaster.com.cn^' - '||alog.umeng.com^' - '||amdcopen.m.taobao.com^' - '||api.app.skysrt.com^' - '||api.device.skysrt.com^' - '||api.hoisin.hw.coocaatv.com^' - '||api.home.skysrt.com^' - '||api.skyworthiot.com^' - '||api.upgrade.skysrt.com^' - '||api-app.coocaa.ottcn.com^' - '||api-home.coocaa.ottcn.com^' - '||api-home.skysrt.com^' - '||api-upgrade.coocaa.ottcn.com^' - '||app.snm0516.aisee.tv^' - '||btrace.play.t002.ottcn.com^' - '||business.video.tc.skysrt.com^' - '||cl-dl.cc0808.com^' - '||clog.skysrt.com^' - '||conf-darwin.xycdn.com^' - '||connect.play.aiseet.atianqi.com^' - '||data-dl.skysrt.com^' - '||data-hoisin.coocaa.com^' - '||dl.skysrt.com^' - '||dp3.play.t002.ottcn.com^' - '||gs.getui.com^' - '||hoisin.coocaa.com^' - '||hoisin.coocaatv.com^' - '||irs01.com^' - '||kaola.com^' - '||livep.l.t002.ottcn.com^' - '||log.skysrt.com^' - '||mdp-at.geely.com^' - '||member.coocaa.com^' - '||miaozhen.com^' - '||mtrace.play.t002.ottcn.com^' - '||ocsp.int-x3.letsencrypt.org^' - '||p.tencentmind.com^' - '||play.t002.ottcn.com^' - '||push.tc.skysrt.com^' - '||push.tvos.skysrt.com^' - '||puui.qpic.cn^' - '||qr.coocaa.com^' - '||res.hoisin.coocaatv.com^' - '||rpc-tc.skysrt.com^' - '||rpt-gdt.play.t002.ottcn.com^' - '||s.jpush.cn^' - '||sdk1xyajs.data.p2cdn.com^' - '||sis.jpush.io^' - '||sky.tvos.skysrt.com^' - '||skyworthdigital.com^' - '||skyworthiot.com^' - '||stats.jpush.cn^' - '||status.tvos.skysrt.com^' - '||status2.tvos.skysrt.com^' - '||sv.video.qq.com^' - '||taps.net^' - '||tq.skysrt.com^' - '||tracker.appadhoc.com^' - '||tvapp.hpplay.cn^' - '||tvos.skysrt.com^' - '||tx.ctrmi.cn^' - '||umengacs.m.taobao.com^' - '||uop.umeng.com^' - '||update01.skyworth-cloud.com.wswebpic.com^' - '||update01.skyworth-cloud.com^' - '||vqq.admaster.com.cn^' - '||webapp.skysrt.com^' - '||bak.bajintech.com^$important^' - '||iwd.skysrt.com^$important^' - '||ipv4only.arpa^$important^' - '||api.bajintech.com^$important^' - '||wifimodule.doubimeizhi.com^$important^' - '||msy59wz.mqtt.iot.gz.baidubce.com^$important^' - '||i.ytimg.com^$important^' - '# 百家号' - '||baijiahao.baidu.com^' - '@@||apisoft.df0535.com^' - "" dhcp: enabled: false interface_name: "" dhcpv4: gateway_ip: "" subnet_mask: "" range_start: "" range_end: "" lease_duration: 86400 icmp_timeout_msec: 1000 options: [ ] dhcpv6: range_start: "" lease_duration: 86400 ra_slaac_only: false ra_allow_slaac: false clients: [ ]log_compress: false log_localtime: false log_max_backups: 0 log_max_size: 100 log_max_age: 3 log_file: "" verbose: false schema_version: 10
OpenWrt关闭LED灯(暂未测试) 1 $ vim /etc/rc.d/S99turnoffled
1 2 3 4 5 6 7 # !/bin/ash for i in ` ls /sys/class/leds ` do cd /sys/class/leds cd $i echo 0 > brightness done
安装lsusb命令 1 2 $ opkg update $ opkg install usbutils
OpenWrt关闭OPKG检查签名
1 2 # 注释掉这一行 #option check_signature
注意事项
只有QSDK固件里面有CPU调速软件
QSDK网络好,OpenWrt插件多
信道3648,149161
…
相关项目 除了文章中引用的项目,还有以下可能会用到的关联:
AX9000和AX6000已经可以获取SSH了
使用虚拟机解锁红米ax6-ssh并刷入qsdk固件
OpenWrt support for Xiaomi AX9000
Xiaomi router AX9000
OpenWrt_Build openwrt-autobuild
小米路由器修复工具
END.