升级
tcpfit update修复
1. 接管锁时会误杀新实例(v0.4.1 引入)
原先第二次用 fuser -k -KILL 重新查锁文件. 旧实例收到 TERM 退出后, 别的新实例可能在这 3 秒里拿到锁, 于是被误杀(退出码 137).
改成只杀最初记录的 PID, 不再二次查锁文件:
kill -TERM $pids
sleep 3
for p in $pids; do kill -0 "$p" && kill -KILL "$p"; done拿不到持有者 PID 时直接提示手动处理, 不做盲杀.
2. Alpine 的 pkill 探测判断错误
原先跑一次 pkill -g 看退出码, 但 BusyBox 不认 -g 时也返回 1, 被误判成"支持". 改成看帮助里有没有长选项 --pgroup —— BusyBox 压根不支持长选项.
3. 超出扫描范围时的文案
[4/5] Apply shaping 那步仍短暂显示 "no policer detected", 现在区分开:
policer present but knee not located in range, shaping skipped
继承 v0.4.0 / v0.4.1
- sweep 失败时不再应用上一次的限速值
- Alpine / BusyBox 兼容
- verify 的重传判定改用丢包率
- 锁被占时列出持有者并可一键结束