Linux

備份到遠端伺服器並即時創建 tar

  • September 19, 2019

我想使用 rsync 將目錄從我的生產伺服器備份到備份伺服器。

我目前的解決方案:

  1. 焦油目錄
  2. 在生產伺服器上通過 rsync 發送到遠端伺服器

我對這個解決方案的問題:沒有足夠的空間來創建 tar 文件 + 在創建 tar 時它需要很多資源。它應該盡可能減少對生產伺服器資源的影響。

我想將文件發送到遠端伺服器上的 tar 文件中。我可以簡單地發送文件並將它們 tar 到備份伺服器上,但在我看來,這不是一個好的解決方案。

您可以使用管道和 STDOUT 的組合通過網路將 tar 文件發送到遠端伺服器。

tar zcvf - /your/directory | ssh -i private.key backup-user@backupserver "cat > /backup/file.tgz"

“-”字元將 tar 發送到 STDOUT,STDOUT 通過管道ssh將內容寫入正常文件,使用cat.

您需要使用ssh私鑰文件進行“無密碼”身份驗證。

這不使用rsync但會將 tarfile 獲取到遠端伺服器。

參考: https ://stackoverflow.com/questions/8045479/whats-the-magic-of-a-dash-in-command-line-parameters

引用自:https://serverfault.com/questions/984907