利用 Linux rsync 來搬遷網站

Linux rsync

一般網站搬家,最常用的方法,利用 FTP 將整個網站資料夾下載下來,或使用 SSH 權限將網站打包下載,如果網站資料不多,可以很快的搬遷網站。

如果網站運行有一段時間了,資料夾的資料加上圖片已經有 2G 或 3G 了,碰到網路速度不快的主機,網站搬遷可能要搬個 1 天都有可能。

我們可以利用 Linux rsync 文件同步 / 傳輸,增量備份傳輸利器來幫我們來搬家,時間上可以縮短不少。

1. 先在本地 VPS 主機安裝 rsync 程序:

CentOS / Fedora / RHEL:

yum install rsync

Debian / Ubuntu:

apt-get install rsync

rsync 有兩種工作方式:SSH 和 daemon。

  • SSH 方式是使用系統上的用戶通過 SSH 進行同步操作。
  • daemon 方式是 rsync 服務器會開一個 873 端口,等待客戶端去連接,連接是進行驗證,通過後進行同步。

因為我們只要搬遷網站,所以只要用到 SSH 的方法。

2. 將要搬去的 VPS 主機,先將虛擬主機建置好,就可以使用下面的指令開始傳輸原網站的文件了。

將本地目錄拷貝到遠程 VPS 主機:

rsync -avu --progress --delete /home/wwwroot/example.com/ root@1.2.3.4:/home/wwwroot/example.com/

如果改了 SSH 端口,需要加 -e “ssh -p 你的 SSH 端口”,如果不想顯示具體傳輸過程可以去掉 P 參數:

rsync -avu -e "ssh -p 20000" --progress --delete /data/wwwroot/example.com/ root@1.2.3.4:/data/wwwroot/example.com/

很短的時間就會將原本的 VPS 主機上的網站文件搬到目的地的 VPS 主機,接下來再來搬遷你的數據庫文件,就快得多了。

rsync 的功能當然不只這些,daemon 配合 crontab 定時執行任務,自動完成同步、備份等工作。



Sending
User Rating 5 (7 votes)

Leave a Reply

8 Shares
Share7
Tweet
+11
Share