• v1.3.2 ace8dc8b5c

    TPanel v1.3.2 Stable

    zhangpu released this 2026-06-01 14:09:29 +08:00 | -2 commits to main since this release

    TPanel v1.3.2 发布说明

    🐛 紧急修复

    install.sh: zip 魔数校验永远失败

    症状:在干净的 VPS 上 bash install.sh 总是卡在 [3/8] 下载源码 一步,5 个下载源全部报"下载到的东西不是 zip(可能 404 HTML)"。

    真相:实际上 5 个下载源的文件全部都是合法 zip——是 install.sh 里的检测函数有 bug:

    # 旧版(坏的)
    if head -c 4 "$TMP_ZIP" | grep -q "PK\x03\x04"; then
    

    grep 默认按行匹配,\x03\x04 不会被解析成 0x03/0x04 字节——它只认 \n、\t 这类。所以这段代码要找的是字面字符串 "PK\x03\x04"(10 个字符),永远匹配不上 4 字节的 PK\x03\x04。

    5 个源里的 zip 文件全部是合法的,但因为校验函数错把 4 字节 zip 头当 404 HTML 拒了,所以 install 永远走不到解压那一步。

    新版本(v1.3.2 修复):

    is_valid_zip() {
      local file="$1"
      [ -f "$file" ] || return 1
      local magic
      magic=$(od -An -tx1 -N4 "$file" 2>/dev/null | tr -d ' \n')
      [ "$magic" = "504b0304" ]
    }
    

    用 od 把前 4 字节转成 16 进制字符串再比较,稳。

    📦 安装

    wget -O install.sh https://github.com/zhang-pu/tpanel/releases/download/v1.3.2/install.sh
    bash install.sh
    

    或用官网镜像:

    wget -O install.sh https://tpanel.cn/install.sh
    bash install.sh
    

    🔄 升级步骤(从 v1.3.1)

    1. 重跑 bash install.sh(会保留 /opt/tpanel 下的现有数据)
    2. 或者只替换 install.sh 后重装:wget -O install.sh https://tpanel.cn/install.sh && bash install.sh

    ⚠️ 兼容性

    • 100% 向后兼容 v1.3.1 数据
    • 不需要重启服务
    • 源码包大小:47KB(v1.3.1)→ 47KB(v1.3.2,差几十字节)

    🙏 致谢

    感谢在生产服务器上跑了 5 遍 install.sh 的兄弟——bug 是被你逼出来的 😅


    完整变更日志: https://github.com/zhang-pu/tpanel/compare/v1.3.1...v1.3.2

    Downloads