Rsync
使用 rsync 和 StrictHostKeyChecking 並從遠端查找超過 5 分鐘的文件
我想使用 rsync 將我的文件從遠端同步到本地目錄。因此,我使用StrictHostKeyChecking以便無需輸入密碼。
現在我只想同步超過 5 分鐘的文件。我想用
find /path/to/folder/ -type f -mmin +5
如何將它集成到我的遠端程序中?
rsync -e "./ssh -i %syncclientkey% -o 'StrictHostKeyChecking no'" syncusr@%syncsrv:path/to/source path/to/destination
StrictHostKeyChecking
與無密碼身份驗證無關。它的目的是發出一個前向確認的反向 DNS,以確保您確實連接到預期的伺服器,並且沒有使用 DNS 級別的劫持將您誤導到另一台伺服器。要使用 pubkey 身份驗證,您必須執行以下步驟:
- 使用創建一個新的公鑰/私鑰
ssh-keygen
- 使用複制公鑰到遠端伺服器
ssh-copy-id
關於您問題的第二部分,
rsync
其本身無法進行基於時間的選擇。您必須通過生成文件列表find
並將其通過管道傳輸到rsync
.例如:
find /path/to/folder/ -type f -mmin +5 -print0 | rsync -files-from=- -from0 syncusr@%syncsrv:path/to/source path/to/destination
但是,由於
rsync
僅傳輸更改的文件/增量非常有效,也許您可以完全跳過文件選擇步驟,並簡單地每 5 分鐘同步整個文件夾。rsync
將僅同步/傳輸更改的文件(間隔 5 分鐘,這意味著僅同步最近 5 分鐘內更改的文件)。