日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Linux下的scp 、rsync兩種命令同步文件

作者:小吳-斌 更新時間: 2023-08-30 編程語言

SCP命令

scp還非常不占資源,不會提高多少系統負荷,在這一點上,rsync就遠遠不及它了。雖然 rsync比scp會快一點,但當小文件眾多的情況下,rsync會導致硬盤I/O非常高,而scp基本不影響系統正常使用。

語法

scp  (選項)  (參數)
源文件:指定要復制的源文件。
目標文件:目標文件。格式為user@host:filename(文件名為目標文件的名稱)。

-1:使用ssh協議版本1;
-2:使用ssh協議版本2;
-4:使用ipv4;
-6:使用ipv6;
-B:以批處理模式運行;
-C:使用壓縮;
-F:指定ssh配置文件;
-l:指定寬帶限制;
-o:指定使用的ssh選項;
-P:指定遠程主機的端口號;
-p:保留文件的最后修改時間,最后訪問時間和權限模式;
-q:不顯示復制進度;
-r:以遞歸方式復制。

示例

# root 用戶名

# 從遠處復制文件到本地目錄
# 從10.10.10.10機器上的/opt/soft/的目錄中下載test.tar.gz 文件到本地/opt/soft/目錄中。
scp root@10.10.10.10:/opt/soft/test.tar.gz /opt/soft/

# 從遠處復制到本地
# 從10.10.10.10機器上的/data/www/中下載mongodb目錄到本地的/data/www/目錄來。
scp -r root@10.10.10.10:/opt/soft/mongodb /opt/soft/

# 上傳本地文件到遠程機器指定目錄
# 復制本地/data/www/目錄下的文件test.tar.gz到遠程機器10.10.10.10的/data/www/scptest目錄。
scp /data/www/test.tar.gz root@10.10.10.10:/data/www/scptest


# 上傳本地目錄到遠程機器指定目錄
上傳本地目錄/data/www/mongodb到遠程機器10.10.10.10上/data/www/scptest的目錄中去。
scp -r /data/www/mongodb root@10.10.10.10:/data/www/scptest

rsync命令

在Linux系統中,rsync是一種功能強大且廣泛使用的文件同步工具。它能夠在本地和遠程系統之間實現高效、快速的文件傳輸和同步,支持斷點續傳和快速安全的文件上傳下載。

安裝方法

yum install rsync

基本用法

sync [OPTIONS] SOURCE DESTINATION
# SOURCE指定源文件或目錄,DESTINATION指定目標路徑,可以是本地路徑或遠程主機路徑。

# 常用參數及其功能
-a:歸檔模式,以遞歸方式傳輸文件,并保持文件屬性(權限、時間戳等)。
-v:詳細模式,輸出傳輸過程中的詳細信息。
-r:遞歸傳輸,用于同步目錄及其子目錄。
-z:壓縮傳輸,減少數據傳輸量,加快傳輸速度。
--delete:刪除目標中不存在于源的文件,保持目標與源的一致性。
--exclude:排除指定文件或目錄,不進行同步。
--progress:顯示傳輸過程中的進度信息。
--bwlimit:限制寬帶限速
-e:指定遠程shell連接命令(例如SSH) 

示例

# 本機上同步
rsync  -av /源目錄  /被同步文件夾   

# 從本地上傳文件到服務器
rsync -P -t -r -v -e [待傳輸文件] usr@IP:[接收目錄]
 
# 從服務器下載文件到本地
rsync -P -t -r -v -e  usr@IP:[待傳輸文件] [接收目錄]
 
# 本地文件夾同步:
# 將本地目錄/path/to/source同步到/path/to/destination,保持權限和時間戳,并顯示傳輸過程中的詳細信息。 
rsync -av /path/to/source /path/to/destination
 
# 遠程主機同步:
# 將本地目錄同步到遠程主機remote_host的/path/to/destination,使用SSH連接,并壓縮傳輸以加快速度。

rsync -azv -e ssh /path/to/source remote_host:/path/to/destination
 
# 刪除目標多余文件:
# 同步時,刪除目標目錄中不存在于源目錄的文件。
rsync -av --delete /path/to/source /path/to/destination
 
# 排除特定文件和目錄:
# 同步時排除/path/to/source/logs和/path/to/source/temp目錄,并不進行傳輸。
rsync -av --exclude='logs' --exclude='temp' /path/to/source /path/to/destination

# 排除指定文件和目錄
# --exclude-from=exclude.txt  exclude.txt里寫入需要排除的文件
# --password-file=/etc/wap_pw136.txt 為密碼文件
# --delete 同步時,刪除目標目錄中不存在于源目錄的文件。
rsync -avzP --exclude-from=exclude.txt ./ wzb@127.0.0.1::test --chown=www:www --progress --password-file=/etc/wap_pw136.txt


rsync -avzP --exclude-from=exclude.txt ./ wzb@127.0.0.1::test --chown=www:www --progress  --delete --password-file=/etc/wap_pw56.txt

# 從指定服務器同步文件到本地
rsync -avz --exclude-from=exclude.txt wzb@127.0.0.1::test ./ --password-file=/etc/apitest_pw.txt

原文鏈接:https://blog.csdn.net/qq_23564667/article/details/132080700

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新