Linux

rsync/ssh/rsnapshot 備份——遠端腳本執行

  • August 10, 2018

我的配置文件中有以下設置:(/etc/rsnapshot.conf)

腳本/工具:http ://www.rsnapshot.org/

backup_script   ssh     root@host.domain.com "sh /home/user/backup_mysql.sh"     ./mysql

該範例顯示以下內容:

backup_script  ssh root@example.com "mysqldump -A > /var/db/dump/mysql.sql"    unused2

我得到的錯誤:

ERROR: backup_script /usr/bin/ssh returned 255  

我究竟做錯了什麼?

一種可能的方法是將轉換ssh root@host.domain.com "sh /home/user/backup_mysql.sh"為腳本(do_ssh.sh,此處)並呼叫該腳本。

就像是,

backup_script /path/to/do_ssh.sh ./mysql

我還建議您嘗試在整個命令周圍加上引號。

backup_script “ssh root@host.domain.com “sh /home/user/backup_mysql.sh”” ./mysql

rsnapshot 配置文件以製表符分隔。確保包含tabs在 backup_scrip、ssh 命令和備份儲存之間。如果這不起作用,請嘗試執行rsnapshot configtest以確定問題。

答案已更新

將備份行轉換為以下格式會更方便:

backup_script    /dir/yourscript.sh    backupdirectory/

將中間部分放在 shell 腳本中,使其可執行並進行測試。除此之外,ssh root@host.domain.com應該以非互動方式連接到沒有密碼的遠端主機。

引用自:https://serverfault.com/questions/479017