[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"getwebinfo":3,"userInfo":32,"news-item-30":35},{"dwo_Aentrance":4,"dwo_Uentrance":5,"dwo_WebTitle":6,"dwo_WebKeys":7,"dwo_WebDesc":8,"dwo_WebLogo":9,"dwo_WebIco":10,"dwo_WebIcp":11,"dwo_Copyright":12,"dwo_UploadImageSuffix":13,"dwo_UploadFileSuffix":14,"dwo_UploadImageSize":15,"dwo_UploadFileSize":16,"dwo_UploadStatus":17,"dwo_WebGx":18,"dwo_NotifyFeedBack":19,"dwo_NotifyList":19,"dwo_NotifyDeposit":19,"dwo_NotifyEmail":20,"dwo_WebBack":21,"dwo_Adkey":22,"dwo_AdOff":22,"dwo_Adcallkey":22,"c_apideftimage":23,"dwo_payprovider":24,"dwo_paymethod_switch":25,"dwo_payenabled":26,"dwo_redis_enabled":17,"dwo_redis_host":27,"dwo_redis_port":28,"dwo_redis_password":29,"dwo_redis_database":30,"dwo_redis_timeout":30,"EmailOff":17,"c_qrlist":31},"admin","default","小渡API | FAFE Pro - 公益免费API聚合平台","小渡API,FAFE Pro,小小数据API,公益API,免费API,API聚合平台,聚合数据,API开放平台,免费接口调用平台,高并发API,开发者工具,api.dwo.cc","小渡API（FAFE Pro）是公益性API聚合平台，免费提供稳定高并发的数据接口服务。性能Pro稳定Max，聚合多家优质API资源，助力超多企业及开发者共建生态","https:\u002F\u002Fcdn.heylie.cn\u002Ftb\u002Fxiaodu_x.png","https:\u002F\u002Fcdn.heylie.cn\u002Ftb\u002Fxd.ico","赣ICP备2023002241号-2","小渡API","jpg,jpeg,png,gif,ico,webp","apk,zip,rar,7z,ipa,jpg,jpeg,png,gif,mp4",53,50,"1","赣公网安备36012102000605号","2","2092115940@qq.com","https:\u002F\u002Foss4liview.moji.com\u002Fthd_file\u002F2025\u002F08\u002F18\u002Fce6874143a024cf3d1380394497fd311.png",null,"https:\u002F\u002Foss4liview.moji.com\u002Fthd_file\u002F2025\u002F12\u002F13\u002F9cc11bcd504ac19696f8ed3c86302979.png","alipay","{\"alipay\":true,\"wxpay\":false,\"qqpay\":false}",0,"127.0.0.1","6379","","0",[],{"code":33,"msg":34,"data":29,"total":26},401,"权限不足或TOKEN失效，请重新登录",{"classListRes":-1,"articleRes":36},{"code":37,"msg":22,"data":38,"total":22},200,{"id":39,"dwo_html":40,"dwo_name":41,"dwo_image":42,"dwo_time":43,"dwo_brief":44,"dwo_keywords":45,"dwo_cid":46,"dwo_show":17,"dwo_uid":47,"dwo_status":48,"dwo_comment_count":26,"dwo_status_reason":22,"dwo_status_time":22,"status_text":49},30,"\u003Cblockquote>项目地址：https:\u002F\u002Fgithub.com\u002Fimmortalwrt\u002Fimmortalwrt\u003C\u002Fblockquote>\u003Ch2>一、ImmortalWrt 在线构建（快速生成固件）\u003C\u002Fh2>\u003Cp>官方提供的网页在线构建工具为 ImageBuilder，其核心原理是借助官方服务器资源，使用预编译好的 SDK，通过选择所需软件包快速生成固件，无需本地编译源码。\u003C\u002Fp>\u003Ch3>1.1 在线构建特点\u003C\u002Fh3>\u003Cp>优点：构建速度快，操作简单，无需配置本地环境；\u003C\u002Fp>\u003Cp>缺点：自定义程度有限，但可满足日常常用配置（如预安装插件、配置网口、防火墙等）。\u003C\u002Fp>\u003Ch3>1.2 官方在线编译地址\u003C\u002Fh3>\u003Cpre>\u003Ccode >https:\u002F\u002Ffirmware-selector.immortalwrt.org\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3>1.3 必备软件包（推荐添加）\u003C\u002Fh3>\u003Cpre>\u003Ccode class=\"language-markdown\">curl luci-theme-argon luci-i18n-homeproxy-zh-cn luci-i18n-ttyd-zh-cn luci-i18n-diskman-zh-cn luci-i18n-filemanager-zh-cn luci-i18n-package-manager-zh-cn luci-i18n-firewall-zh-cn\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>说明：安装插件包时，系统会自动下载该插件所需的依赖软件，因此只需添加对应插件的汉化包即可。\u003C\u002Fp>\u003Cpre>\u003Ccode >ImmortalWrt 软件包查询（需替换实际版本和设备架构）：https:\u002F\u002Fdownloads.immortalwrt.org\u002Freleases\u002F24.10.4\u002Fpackages\u002Fx86_64\u002Fluci\u002Findex.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3>1.4 初始化构建脚本（自定义配置）\u003C\u002Fh3>\u003Cp>脚本说明：需修改的配置项请去掉对应注释（删除开头的 #），未修改的项保持默认即可。\u003C\u002Fp>\u003Cpre>\u003Ccode >#!\u002Fbin\u002Fsh\n\nexec &gt;\u002Ftmp\u002Fsetup.log 2&gt;&1\n\n\n###########################################################\n#                  自 定 义 配 置 区 域\n###########################################################\n\n### 系统后台密码（为空则不修改）\nroot_password=\"admin\"\n\n### LAN 的 IPv4 地址（也是后台地址，例如 192.168.2.1）\nlan_ip_address=\"192.168.2.1\"\n\n### LAN 的子网掩码（例如 255.255.255.0）\n# lan_netmask=\"255.255.255.0\"\n\n### LAN 的 IPv4 网关（可为空）\n# lan_gateway=\"192.168.1.1\"\n\n### LAN 的 DNS（多个 DNS 可空格分隔，如 \"8.8.8.8 1.1.1.1\"）\n# lan_dns=\"8.8.8.8 223.5.5.5\"\n\n### DHCP 是否开启（1=开启，0=关闭）\n# lan_dhcp_enable=\"1\"\n\n### DHCP 起始地址\n# lan_dhcp_start=\"100\"\n\n### DHCP 地址池数量\n# lan_dhcp_limit=\"150\"\n\n### DHCP 租约时间\n# lan_dhcp_leasetime=\"12h\"\n\n### WiFi 名称 SSID（为空则不修改）\n# wlan_name=\"ImmortalWrt\"\n\n### WiFi 密码（≥ 8 位才生效）\n# wlan_password=\"12345678\"\n\n### PPPoE 宽带账号（为空则跳过）\n# pppoe_username=\"\"\n\n### PPPoE 宽带密码\n# pppoe_password=\"\"\n\n###########################################################\n\n\n# ------------ root 密码 ------------\nif [ -n \"$root_password\" ]; then\n  (echo \"$root_password\"; sleep 1; echo \"$root_password\") | passwd &gt;\u002Fdev\u002Fnull\nfi\n\n\n# ------------ LAN 基础配置 ------------\nif [ -n \"$lan_ip_address\" ]; then\n  uci set network.lan.ipaddr=\"$lan_ip_address\"\nfi\n\nif [ -n \"$lan_netmask\" ]; then\n  uci set network.lan.netmask=\"$lan_netmask\"\nfi\n\nif [ -n \"$lan_gateway\" ]; then\n  uci set network.lan.gateway=\"$lan_gateway\"\nfi\n\n# DNS\nif [ -n \"$lan_dns\" ]; then\n  uci delete network.lan.dns 2&gt;\u002Fdev\u002Fnull\n  for d in $lan_dns; do\n    uci add_list network.lan.dns=\"$d\"\n  done\nfi\nuci commit network\n\n\n# ------------ DHCP 设置 ------------\nif [ -n \"$lan_dhcp_enable\" ]; then\n  uci set dhcp.lan.ignore=$([ \"$lan_dhcp_enable\" = \"1\" ] && echo 0 || echo 1)\nfi\n[ -n \"$lan_dhcp_start\" ] && uci set dhcp.lan.start=\"$lan_dhcp_start\"\n[ -n \"$lan_dhcp_limit\" ] && uci set dhcp.lan.limit=\"$lan_dhcp_limit\"\n[ -n \"$lan_dhcp_leasetime\" ] && uci set dhcp.lan.leasetime=\"$lan_dhcp_leasetime\"\nuci commit dhcp\n\n\n# ------------ WIFI 配置 ------------\nif [ -n \"$wlan_name\" ] && [ -n \"$wlan_password\" ] && [ ${#wlan_password} -ge 8 ]; then\n  uci set wireless.@wifi-device[0].disabled='0'\n  uci set wireless.@wifi-iface[0].disabled='0'\n  uci set wireless.@wifi-iface[0].encryption='psk2'\n  uci set wireless.@wifi-iface[0].ssid=\"$wlan_name\"\n  uci set wireless.@wifi-iface[0].key=\"$wlan_password\"\n  uci commit wireless\nfi\n\n\n# ------------ PPPoE 宽带拨号 ------------\nif [ -n \"$pppoe_username\" ] && [ -n \"$pppoe_password\" ]; then\n  uci set network.wan.proto=pppoe\n  uci set network.wan.username=\"$pppoe_username\"\n  uci set network.wan.password=\"$pppoe_password\"\n  uci commit network\nfi\n\necho \"All done!\"\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>构建完成后，下载对应的固件包，刷入目标设备即可使用。\u003C\u002Fp>\u003Ch2>二、ImmortalWrt 基于源码编译（高度自定义）\u003C\u002Fh2>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Ch3>2.1 编译环境要求\u003C\u002Fh3>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cp>- 系统：干净的 Debian 12 或 Ubuntu 22.04（建议全新安装，避免依赖冲突）；\u003C\u002Fp>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cp>- 网络：国外网络通畅（需下载海外源码和依赖）；\u003C\u002Fp>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cp>- 存储：50G 以上空闲存储空间（编译过程会生成大量中间文件）。\u003C\u002Fp>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Ch3>2.2 编译步骤（全程终端操作）\u003C\u002Fh3>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Ch4>步骤1：安装编译依赖\u003C\u002Fh4>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cpre>\u003Ccode >sudo apt update -y\nsudo apt full-upgrade -y\nsudo apt install -y \\\n  ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \\\n  bzip2 ccache clang cmake cpio curl device-tree-compiler ecj fastjar flex gawk gettext \\\n  gcc-multilib g++-multilib git gperf haveged help2man intltool libc6-dev-i386 libelf-dev \\\n  libglib2.0-dev libgmp-dev libltdl-dev libmpc-dev libmpfr-dev libncurses-dev libpython3-dev \\\n  libreadline-dev libssl-dev libtool libyaml-dev lld llvm lrzsz genisoimage \\\n  ninja-build p7zip-full patch pkgconf python3 python3-pip python3-ply python3-docutils \\\n  python3-pyelftools qemu-utils re2c rsync scons squashfs-tools subversion swig texinfo \\\n  uglifyjs unzip wget nano xmlto xxd zlib1g-dev upx zstd\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤2：下载对应版本源码（以 v24.10.4 为例）\u003C\u002Fh4>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cp>说明：后续步骤建议切换为普通用户，不要使用 root 用户编译（避免权限异常）。\u003C\u002Fp>\u003Cpre>\u003Ccode >git clone -b v24.10.4 --single-branch --filter=blob:none https:\u002F\u002Fgithub.com\u002Fimmortalwrt\u002Fimmortalwrt\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤3：进入项目目录\u003C\u002Fh4>\u003Cpre>\u003Ccode >cd immortalwrt\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤4：获取最新软件包清单\u003C\u002Fh4>\u003Cpre>\u003Ccode >.\u002Fscripts\u002Ffeeds update -a\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤5：安装软件包符号链接\u003C\u002Fh4>\u003Cpre>\u003Ccode >.\u002Fscripts\u002Ffeeds install -a\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤6：配置固件信息（关键步骤）\u003C\u002Fh4>\u003Cpre>\u003Ccode >make menuconfig\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch5>配置说明：\u003C\u002Fh5>\u003Cp>- 前三个选项：目标系统 → 子架构 → 目标机型，需严格根据你的实际设备型号选择；\u003C\u002Fp>\u003Cp>- 第四个选项 Target Images：用于修改固件配置，其中 Root filesystem partition size（根文件系统分区大小）建议修改，需根据设备存储空间选择（该值为固件可使用的最大存储空间）；\u003C\u002Fp>\u003Cp>- 其他配置（可选）：在 luci 选项中，可预安装所需插件包（与在线构建的软件包一致）。\u003C\u002Fp>\u003Ch4>步骤7：修改 LAN 口 IP 等基础配置（可选）\u003C\u002Fh4>\u003Cp>可先查看默认配置：https:\u002F\u002Fgithub.com\u002Fimmortalwrt\u002Fimmortalwrt\u002Fblob\u002Fmaster\u002Fpackage\u002Fbase-files\u002Ffiles\u002Fbin\u002Fconfig_generate\u003C\u002Fp>\u003Cpre>\u003Ccode >nano package\u002Fbase-files\u002Ffiles\u002Fbin\u002Fconfig_generate\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>修改完成后，按 Ctrl+O 保存，Ctrl+X 退出。\u003C\u002Fp>\u003Ch4>步骤8：编译固件\u003C\u002Fh4>\u003Ch5>方式1：单线程编译（适合排查编译错误，速度慢）\u003C\u002Fh5>\u003Cpre>\u003Ccode >make -j1 V=s\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch5>方式2：多线程编译（推荐，速度快，根据CPU核心数自动分配线程）\u003C\u002Fh5>\u003Cpre>\u003Ccode >make -j$(nproc --ignore=1)\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>编译完成后，固件文件位于项目目录下的 bin 文件夹中。\u003C\u002Fp>\u003Ch4>步骤9：重新编译说明\u003C\u002Fh4>\u003Cp>若需修改配置后重新编译，需先清理残留文件和工具链，再从步骤4重新开始：\u003C\u002Fp>\u003Cpre>\u003Ccode >make distclean\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2>三、固件刷入与使用教程\u003C\u002Fh2>\u003Ch3>3.1 VirtualBox 虚拟机运行 ImmortalWrt\u003C\u002Fh3>\u003Ch4>步骤1：准备镜像文件\u003C\u002Fh4>\u003Cp>选择 x86\u002F64 型号编译固件，下载 COMBINED (EXT4) 格式的镜像，并解压至下载目录。\u003C\u002Fp>\u003Ch4>步骤2：将镜像转换为 VDI 格式\u003C\u002Fh4>\u003Cp>在镜像所在目录打开 PowerShell，执行以下命令（替换镜像文件名）：\u003C\u002Fp>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Cpre>\u003Ccode >& \"C:\\Program Files\\Oracle\\VirtualBox\\VBoxManage.exe\" convertfromraw `\n\"immortalwrt-24.10.4-f726c678216d-x86-64-generic-ext4-combined.img\" `\n\"immortalwrt.vdi\" `\n--format VDI\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤3：创建虚拟机并配置\u003C\u002Fh4>\u003Cp>1. 打开 VirtualBox，点击“新建”，操作系统选择 Linux，版本选择 Other Linux；\u003C\u002Fp>\u003Cp>2. 指定虚拟硬盘，选择“使用已有的虚拟硬盘文件”，选中刚才转换的 immortalwrt.vdi 文件，点击完成；\u003C\u002Fp>\u003Cp>3. 进入虚拟机设置，找到“网络”，选择“桥接网卡”，勾选“Virtual Cable Connected”；\u003C\u002Fp>\u003Cp>4. 注意：ImmortalWrt 系统的 LAN 口 IP 需与电脑在同一网段，网关和 DNS 需与电脑一致。\u003C\u002Fp>\u003Ch4>步骤4：修改网络配置（如需）\u003C\u002Fh4>\u003Cpre>\u003Ccode >vi \u002Fetc\u002Fconfig\u002Fnetwork  # 编辑网络配置\n\u002Fetc\u002Finit.d\u002Fnetwork restart  # 重启网络生效\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤5：登录后台\u003C\u002Fh4>\u003Cp>打开浏览器，输入 LAN 口 IP 地址，使用脚本中设置的 root 密码登录即可。\u003C\u002Fp>\u003Ch3>3.2 X86 主机将镜像写入硬盘（本地运行）\u003C\u002Fh3>\u003Ch4>步骤1：准备工作\u003C\u002Fh4>\u003Cp>将编译好的镜像烧录到 U 盘，使用 U 盘启动电脑，进入 ImmortalWrt 系统（临时运行）。\u003C\u002Fp>\u003Ch4>步骤2：查看设备信息\u003C\u002Fh4>\u003Cp>执行以下命令，查看 U 盘（输入源）和目标硬盘（输出目标）的设备名称（如 U 盘为 \u002Fdev\u002Fsdb，硬盘为 \u002Fdev\u002Fsda）：\u003C\u002Fp>\u003Cpre>\u003Ccode >lsblk -f\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch4>步骤3：卸载目标硬盘（若已挂载）\u003C\u002Fh4>\u003Cp>若目标硬盘之前安装过系统，需先卸载其分区（替换 sda1、sda2 为实际分区）：\u003C\u002Fp>\u003Cp>umount \u002Fdev\u002Fsda1\u003C\u002Fp>\u003Cp>umount \u002Fdev\u002Fsda2\u003C\u002Fp>\u003Cp>umount \u002Fdev\u002Fsda3\u003C\u002Fp>\u003Ch4>步骤4：验证卸载是否成功\u003C\u002Fh4>\u003Cpre>\u003Ccode >mount | grep sda\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>若命令无返回结果，说明卸载成功。\u003C\u002Fp>\u003Ch4>步骤5：写入镜像到硬盘\u003C\u002Fh4>\u003Cp>执行以下命令（替换 \u002Fdev\u002Fsdb 为 U 盘设备，\u002Fdev\u002Fsda 为目标硬盘）：\u003C\u002Fp>\u003Cpre>\u003Ccode >dd if=\u002Fdev\u002Fsdb of=\u002Fdev\u002Fsda bs=4M conv=fsync\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>说明：若未报错，且终端显示两行数字（写入字节数、读取字节数），则代表写入成功。\u003C\u002Fp>\u003Ch4>步骤6：强制刷新缓存\u003C\u002Fh4>\u003Cp>确保所有数据写入硬盘，执行：\u003C\u002Fp>\u003Cpre>\u003Ccode >sync\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>命令参数解释\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>- if=\u002Fdev\u002Fsdb：输入源，即存放镜像的 U 盘设备；\u003C\u002Fp>\u003Cp>- of=\u002Fdev\u002Fsda：输出目标，即要安装 ImmortalWrt 的硬盘\u002F闪存设备；\u003C\u002Fp>\u003Cp>- bs=4M：每次写入 4M 数据，提升写入速度；\u003C\u002Fp>\u003Cp>- conv=fsync：写入完成后刷新缓存，确保数据落盘；\u003C\u002Fp>\u003Cp>- sync：再次确认所有数据写入完成，避免数据丢失。\u003C\u002Fp>\u003Cp>写入完成后，拔掉 U 盘，重启电脑即可进入 ImmortalWrt 系统。\u003C\u002Fp>\u003Cp>\u003Cbr>\u003C\u002Fp>","ImmortalWrt固件编译完整教程（基于OpenWrt）","https:\u002F\u002Fq2.qlogo.cn\u002Fheadimg_dl?dst_uin=2413552182&spec=640","2026-03-22 22:09:13","OpenWrt 是一个基于 Linux 的路由器操作系统，专门为嵌入式设备（路由器、NAS、小型网关设备等）设计。，本篇教程基于 ImmortalWrt，它是基于 OpenWrt 开发的优化版本，专门针对中国大陆环境进行适配优化，是国内用户的主流选择。","ImmortalWrt,OpenWrt,sync,镜像写入,固件刷入",4,16,1,"已上架"]