linux之間傳文件用什麼工具好呢?

1. 前言

linux之間傳文件命令用什麼命令?本文介紹一種最常用,也是功能強大的文件同步和傳輸工具Rsync,本文提供詳細傻瓜式教程。

在本教程中,我們將通過實際使用案例和最常見的rsync選項的詳細說明向您展示如何使用rsync。

本教程適用於Ubuntu系統、Linux Mint系統、Deepin深度Linux系統、Fedora系統、Debian系統、Elementary OS系統、OpenSUSE系統、CentOS系統、RHEL系統,Arch Linux等等GNU Linux發行版。

linux之間傳文件用什麼工具好呢?

linux之間傳文件命令之Rsync傻瓜式教程

2. `rsync`介紹

Rsync是一個快速且通用的命令行實用程序,它可以使Windows與Linux之間,Linux與Linux之間傳文件或者Linux與MAC OS之間傳文件。或從Linux本地文件系統到遠程Rsync守護進程之間同步文件和文件夾。它只傳輸源和目標之間的差異,從而提供快速增量文件傳輸。

Rsync可以用於鏡像數據、增量備份、在Linux系統之間傳文件,也可以用於Linux與Windows之間傳輸文件,還可以替代日常使用的scp、sftp和cp命令,他們一般也用於Linux之間傳文件或者Linux與MAC OS之間傳文件。

3. 如何安裝`Rsync`

rsync實用程序預裝在大多數Linux發行版和macOS上。你可以輸入以下命令,檢查你的系統是否已安裝:

查看Rsync版本的輸出結果:

如果您的系統上沒有安裝rsync,您可以使用發行版的包管理器輕鬆地安裝它。

在Ubuntu 或者Debian體系的Linux系統上安裝rsync

在CentOS 或者Fedora系統上安裝rsync

4. Rsync命令使用語法

在討論如何使用rsync命令之前,讓我們先回顧一下基本語法。

rsync實用程序表達式採用以下形式:

  • OPTION - rsync參數選項.
  • SRC - 源目錄.
  • DEST - 目標目錄.
  • USER - 遠程用戶名.
  • HOST - 遠程主機名或域名或IP地址.

rsync提供了許多選項來控制其行為和功能。最廣泛使用的選項是:

-a, --archive, 歸檔模式, 相當於 -rlptgoD。這個選項告訴rsync遞歸地同步目錄、傳輸特殊設備和塊設備、保存符號鏈接、修改時間、組、所有權和權限。

-z, --compress. 這個選項將強制rsync在傳送文件到目標計算機時壓縮數據。僅當到遠程計算機的連接很慢時才使用此選項。

-P, 相當於--partial --progress。使用此選項時,rsync將在傳輸期間顯示一個進度條,並保留部分傳輸的文件。當通過緩慢或不穩定的網絡連接傳輸大文件時,它非常有用。

--delete. 使用此選項時,rsync將從目標位置刪除無關文件。它對鏡像很有用。

-q, --quiet。如果希望禁用非錯誤消息,請使用此選項。

-e. 此選項允許您選擇不同的遠程shell。默認情況下,rsync被配置為使用ssh。

5. 使用Rsync最基本的功能使Linux之間傳輸文件

要將一個文件從一個本地位置複製到另一個本地位置,可以運行以下命令:

linux之間傳文件用什麼工具好呢?

使用Rsync最基本的功能使Linux之間傳輸文件

運行該命令的用戶必須具有目標位置上的讀權限和目標上的寫權限。

從目標位置省略文件名將複製具有當前名稱的文件。如果您想將文件保存在另一個名稱下,請在目標部件上指定新名稱:

比如複製filename.zip到目標目錄並重新把文件名修改為newfilename.zip

在下面的例子中,我們正在創建一個本地備份我們的網站文件:

如果目標目錄不存在,rsync將創建它。

值得一提的是,rsync對後面帶有斜槓/的源目錄提供了不同的處理。如果在源目錄上添加一個尾隨斜槓,它將只將目錄的內容複製到目標目錄。當後面的斜槓被省略時,rsync將把源目錄複製到目標目錄中。

6. 如何使用Rsync與遠程服務器同步文件(包括上傳下載)

當使用rsync進行遠程傳輸時,必須同時安裝在源機器和目標機器上。rsync的新版本被配置為使用SSH作為默認遠程shell。

linux之間傳文件用什麼工具好呢?

如何使用Rsync與遠程服務器同步文件(包括上傳下載)

在下面的例子中,我們將一個目錄從本地轉移到遠程機器:

如果您還沒有為遠程機器設置無密碼SSH登錄,將要求您輸入用戶密碼。

如果你需要配置2臺Linux之間免密碼登錄,請查看以下教程:

如果你想把數據從遠程傳輸到本地機器,你需要使用遠程位置作為一個源:

如果遠程主機上的SSH監聽的端口不是默認的22端口,那麼可以使用-e選項指定端口:
比如遠程服務器的SSH端口被修改為1234

當傳輸大量數據時,建議在屏幕會話中運行rsync命令或使用-P選項:

7. 使用Rsync傳送或同步文件時,排除某些文件或者目錄

當使用Rsync排除文件或目錄時,需要使用它們到源位置的相對路徑。

linux之間傳文件用什麼工具好呢?

使用Rsync傳送或同步文件時,排除某些文件或者目錄

有兩個選項可以排除文件和目錄。第一個選項是使用--exclude參數,並在命令行中指定要排除的文件和目錄。

在下面的例子中,我們排除了位於src_directory中的123和abc目錄:

第二個選項是使用--exclude-from參數,並指定要在文件中排除的文件和目錄。

vi exclude-file.txt
加入需要排除的文件,比如文件file1.c,目錄zcwyou:

8. 總結

在本教程中,您學習瞭如何使用Rsync在多臺Linux之間傳輸、複製或同步文件和目錄。在Rsync用戶手冊頁面上有更多關於Rsync的內容。

如果你有任何問題,請留下你的意見。

本文已同步至博客站,尊重原創,轉載時請在正文中附帶以下鏈接:
https://www.linuxrumen.com/rmxx/1428.html

點擊瞭解更多,快速查看更多的技術文章列表。


分享到:


相關文章: