歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix資訊

使用Unix scp 在主機之間復制文件

今天就來學習使用Unix scp。您每天使用的標准網絡服務(如 FTP、Telnet、RCP 和遠程 Shell (rsh) 等)在封閉環境中運行良好,但使用這些服務在網絡上傳輸的信息是未加密的。

任何人都可以在您的網絡或遠程計算機上使用包嗅探器查看交換的信息,有時甚至可以查看密碼信息。下面就來學習下Unix scp的知識吧。

而且,使用所有此類服務時,在登錄過程中用於自動登錄的選項會受到限制,並且通常依賴於將純文本密碼嵌入到命令行才能執行語句,從而使登錄過程變得更加不安全。

開發的安全 Shell (SSH) 協議可以排除這些限制。SSH 能夠為整個通信通道提供加密,其中包括登錄和密碼憑據交換,它與公鑰和私鑰一起使用可以為登錄提供自動化身份驗證。

您還可以將 SSH 用作基礎傳輸協議。以這種方式使用 SSH 意味著在打開安全連接後,加密通道可以交換所有類型的信息,甚至 HTTP 和 SMTP 可以使用該方法來保證通信機制的安全。

Unix OpenSSH 是 SSH 1 和 SSH 2 協議的免費實現。它最初是作為 OpenBSD (Berkeley Software Distribution) 操作系統的一部分開發的,現在被發布為 Unix 或 Linux® 和類似操作系統的常規解決方案。

Unix scp 命令的工作方式與 rc 命令相似,只不過是使用 SSH 協議傳輸文件。在傳輸內容相關文件或在 Internet 上自動交換文件時,選用Unix scp 要好得多。

其格式類似於 rcp;您可以指定之間復制的文件路徑,必要時應將主機名合並到該路徑。例如,要將 .bashrc 文件從遠程主機復制到本地計算機,請使用: $ scp remotehost:/users/mc/.bashrc ~/.bashrc
 
和前面一樣,若指定要使用的用戶名,請在主機前面加上用戶名,並用 @ 符號分開: $ scp mc@remotehost:/users/mc/.bashrc ~/.bashrc
 
假設您用於連接的用戶有讀取權限,還需要使用元字符 ~ 才能訪問主目錄中的信息。
$ scp mc@remotehost:~mc/.bashrc ~/.bashrc
 
要從登錄用戶的主目錄中進行復制,請使用: $ scp mc@remotehost:.bashrc ~/.bashrc
 
Unix scp 命令還支持標准擴展規則。所以,要復制所有的 .bash* 文件,您可以使用: $ scp mc@remotehost:.bash* ~
 
您甚至還可以通過使用展開的大括號 ({}) 更具體地選擇單個文件:$ scp mc@remotehost:".bash{rc,_path,_aliases,_vars}" ~
 
請注意,文件路徑中展開的大括號(不是完整的遠程路徑表達式)已用雙引號括上。

在上面所有的示例中,系統都會提示您輸入遠程主機的密碼。通過為主機提供您自己的個人密鑰的公共部分可以避免這種情況。

這些,就是我們要講的使用Unix scp 在主機之間復制文件的知識。

Copyright © Linux教程網 All Rights Reserved