我有個自動排程備份如下rsync -a --delete --exclude-from=/etc/rsyncexclude /data/ /ocbak
在每週三、六,自動備份/data到網芳掛載的/ocbak
fstab內容則如下//192.168.16.7/ocbak(備份主機) /ocbak cifs credentials=/root/.smbcred,rw 0 0
用超過半年,重開無數次都沒問題。直到週六/ocbak不知為何掛載失效變成本地資料夾,
導致自動備份/data全備到本地/ocbak,硬碟就爆了,對外服務停擺。凌晨回來才發現,
趕緊把本地/ocbak清空,重新mount,但都顯示cifs filesystem not supported by the system,重開機再掛載也無效。一早來上班不死心再mount -a一次就恢復了,有點莫名其妙...問題發生當下,有連回備份主機,確認網路正常、共享資料夾還在,權限也沒變動。
為怕問題再發生,想請問,怎麼直接用rsync把/data備份到//192.168.16.7/ocbak,而不用先掛載到本地?
我照了範例打rsync -a --delete --exclude-from=/etc/rsyncexclude --password-file=/root/.rsyncpwd(內容只有一行密碼) /data user@192.168.16.7::ocbak
出現
rsync: failed to connect to 192.168.16.7 (192.168.16.7): Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(122) [sender=3.0.9]
如何解決,感謝
你查的範例是備份伺服器上有rsync服務,透過rsync服務傳送備份資料。
你的環境沒有rsync服務所以無法套用。
你的問題很好解決,只要把備份指令碼存在備份伺服器的分享資料夾上,
再用排程呼叫備份伺服器分享資料夾的指令碼,沒有掛載時指令碼不存在自然不會備份。