
我正在使用 Ubuntu/Debian 機器。
我想將我們的專用網路伺服器備份到內部本地位置。這有很多原因 - 我知道我們的網絡主機會正確備份,但是有時我們將發布一個新網站,而我們的客戶希望訪問舊數據,而我們希望回滾到較早的版本網站的版本,以及其他類似的情況。
我知道要做到這一點我需要使用 rsync 和 cron,但我不知道更多。目的是將最新的備份獲取到我們的內部伺服器上,然後將該備份推送到我們的網路附加儲存設備,其中也儲存了先前的備份。
那麼透過 rsync 我將始終在內部伺服器上擁有最新版本,對嗎? Rsync 只會傳輸已更新的檔案。然後我可以從那裡運行一個 cron,它將通過 rsync 或 SMB 推送到 NAS 盒子?
所以我的問題是,假設我的方法是正確的,我將如何使用 rsync 來拉取遠端伺服器上的 /home 目錄?這是一個簡單的過程嗎?有 rsync 的初學者指南嗎?
我可以從本機進行 rsync 嗎?我們沒有靜態 IP 位址,我想對其進行 cron 操作,以便它每晚(或每週,取決於需要多長時間和佔用多少空間)自動進行備份。
答案1
一般來說,你的想法都是朝著正確的方向的。針對您的問題具體解答:
“我可以運行一個 cron 來通過 rsync 或 SMB 推送到 NAS 盒子嗎?”
是的,一點沒錯。
「我如何使用 rsync 來拉取
/home
遠端伺服器上的目錄?容易嗎?是的,這是我使用的命令。查看rsync 文檔解釋:
rsync -vrltpz --force --delete -e ssh [email protected]:/home/ /backups/myserver
有初學者指南嗎?
許多,這是一本很好的食譜
我可以從本機進行 rsync 嗎?
是的。您可以從本機電腦運行上面的命令。
(你如何讓 cron 來做這件事)?
也不難。用於
crontab
編輯您的 cron 表:$ crontab -e
編輯器將會出現。輸入類似這樣的內容每天備份一次:
[email protected] @daily rsync -vrltpz --force --delete ...
Cron 對它的運行時間有著極其強大的控制能力,谷歌搜尋一下就能找到很多例子,crontab 文檔。