sakuradairong
|
d286c7cacc
|
chore: snapshot backup before rainycy push (20260624-032434)
Auto-committed by MiMo for migration to git.rainycy.top
|
2026-06-24 03:26:25 +08:00 |
|
YAWAsau
|
63037d9e5a
|
Update README.md
|
2026-06-13 12:43:11 +08:00 |
|
Yawasau
|
05130a9898
|
feat: 流式備份/恢復、遠端預掃優化、增量邏輯強化
新功能
- 流式備份/恢復: remote_stream=1 支援 SMB+WebDAV 邊壓邊傳不佔本機空間
- 遠端預掃: 單次連線取全部列表 + 批量 json 下載 (120 往返→6 連線)
- 主循環增量比對零網路開銷 (讀本地快取)
- 最終計數核驗 verify_backup_manifest (三態顯示)
- conf 重構: smb_url/webdav_url 按協議分組,切換 remote_type 免重輸
修復
- 流式 staging 以遠端 json 快取為種子,解決權限/SSAID 無變化仍重備
- 上傳 json 前合併遠端版本,防 version 等欄位被部分覆蓋丟失
- 版本比對讀本地同步副本,修復流式模式每輪誤報版本變化
- 清單偵測版本更新強制重備 apk,防 json 被失敗輪汙染後 apk 缺檔
- apk 版本相符仍核對遠端檔存在性,污染數據自動自愈
- 流式失敗不傳 json,確保下輪整體重備不殘留壞數據
- smbclient cd 失敗停留根目錄導致列表/大小統計污染 → 前綴過濾
- WebDAV href URL 編碼改通用 %XX awk 查表解碼 (中文/空格/+ 全解)
- json 預掃改全量批量抓,不再靠列表交集 (修 smbclient 中文名轉碼毀名)
- 殺舊進程改單次 ps 快照整樹殺 (修 busybox ps 無 PPID / 誤殺自身)
- smbclient stdin 命令還原內嵌換行 (修中文多層路徑建目錄失敗)
- 連線失敗轉本地備份時補顯本地分區統計
- ms_to_readable 對永不休眠值特判顯示
- 單 app 備份入口補遠端預掃流程
- .changed_apps 去重、TMPDIR 殘留全清、tab 縮排統一
優化
- 遠端預掃: 120 連線→6 連線,主循環零網路開銷
- 殺舊進程: ~15 秒→< 1 秒 (逐 /proc 遞迴→單次 ps 快照 awk)
- 批量權限: JVM fork 3N→3
202606131225
|
2026-06-13 12:29:18 +08:00 |
|
Yawasau
|
debf83a88c
|
perf: 備份提速近3倍, dex調用批量化, 修復數個bug
性能優化:
- 並行目錄大小預掃(8並發), 主迴圈查表免重複遍歷, 提速約3倍
- 零fork查表: 權限/版本/UID/安裝來源/後台狀態改載入動態變量純記憶體查詢
- _dir_size改寫全域變量返回, 消除子shell fork
- 內建glob取代ls檢查tar存在性
- 備份權限預掃批量(getRuntimePermissions 1次+awk分組生成JSON)
- 恢復權限批量設置, JVM啟動3N→3
- appops reset集中執行
新增功能:
- 恢復後權限驗證(讀回比對授予/拒絕, _perm_verify=0可關)
- dex調用計數器(_dex_debug=1)
- 批量權限進度提示
問題修復:
- 權限JSON以包名為鍵導致多權限互相覆蓋只存1個(改為權限名為鍵), 舊備份需重備
- 自定義資料夾含點名稱(service.d)恢復時被誤截斷, 改為只去.tar/.tar.zst後綴
- _dir_size處理非應用名稱的bad substitution, 加變量名防呆
- grep -qFx改精確awk比對
202606071629
202606110838
|
2026-06-07 16:27:12 +08:00 |
|
Yawasau
|
e31c31515c
|
feat: 權限預掃/JSON驗證/遠端比對/互動統一及多項修復
功能新增:
- ask_yn helper 統一 Lo=0/1/2 互動邏輯
- prepare_permissions_map 備份前預掃 runtime permissions,取代逐 app fork dex
- 備份完成後自動驗證本次變動應用的 JSON 結構
- remote_list_backups 加入本地/遠端差異比對,支援直接補上傳/補下載
- show_conf/remote_conf_line 各功能執行前顯示對應 conf
- get_backup_dirname/per_app_upload_and_cleanup 邏輯抽成獨立函數
邏輯修復:
- Backup_Permissions/Backup_ssaid 移出 size 判斷,size 無變化時也偵測變更
- 權限變更列出具體項目 (permName: false→true)
- .changed_apps 去重從 grep -qFx 改為 awk /data/data/com.termux/files/usr/bin/push==n,避免特殊字元誤判
- 僅上傳變更應用訊息加 remote_type 守衛,未設遠端時不顯示
- 遠端斷線保存 _remote_type_orig,支援中途開 WiFi 後重連
- 遠端缺檔本地無變化時免重壓直接上傳
- Lo=2 恢復未安裝應用選項順序顛倒 bug
- Lo=2 更新腳本誤設 update 變數(應為 choose)bug
- Media 備份無內容不留空殼
- 全腳本去除 bc 依賴改用 awk
其他:
- 單獨備份模式只預掃該 app 權限
- 頂部加區塊索引,各分區加分隔標題
- 縮排統一為 Tab
- 掛載路徑顯示從 mount:[...] 改為 └─ 掛載於:
|
2026-06-02 00:42:04 +08:00 |
|
Yawasau
|
3dc8bbdb2b
|
feat: 合併遠端增量備份相關功能 (基於 PR #123)
|
2026-05-29 08:40:20 +08:00 |
|
Yawasau
|
8509e3ec2b
|
feat: 新增遠端備份系統 (WebDAV / SMB)
主要功能:
- 遠端上傳:備份完自動上傳到 NAS / 雲端,支援 WebDAV / SMB
- 遠端下載:從遠端拉回備份,可直接執行恢復
- 連線測試:三層測試 (TCP / 認證 / 路徑) 驗證設定
- 區網掃描:啟動時自動掃描區網 SMB 主機
- 單獨上傳:每個 app 子目錄生成 upload.sh,可獨立補傳
優化:
- WebDAV 並行下載 (curl -Z, 4 路同時)
- SMB 批次傳輸 (每目錄一次連線)
- 完整 UTF-8 中文路徑支援
修復:
- 強制 curl HTTP/1.1 避開 nginx PUT 404 問題
- WebDAV 預建初始目錄
- trap EXIT 不再誤觸發上傳
- 失敗檔案完整 log,不再中途中斷
詳見 CHANGELOG.md
202605161105
|
2026-05-16 10:59:58 +08:00 |
|
YAWAsau
|
ff47576425
|
Merge pull request #119 from sakuradairong/fix/remote-dns-curl
fix: 强制 /system/bin/curl + MKCOL逐级目录 + stderr隔离
|
2026-05-16 10:50:56 +08:00 |
|
RainySY
|
4cf1e61321
|
fix: FTP测试用 tools/curl(有FTP支持)
|
2026-05-14 21:50:18 +08:00 |
|
RainySY
|
43b8886642
|
fix: FTP改用busybox ftpput(系统curl无FTP支持)
|
2026-05-14 21:46:43 +08:00 |
|
RainySY
|
ed13786ef3
|
fix: FTP测试改用列目录+被动模式+超时30s
|
2026-05-14 21:42:36 +08:00 |
|
RainySY
|
6eb10531a4
|
fix: 测试入口也用 /system/bin/curl (root DNS可靠)
|
2026-05-14 21:40:36 +08:00 |
|
RainySY
|
c207998028
|
fix: FTP 加被动模式和超时延长
|
2026-05-14 21:37:17 +08:00 |
|
RainySY
|
27d8134ae9
|
fix: FTP 用退出码判断成功/失败,WebDAV用 stderr 隔离
|
2026-05-14 21:33:17 +08:00 |
|
Yawasau
|
22982ac1ce
|
feat(remote): 批次上傳、連線預檢、精準範圍、測試入口
- SMB 改批次傳輸,單連線傳完同目錄所有檔
- SCP 改 tar pipeline,失敗自動退回逐檔
- 新增 remote_test 選單入口
- 新增 remote_keep_local 設定項
- 修復中文路徑、smb.conf 警告、無網路卡死等問題
|
2026-05-14 00:00:07 +08:00 |
|
YAWAsau
|
550e2a760b
|
Merge pull request #118 from sakuradairong/fix/remote-post-merge
fix: SMB改用smbclient, curl重试, noexec适配
|
2026-05-12 23:00:18 +08:00 |
|
RainySY
|
7113448bb5
|
fix: SMB改用smbclient, curl重试, noexec适配, 多项修复
|
2026-05-12 22:58:15 +08:00 |
|
YAWAsau
|
6e1a8a2da3
|
Merge pull request #117 from sakuradairong/feat/remote-all
feat: 遠程備份支援 WebDAV/FTP/SMB/SCP,內置 curl/scp/ssh
|
2026-05-12 21:14:56 +08:00 |
|
RainySY
|
b2409700c5
|
feat: 遠程備份 WebDAV/FTP/SMB/SCP + 內置二進制 + 日誌修復
|
2026-05-12 21:00:10 +08:00 |
|
YAWAsau
|
0bc0b95398
|
Merge pull request #114 from sakuradairong/fix/remote-improvements
fix: 远程备份功能修复 (curl/WebDAV/MKCOL/日志/SMB)
|
2026-05-12 17:46:26 +08:00 |
|
RainySY
|
6fb53d7f11
|
fix: 保留 appList.txt 上传
|
2026-05-12 15:49:28 +08:00 |
|
RainySY
|
c7920acd0c
|
fix: 远端上传排除 tools/目录及脚本文件,仅上传备份数据
|
2026-05-12 15:47:12 +08:00 |
|
RainySY
|
384f039f43
|
fix: SMB改用curl smb://协议上传,合并为统一upload_remote函数
|
2026-05-12 15:44:34 +08:00 |
|
RainySY
|
80c2b47607
|
fix: 日志文件移至 log/ 子目录
|
2026-05-12 15:44:34 +08:00 |
|
RainySY
|
7832fd6d8e
|
fix: WebDAV URL编码特殊字符并自动创建远程目录(MKCOL)
|
2026-05-12 15:43:55 +08:00 |
|
RainySY
|
ad52ebd1a1
|
fix: 移除 curl stderr 静默,改用 test -x 检测,增加诊断日志
|
2026-05-12 15:43:55 +08:00 |
|
RainySY
|
6f287f42b8
|
fix: 改用 curl 替代 wget 进行 WebDAV 上传,自动检测 curl 路径
|
2026-05-12 15:43:55 +08:00 |
|
RainySY
|
9a1c30a583
|
fix: 在 update_backup_settings_conf 模板中加入远程配置,防止配置重建时丢失网络设置
|
2026-05-12 15:43:55 +08:00 |
|
YAWAsau
|
37047dcd8b
|
Merge pull request #113 from sakuradairong/feature/remote-backup
feat: 支援透過 WebDAV 與 SMB 遠程備份
|
2026-05-12 08:23:10 +08:00 |
|
Yawasau
|
7d9c90cc8c
|
bugfix
|
2026-05-10 11:40:28 +08:00 |
|
RainySY
|
5201bdac28
|
docs: add remote backup design spec and implementation plan
|
2026-05-09 14:36:22 +08:00 |
|
RainySY
|
0e524b407d
|
feat: add remote backup functions
|
2026-05-09 14:36:06 +08:00 |
|
RainySY
|
102c3fd2ba
|
feat: add remote backup config
|
2026-05-09 14:36:00 +08:00 |
|
YAWAsau
|
da224d6c92
|
Merge pull request #111 from sakuradairong/optimize-script
[优化] 代码清理 安全加固:修复竞态条件、空参数漏洞、兼容性修复
|
2026-05-09 12:43:06 +08:00 |
|
Hermes
|
304d4d5b57
|
fix: 替换here-string嵌套语法为标准管道,兼容Android mksh
|
2026-04-28 22:38:13 -04:00 |
|
Hermes
|
fcd72cc1a0
|
[optimized] 代码优化:清理死代码、修复竞态条件与空参数安全问题
- 删除 backup() 中的调试 echo 残留
- 删除被注释的死代码行
- 修复 backup_wifi rm -rf 空参数安全问题
- 重写 start.sh 逻辑,优化配置生成流程
- 重构 kill_Serve 使用 mkdir 原子锁替代 PID 文件
|
2026-04-28 22:22:23 -04:00 |
|
Yawasau
|
dfef750e5c
|
bugfix
|
2026-04-23 20:00:55 +08:00 |
|
Yawasau
|
2fe35e5a35
|
bugfix
|
2026-03-31 08:08:28 +08:00 |
|
Yawasau
|
e64fa5d6b9
|
bugfix
|
2026-03-16 21:15:27 +08:00 |
|
Yawasau
|
32b023373f
|
bugfix
|
2025-12-31 15:01:48 +08:00 |
|
Yawasau
|
656d85a19f
|
bugfix
|
2025-11-09 17:32:10 +08:00 |
|
Yawasau
|
af803fbebf
|
bugfix
202508162209
|
2025-08-16 22:09:24 +08:00 |
|
Yawasau
|
1c6cbfb261
|
bugfix
|
2025-08-10 23:36:47 +08:00 |
|
Yawasau
|
cd6c1026a1
|
bugfix
|
2025-08-10 17:52:07 +08:00 |
|
Yawasau
|
51726db049
|
bugfix
|
2025-08-02 19:51:41 +08:00 |
|
Yawasau
|
b767cd8208
|
bugfix
|
2025-07-10 22:49:34 +08:00 |
|
Yawasau
|
f0996ea83f
|
bugfix
|
2025-07-08 18:59:24 +08:00 |
|
Yawasau
|
4b875842a9
|
bugfix
|
2025-07-08 18:57:20 +08:00 |
|
Yawasau
|
bd9b779a5f
|
bugfix
202507071542
202507071935
202507071944
|
2025-07-07 15:39:57 +08:00 |
|
Yawasau
|
bf58f2f7b2
|
bugfix
202507061817
|
2025-07-06 17:35:19 +08:00 |
|