在 Debian 上备份 Jenkins 的实用方案
一 核心要点与准备
二 手动备份步骤
sudo systemctl stop jenkinssudo tar -czvf jenkins-backup-$(date +%F).tar.gz -C /var/lib/jenkins .sudo tar -czvf jenkins-config-$(date +%F).tar.gz /etc/default/jenkinssudo tar -czvf jenkins-logs-$(date +%F).tar.gz /var/log/jenkinssudo mv *.tar.gz /mnt/backup/sudo systemctl start jenkinstar -tzf jenkins-backup-$(date +%F).tar.gz | head,或校验文件大小/数量。三 自动化与插件方式
#!/usr/bin/env bash
set -e
JENKINS_HOME="/var/lib/jenkins"
BACKUP_DIR="/backups/jenkins"
DATE=$(date +%F_%H-%M-%S)
mkdir -p "$BACKUP_DIR"
sudo systemctl stop jenkins
tar -czvf "$BACKUP_DIR/jenkins-$DATE.tar.gz" -C "$JENKINS_HOME" .
sudo systemctl start jenkins
# 可选:保留最近7天
find "$BACKUP_DIR" -name "jenkins-*.tar.gz" -mtime +7 -delete
0 2 * * * /usr/local/bin/backup_jenkins.shrsync -a --delete /var/lib/jenkins/ /backups/jenkins-current/borg create --compression zstd,level=19 backup@repo::jenkins-$(date +%F) /var/lib/jenkins四 恢复步骤
sudo systemctl stop jenkinssudo tar -xzvf jenkins-backup-YYYY-MM-DD.tar.gz -C /var/lib/jenkinssudo tar -xzvf jenkins-backup-YYYY-MM-DD.tar.gz -C /var/lib/jenkins config.xml jobs/ users/ plugins/sudo systemctl start jenkins五 备份策略与注意事项