创建仓库,生成 Packages.gz
git clone git://git.yoctoproject.org/opkg-utils
cd opkg-utils
./opkg-make-index /home/xxx/repo/packages/ > /homexxx/repo/packages/Packages
cd /home/xxx/repo/packages
gzip Packages
SSH 连接路由器后执行命令
查看 OPKG 源配置:
cat /etc/opkg.conf
编辑源:
vim /etc/opkg.conf
更新包:
opkg update
查看已安装包:
opkg list-installed
查询目标包:
opkg list | grep luci-theme-nonnicolor
安装目标包:
opkg install luci-theme-nonnicolor
删除目标包:
opkg remove
也可使用我的源地址
x86:
src/gz openwrt_core https://nonnix.cn/repo/all/targets/x86/64/packages
src/gz openwrt_base https://nonnix.cn/repo/all/packages/x86_64/base
src/gz openwrt_luci https://nonnix.cn/repo/all/packages/x86_64/luci
src/gz openwrt_packages https://nonnix.cn/repo/all/packages/x86_64/packages
src/gz openwrt_routing https://nonnix.cn/repo/all/packages/x86_64/routing
src/gz openwrt_telephony https://nonnix.cn/repo/all/packages/x86_64/telephony
MT7621A:
src/gz openwrt_core https://nonnix.cn/repo/all/targets/ramips/mt7621/packages
src/gz openwrt_base https://nonnix.cn/repo/all/packages/mipsel_24kc/base
src/gz openwrt_luci https://nonnix.cn/repo/all/packages/mipsel_24kc/luci
src/gz openwrt_packages https://nonnix.cn/repo/all/packages/mipsel_24kc/packages
src/gz openwrt_routing https://nonnix.cn/repo/all/packages/mipsel_24kc/routing
src/gz openwrt_telephony https://nonnix.cn/repo/all/packages/mipsel_24kc/telephony
经常会有依赖错误问题,可以尝试把各种包都放到opkg软件源里,方便安装依赖
在 /etc/opkg.d 里的每个文件都加入一行指令:
find /etc/opkg.d/ -name '*.conf' | xargs sed -i '2isrc/gz openwrtio https://nonnix.com/repo/packages/x86_64/packages'
检查磁盘使用命令
df -h
查看大文件占用情况
du -t 100M /var
或
journalctl --disk-usage
清理 systemd 的 /var/log/journal 日志文件
journalctl --vacuum-size=10M
代码
<input type="text" oninput = "value=value.replace(/[^\d]/g,'')">
HTML 中实现:
<element oninput="myScript">
JavaScript 中实现:
object.oninput=function(){myScript};
说明
oninput 该事件在用户输入时 或
测试环境
CSS3 HTML5
实现方法
隐藏域对所有的文本框都起作用(多用于存数据):
<input type="hidden" value="">
对象不占任何空间隐藏:
<input type="text" value="" style="display:none">
隐藏对象仍有占有相应的空间大小:
<input type="text" value="" style="visibility:hidden">
自定义宽高:
<input type="text" value="" style"width:0;height:0;">
功能
AdGuard Home 的工作原理是在 DNS 的域名解析过程中拦截网页上的广告,目前支持 DNS over TLS 和 DNS over HTTPS。
我们在 OpenWrt 安装 AdGuard Home 插件,并简单设置,实现DNS防污染加快网站解析速度和广告拦截。
部署
1.软件商店安装:
搜索 AdGuard Home 进行安装。
2.下载插件安装:
AdGuard Home 下载地址
https://github.com/rufengsuixing/luci-app-adguardhome/releases
下载后,在 OpenWrt 文件传输页面上传"luci-app-adguardhome_xxx_all.ipk"插件进行安装。
配置
1.启动服务并更新内核:
在 OpenWRT 中点击 AdGuard Home,更新核心版本,等待核心更新完成,启用 AdguardHome 插件,点击日志,如果有运行记录,则表示AdGuardHome已正常运行。
2.配置密码:
在 更多选项 中点击 改变网页登录密码 添加,填写 改变网页登录密码,点击载入计算模块,然后再点击计算,设置 AdGuardHome 密码,点击按钮进入 AdGuardHome,或在地址栏中输入"http://IP:3000",进入后配置 AdGuardHome。账号密码为"root"和上一步设置的密码。
3.配置DNS:
进入 AdGuardHome 控制台后,点击 设置 进入"DNS设置",填写"上游 DNS 服务器",选择"并行请求",填写 Bootstrap DNS 服务器。
Bootstrap DNS 用于解析上游DNS,所以尽可能将 Bootstrap DNS 的第一条设置为当地运营商的DNS地址(支持IPV6),当地运营商的DNS地址,可将网线直接插在光猫上,通过CMD内使用"ipconfig /all"命令查询。
上游 DNS 服务器
114.114.114.114
114.114.115.115
223.5.5.5
223.6.6.6
119.29.29.29
180.76.76.76
101.226.4.6
123.125.81.6
101.226.4.6
101.226.4.6
https://dns.google/dns-query
https://doh.opendns.com/dns-query
https://1.1.1.1/dns-query
tls://dns.rubyfish.cn
tls://8.8.8.8
tls://8.8.4.4
tls://dns.google:853
Bootstrap DNS 服务器
当地电信DNS
当地移动DNS
当地联通DNS
119.29.29.29
223.5.5.5
180.76.76.76
8.8.8.8
8.8.4.4
208.67.222.222
点击"过滤器",选择"DNS封锁清单",添加阻止列表,选择适合自己的规则打钩,点击"检查更新"。
4.重定向上游DNS服务器:
在 OpenWrt 的 AdGuard Home 设置内,将重定向设置为 作为dnsmasq 的上游服务器,这样 AdGuardHome 就生效了。
注意事项
1.AdGuard Home 拦截效果由规则决定,选择合适的规则很重要,不要滥用规则,拦截效果可到 AdGuard Home 网页管理内查看。
2.网络环境中,多个DNS缓存可能造成网络访问异常,需要进入 AdGuard Home 网页管理处,点击 设置,选择 DNS设置,将DNS缓存大小设置为 0 即可。