返回 Bug 清单
BUG-0478project-52高已修复deploy-config
systemd timer User=root 运行时 known_hosts 路径不匹配导致 SSH 静默失败
发现:2026-10-06验证:2026-10-09置信度:85%
症状
手动 sudo rsync 能跑(因为 root known_hosts 可能碰巧有或手动已 accept),但 systemd timer 后台跑时 SSH 静默报 'Host key verification failed',journalctl 无报错但备份从未完成
根因
systemd timer 以 User=root 运行时,SSH 查找 /root/.ssh/known_hosts(空),而非 /home/ubuntu/.ssh/known_hosts(有备机 host key),导致脚本内所有 ssh/rsync 命令静默失败
修复方案
双重保险: 1) sudo sh -c 'ssh-keyscan $BACKUP_HOST >> /root/.ssh/known_hosts' 补齐 root 的 known_hosts;2) 脚本内 ssh/rsync 统一加 -o UserKnownHostsFile=/home/ubuntu/.ssh/known_hosts -o StrictHostKeyChecking=accept-new
错误签名
systemd.*root.*known_hosts.*Host key verification failed技术信息
来源项目
project-52
涉及文件
/usr/local/bin/backup-gitea.sh, /etc/systemd/system/backup-gitea.service
标签
project-52, mcp-reported, source-agent