如何使用 rsync 將備份從 Linux 伺服器提取到 Windows PC?

如何使用 rsync 將備份從 Linux 伺服器提取到 Windows PC?

我目前正在使用 sftp 將夜間備份 (.tar.gz) 從我的網站主機下載到我的桌上型電腦。我想我想切換到 rsync 以最小化頻寬(和時間)。我的電腦上安裝了 cygwin,但不常使用它。我可以透過 ssh (PuTTY) 對我的 Web 主機進行 shell 存取。

假設我的來源目錄是 myserver.com:/home/username/backups/,我想從那裡獲取所有 .tar.gz 文件,並且我想將它們保存到本地 C:\Backups\。

答案1

使用 *nix 盒子上的內建 rsync,並且德爾塔複製在 Win32 盒子上。

答案2

我能夠使用 cygwin 的 rsync 和 ssh 來實現這一點。這是我最終得到的命令:

C:\cygwin\bin\rsync.exe -vcr -e "ssh -l username -i /cygdrive/C/Backups/sshkey" "myserver.com:/home/username/backups/" "/cygdrive/C/Backups/rsync/"

在此過程中出現了一些問題: 將 C:\cygwin\bin\ 新增到我的 Windows 路徑中。我不知道這是否絕對必要,但它對我有幫助。

克里斯小號關聯建立允許 ssh 在不使用密碼的情況下連接所需的金鑰對。

我還需要在伺服器上設定新建立的 .ssh 目錄和檔案的一些權限...

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys/

哦,我需要在 cygwin 中手動本地創建 ~/.ssh。

相關內容