傳統網站遷移需「關站 → 全量複製 → 開站」,對 10GB+ 數據量可能耗費數小時,業務損失巨大。利用 rsync 增量同步 特性,可採用「預同步 + 末次增量」雙階段策略,將實際停機窗口壓縮至 10-30 分鐘。本文詳細實操流程與參數解析。
| 階段 | 時間點 | 操作 | 網站狀態 | 傳輸內容 |
|---|---|---|---|---|
| 預同步 | 遷移前 1 天 | 執行 rsync 全量同步 | 正常運行 | 所有檔案 (耗時長但不影響業務) |
| 正式遷移 | 約定維護窗口 | 關站 → 執行 rsync 增量同步 → 換 IP/DNS → 開站 | 停機 | 僅新增/變更檔案 (極快,通常分鐘級) |
# 兩台主機均需安裝
Debian/Ubuntu: apt-get update && apt-get install -y rsync
CentOS/RHEL: yum install -y rsync
# 基礎語法 (SSH 通道,保留權限/時間戳/符號連結)
rsync -avz -e ssh root@舊主機IP:/來源路徑/ /目的路徑/
# 實例:遷移 /home/www 至新主機同路徑,SSH 端口 60000
rsync -avz -e 'ssh -p 60000' root@192.168.1.100:/home/www/ /home/www/
-a (archive): 遞歸 + 保留權限、擁有者、時間戳、符號連結、裝置檔-v (verbose): 顯示傳輸進度與檔案清單-z (compress): 傳輸時壓縮,節省頻寬-e 'ssh -p PORT': 指定非標準 SSH 端口/來源路徑/ 表示同步目錄內容;若省略則同步目錄本身 (會多一層目錄結構)screen -S migrate → 執行 rsync → Ctrl+A, D 脫離。斷線重連後 screen -r migrate 恢復。--exclude='cache/' --exclude='logs/*.log' --exclude='.git/'rsync -avzn ... (多加 -n),僅模擬列出將傳輸檔案,不實際寫入。--bwlimit=50000 (單位 KB/s,此例限 50MB/s)。diff -r /舊路徑 /新路徑 或抽樣 md5sum。實測 20GB 代碼 + 上傳目錄,預同步 45 分鐘,正式遷移增量同步 僅 3 分 17 秒,停機時間較傳統全量複製縮減 95% 以上。rsync 為大數據遷移利器,建議納入標準運維工具箱。
Apache + ProFTPD 虛擬主機安全架構:權限隔離與 WebShell 防禦實戰
虛擬化平台三雄對決:VMware vSphere vs Microsoft Hyper-V vs Citrix XenServer
Windows 2000 內建 IIS 快速架設個人 FTP 伺服器與動態域名解決方案
Apache 與 Nginx 啟用 Gzip 壓縮完整教學:減少 70% 傳輸流量
IIS 7 取消目錄執行權限圖文教程:防範 Webshell 與惡意腳本執行
解決安裝 IIS 提示「無法複製 convlog.exe、iisadmin.mfl」:修復損毀的 secedit.sdb 資料庫檔案