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