无法将 borgbackup 脚本与 sudo 一起使用,因为需要 ssh 密码

无法将 borgbackup 脚本与 sudo 一起使用,因为需要 ssh 密码

我正在尝试使用 borg 备份,但遇到了 SSH 问题。我正在备份一些根文件,例如 /var/www/html,因此我需要 root 权限,因此我需要以 root 身份运行备份脚本,但是当我以 root 身份运行它时,SSH 密钥似乎不起作用,因为它是一个我想用 cron 运行的脚本,这意味着我不能每次都输入密码。请注意,当我从用户运行脚本时,SSH 密钥可以工作,但备份无法工作,因为某些文件位置的权限被拒绝。

我正在与 Hetzner 一起备份到一个存储箱。

我的脚本:

#!/usr/bin/env bash

LOG="/var/log/borg/backup.log"
BACKUP_USER="XXXXXXX"
REPOSITORY_DIR="backups/Node1"
REPOSITORY="ssh://${BACKUP_USER}@${BACKUP_USER}.your-storagebox.de:23/./${REPOSITORY_DIR}"
exec > >(tee -i ${LOG})
exec 2>&1

echo "###### Backup started: $(date) ######"

echo "Transfer files ..."
BORG_PASSPHRASE='XXXXXXXXXX' borg create -v --stats                   \
    $REPOSITORY::'{now:%Y-%m-%d_%H:%M}'  \
    /root                                \
    /etc                                 \
    /var/www                             \
    /home                                \
    --exclude /dev                       \
    --exclude /proc                      \
    --exclude /sys                       \
    --exclude /var/run                   \
    --exclude /run                       \
    --exclude /lost+found                \
    --exclude /mnt                       \
    --exclude /var/lib/lxcfs

echo "###### Backup ended: $(date) ######"

答案1

我刚刚将 SSH 私钥复制到 root 用户,现在它可以工作了。

cp /home/user/.ssh/rsa_pub /root/.ssh/rsa_pub

相关内容