Rsync將一臺主Web服務(wù)器上的文件和目錄同步到另一臺備份服務(wù)器(最新推薦)
在管理 Web 服務(wù)器時,確保數(shù)據(jù)安全且在發(fā)生故障時能夠快速恢復(fù)至關(guān)重要,備份和鏡像 Web 服務(wù)器數(shù)據(jù)最可靠的方法之一是使用 rsync
。
Rsync 工具可以幫助在兩臺服務(wù)器之間同步文件和目錄,非常適合用于創(chuàng)建 Web 服務(wù)器數(shù)據(jù)的備份和鏡像。
下面將詳細(xì)介紹使用 rsync
將 Web 服務(wù)器與備份服務(wù)器進(jìn)行同步。同時介紹設(shè)置無密碼登錄,通過 cron
定時任務(wù)實(shí)現(xiàn)自動化的同步過程。
1.環(huán)境說明
現(xiàn)在有兩臺服務(wù)器,一臺為主 WEB 服務(wù)器,另一臺為備份服器,其關(guān)鍵信息如下表所示:
服務(wù)器類型 | IP 地址 | 主機(jī)名 |
---|---|---|
主 Web 服務(wù)器 | 192.168.250.100 | web.test.com |
備份服務(wù)器 | 192.168.250.200 | backup.test.com |
其拓?fù)鋱D如下:
注:兩臺服務(wù)器之間應(yīng)啟用 SSH 訪問,這將用于通過 SSH 密鑰設(shè)置無密碼登錄,從而實(shí)現(xiàn)順暢的自動化操作。
2.設(shè)置無密碼 SSH 登錄
為了通過 cron
自動化同步過程,需要從主 Web 服務(wù)器(主服務(wù)器)到備份服務(wù)器設(shè)置無密碼 SSH
登錄,這將允許 rsync
在每次運(yùn)行時無需輸入密碼。
登錄到主 Web 服務(wù)器(web.test.com),生成 SSH 密鑰,并確保接受默認(rèn)的文件位置且不設(shè)置密鑰密碼。
ssh-keygen -t rsa -b 2048
接下來,使用 ssh-copy-id
命令將公鑰復(fù)制到備份服務(wù)器:
ssh-copy-id admin@192.168.250.200
最后,通過從主 Web 服務(wù)器登錄到備份服務(wù)器來測試連接:
ssh admin@192.168.250.200
如果無需輸入密碼即可登錄,則表示設(shè)置成功。
3.使用 Rsync 同步 Web 服務(wù)器數(shù)據(jù)
現(xiàn)在我們已經(jīng)設(shè)置了無密碼 SSH,可以使用 rsync 將 Web 服務(wù)器的數(shù)據(jù)同步到備份服務(wù)器。Web 服務(wù)器的數(shù)據(jù)通常存儲在 /var/www/html/
目錄中,我們將使用該目錄進(jìn)行備份和鏡像。
# 基本的 Rsync 命令用法補(bǔ)充
要在主 Web 服務(wù)器(web.test.com)上執(zhí)行一次性備份,請運(yùn)行以下命令:
rsync -avz /var/www/html/ user@host_ip:/path/to/backup/directory
上述命令的解釋如下:
-a
表示“歸檔模式”,可保留文件的權(quán)限、時間戳和其他屬性。-v
啟用詳細(xì)輸出,以便您可以看到正在傳輸?shù)奈募?/li>-z
啟用壓縮,以減少數(shù)據(jù)傳輸量。
1)將文件同步到備份服務(wù)器目錄
將 /path/to/backup/directory
替換為備份服務(wù)器(這里假設(shè)備份服務(wù)器的備份目錄在/data/backup/web
下)上規(guī)劃存儲備份的實(shí)際路徑。
例如:
rsync -avz /var/www/html/ admin@192.168.250.200:/data/backup/web
2)鏡像 Web 服務(wù)器目錄
如果需要鏡像目錄(即使備份與源目錄完全一致),可以使用 --delete
選項:
rsync -avz --delete /var/www/html/ admin@192.168.250.200:/data/backup/web
--delete
參數(shù)會刪除備份目錄中不再存在于 Web 服務(wù)器上的文件,確保兩個目錄完全一致。
4.使用 Cron 自動化備份
為了確保定期備份,我們可以使用 cron
定時任務(wù)自動運(yùn)行 rsync
命令,這樣備份過程將在指定的時間運(yùn)行,例如每天午夜。
在主 Web 服務(wù)器(web.test.com)上,通過運(yùn)行以下命令打開 crontab
文件:
crontab -e
要將備份設(shè)置為每天00:00
運(yùn)行,請在 crontab
中添加以下行:
0 0 * * * rsync -avz --delete /var/www/html/ admin@192.168.250.200:/data/backup/web
保存 crontab
文件并退出,這樣 cron
任務(wù)將每天自動在凌晨 12:00
運(yùn)行(半夜時分)。
也可以根據(jù)需要調(diào)整時間,比如,要改成每天凌晨 1:00
運(yùn)行,可以這樣修改:
0 1 * * * rsync -avz --delete /var/www/html/ admin@192.168.250.200:/data/backup/web
5.驗(yàn)證備份
設(shè)置好 cron
任務(wù)后,可以通過檢查系統(tǒng)日志來驗(yàn)證 cron
任務(wù)是否按預(yù)期運(yùn)行:
grep CRON /var/log/syslog
登錄到備份服務(wù)器(backup.test.com),檢查 /data/backup/web
目錄中的文件是否與主 Web 服務(wù)器上的 /var/www/html/
目錄中的文件一致。
我們還可以通過在主 Web 服務(wù)器上刪除一個文件,然后驗(yàn)證在下一次 rsync
運(yùn)行后該文件是否從備份目錄中刪除,來進(jìn)行測試。
到此這篇關(guān)于Rsync將一臺主Web服務(wù)器上的文件和目錄同步到另一臺備份服務(wù)器的文章就介紹到這了,更多相關(guān)Rsync Web服務(wù)器文件同步備份內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
N點(diǎn)主機(jī)管理系統(tǒng)的重裝步驟(圖文)
這篇文章主要介紹了N點(diǎn)主機(jī)管理系統(tǒng)的重裝步驟(圖文),需要的朋友可以參考下2015-10-10將 PFX,JKS 證書轉(zhuǎn)換為 PEM 格式方法
這篇文章主要介紹了將 PFX,JKS 證書轉(zhuǎn)換為 PEM 格式方法,需要的朋友可以參考下2024-01-01基于http.server搭建局域網(wǎng)服務(wù)器過程解析
這篇文章主要介紹了基于http.server搭建局域網(wǎng)服務(wù)器過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10HTTP響應(yīng)字段Transfer-Encoding含義及作用詳解
在HTTP通信中,響應(yīng)正文可以以多種不同的編碼方式傳輸,其中一種方式是chunked傳輸編碼,本文將詳細(xì)介紹Transfer-Encoding字段的含義和chunked傳輸編碼,以及提供示例來解釋這些概念2023-11-11Ubuntu18.04本地化部署Rustdesk服務(wù)器的詳細(xì)過程
如果你是想數(shù)據(jù)留在本地,那么Rustdesk這個工具可以考慮,它是開源的,部署起來也簡單,下面通過本文給大家分享Ubuntu18.04本地化部署Rustdesk服務(wù)器的詳細(xì)過程,感興趣的朋友跟隨小編一起看看吧2024-04-04一文詳解如何解決version?GLIBCXX_3.4.29?not?found問題
這篇文章主要給大家介紹了關(guān)于如何解決version?GLIBCXX_3.4.29?not?found問題的相關(guān)資料,文中通過圖文以及代碼代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01微服務(wù)架構(gòu)之服務(wù)注冊與發(fā)現(xiàn)功能詳解
這篇文章主要為大家介紹了微服務(wù)架構(gòu)之服務(wù)注冊與發(fā)現(xiàn)的功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-01-01rsync同步時出現(xiàn)rsync: failed to set times on “xxxx”: Operation no
今天在同步數(shù)據(jù)的時候提示rsync: failed to set times on “xxxx”: Operation not permitted,一般來說要不是服務(wù)器時間不對或者權(quán)限沒有設(shè)置好2016-12-12