# 打包投递:curl 先落 /tmp 再 sudo mv **日期**:2026-06-21 ## 摘要 `pull_transfer_package` / deliver 在目标机下载归档时,改为 `curl → /tmp/nexus-xfer-*` 再 `mv` 到目标路径(走 `exec_ssh_command_with_fallback` 提权),修复 `curl: (23) Failed writing body`(直写 `/www/...` 无权限)。 ## 动机 打包投递时 Nexus 中心返回 200,但 B 机 `curl -o /www/...` 因 SSH 用户无写权限失败。 ## 涉及文件 | 路径 | 说明 | |------|------| | `server/application/services/server_file_transfer_service.py` | `_download_url_to_remote_path` | | `server/api/sync_v2.py` | deliver 未捕获异常 → 502 | | `tests/test_server_file_transfer.py` | tmp+mv 单测 | ## 验证 ```bash pytest tests/test_server_file_transfer.py::test_pull_downloads_via_tmp_then_mv -q ``` ## 回滚 恢复 `curl -o dest` 直写并重启 API。