利用linux SFTP進行文件同步有多種途徑可供選擇,以下是幾種常用的方法:
方法一:借助rsync指令
rsync是一款極為實用的文件同步工具,它能夠通過ssh協議確保數據傳輸的安全性。
-
安裝rsync(若未安裝的話):
sudo apt-get install rsync # Debian/Ubuntu sudo yum install rsync # centos/RHEL
-
基礎同步指令:
rsync -avz -e ssh /本地目錄/ 用戶@遠程地址:/遠程目錄/
- -a:存檔模式,意味著遞歸傳輸并保留符號鏈接、權限、時間戳等。
- -v:詳盡模式,展示同步的詳細步驟。
- -z:在傳輸過程中壓縮文件數據。
- -e ssh:指定采用SSH協議進行傳輸。
-
增量同步: rsync默認即為增量同步,僅傳輸發生變化的文件。
-
定時同步: 能夠利用cron定時任務來定期運行同步指令。例如,每小時同步一次:
crontab -e
添加如下內容:
0 * * * * rsync -avz -e ssh /本地目錄/ 用戶@遠程地址:/遠程目錄/
方法二:運用lftp指令
lftp是一款功能豐富的文件傳輸工具,它支持SFTP協議。
-
安裝lftp(若未安裝的話):
sudo apt-get install lftp # Debian/Ubuntu sudo yum install lftp # CentOS/RHEL
-
基礎同步指令:
lftp -e 'mirror --reverse --delete /本地目錄/ 用戶@遠程地址:/遠程目錄/; quit'
- mirror:鏡像目錄,–reverse表示從本地到遠程,–delete表示移除遠程目錄中本地缺失的文件。
方法三:利用sftp指令手動同步
盡管不如rsync便捷,但也能通過sftp手動完成文件同步。
-
連接至遠程主機:
sftp 用戶@遠程地址
-
上傳文件:
put /本地目錄/文件名 /遠程目錄/
-
下載文件:
get /遠程目錄/文件名 /本地目錄/
-
退出:
exit
注意事項
- 確保遠程主機的SSH服務已開啟且可訪問。
- 使用rsync時,留意路徑準確性和權限配置。
- 定時任務需慎重設定,防止頻繁同步引發網絡擁堵。
通過上述方式,你能夠輕松地運用Linux SFTP完成文件同步。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END