Upload files to "/"
This commit is contained in:
parent
863c1f65ec
commit
dbf9802c16
|
|
@ -0,0 +1,57 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# 红米 AC2100 一键升级脚本(路由器本地运行)
|
||||||
|
# 用法: wget -O- https://git.stickrouter.com/mike/AC2100/raw/branch/main/ac2100_upgrade.sh | sh
|
||||||
|
|
||||||
|
FIRMWARE_URL="https://git.stickrouter.com/mike/AC2100/raw/branch/main/Red2100.bin"
|
||||||
|
FIRMWARE_NAME="Red2100.bin"
|
||||||
|
REMOTE_PATH="/tmp/${FIRMWARE_NAME}"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "=================================================="
|
||||||
|
echo " 红米 AC2100 一键升级脚本"
|
||||||
|
echo " 固件来源: Gitea"
|
||||||
|
echo "=================================================="
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# 检查剩余内存
|
||||||
|
FREE_MEM=$(free | awk '/Mem/{print $4}')
|
||||||
|
echo "[INFO] 当前可用内存: ${FREE_MEM}KB"
|
||||||
|
|
||||||
|
if [ "${FREE_MEM}" -lt 30000 ]; then
|
||||||
|
echo "[WARN] 内存不足,尝试释放..."
|
||||||
|
echo 3 > /proc/sys/vm/drop_caches
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 下载固件
|
||||||
|
echo "[步骤 1/3] 下载固件到 ${REMOTE_PATH}..."
|
||||||
|
if [ -f "${REMOTE_PATH}" ]; then
|
||||||
|
echo "[WARN] 已存在固件文件,跳过下载"
|
||||||
|
else
|
||||||
|
wget -q --show-progress "${FIRMWARE_URL}" -O "${REMOTE_PATH}"
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "[ERR] 固件下载失败,请检查网络"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 验证文件大小
|
||||||
|
SIZE=$(wc -c < "${REMOTE_PATH}")
|
||||||
|
echo "[INFO] 固件大小: ${SIZE} bytes"
|
||||||
|
|
||||||
|
if [ "${SIZE}" -lt 1000000 ]; then
|
||||||
|
echo "[ERR] 固件文件异常,大小不正确"
|
||||||
|
rm -f "${REMOTE_PATH}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "[步骤 2/3] 固件下载完成,准备升级..."
|
||||||
|
echo ""
|
||||||
|
echo "[WARN] 升级过程中请勿断电!"
|
||||||
|
echo "[WARN] 路由器将自动重启,升级完成后访问 http://192.168.1.1"
|
||||||
|
echo ""
|
||||||
|
echo "5秒后开始升级,按 Ctrl+C 取消..."
|
||||||
|
sleep 5
|
||||||
|
|
||||||
|
# 执行升级
|
||||||
|
echo "[步骤 3/3] 开始升级固件..."
|
||||||
|
sysupgrade -F -n "${REMOTE_PATH}"
|
||||||
Loading…
Reference in New Issue