私は、Server1(/mnt/Server1/Backupフォルダ)に/ home / User1(Client1)のバックアップコピーを保持するために長年rsyncを使用してきました。これは生産機械ではありません。このフォルダは、Client1の起動時に/mnt/Server1/BackupフォルダにマウントされたNFSです。したがって、Server1 の /mnt/Server1/Backup は、Client1 の NFS とともに /mnt/Server1/Backup にマウントされます。
どちらのシステムでも、/mnt/Server1/Backup は User1/Group1 に属し、770 の権限を持ちます。
毎日フォルダ(/ mnt / Server1 / Backup)にバックアップするためにClient1にrsnapshotをインストールしました。 User1はすでにClient1とServer1に存在し、パスワードなしでキーを使用してSSHを実行できます。
/etc/rsnapshot.confに以下を追加しました。
##############################
### SNAPSHOT ROOT DIRECTORY ##
##############################
snapshot_root /mnt/Server1/Backup/
##############################
### BACKUP POINTS/ SCRIPTS ###
##############################
# LOCALHOST
backup /home/User1 Client/
「rsnapshot configtest」を起動すると、「Syntax OK」というメッセージが表示されます。
「rsnapshot -t alpha」を実行すると、次のような結果が表示されます。
[dom ott 14, 01:12 ][user1@client1:~]rsnapshot -t alpha
echo 23033 > /var/run/rsnapshot.pid
mkdir -m 0755 -p /mnt/Server1/Backup/rsnapshot/alpha.0/
/usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded \
/home/Client1/ /mnt/Server1/Backup/rsnapshot/alpha.0/Client1/
touch /mnt/Server1/Backup/rsnapshot/alpha.0/
[dom ott 14, 01:12 ][user1@client1:~]
すべてが大丈夫だと思います。ただし、オプションなしで実行すると、次の結果が表示されます。
[dom ott 14, 01:12 ][user1@client1:~]rsnapshot alpha
----------------------------------------------------------------------------
rsnapshot encountered an error! The program was invoked with these options:
/usr/bin/rsnapshot alpha
----------------------------------------------------------------------------
ERROR: Could not write lockfile /var/run/rsnapshot.pid: Permission denied
rsnapshotは、Client1のネイティブファイルシステムにPIDを書き込むのに十分な権限がないため、文句を言います。
それ以外の場合はsudoを使用しないでください。パスワードを要求せずにどのようにcronjobを作成できますか?
一時的な Debian ユーザーとして「バックアップ」できます。ところで、PIDの問題をどのように解決しますか?
答え1
実際、sudo オプション自体は、/mnt/Server1/Backup フォルダに書き込めないとしても動作しません。
[dom ott 14, 01:15 ][antonio@gaia:~]sudo rsnapshot alpha
[sudo] password di User1:
----------------------------------------------------------------------------
rsnapshot encountered an error! The program was invoked with these options:
/usr/bin/rsnapshot alpha
----------------------------------------------------------------------------
ERROR: Could not mkpath("/mnt/Server1/Backup/rsnapshot/alpha.0/", 0, 0755);
解決策が見つかりました。 rsnapshotには、PIDファイルが書き込まれる場所を設定するオプションがあります。これが私が設定した方法です:
lockfile /mnt/Server1/Backup/rsnapshot
上記のフォルダにもバックアップグループを割り当てました。最後に、NFS経由でClient1にリモートフォルダをマウントしたため、rsnapshotがSSHを使用していないことに気づきました。