首頁 > 運維 > linux運維 > linux中如何使用SCP指令安全地傳輸檔案? (程式碼範例)

linux中如何使用SCP指令安全地傳輸檔案? (程式碼範例)

青灯夜游
發布: 2019-03-20 13:27:02
原創
4244 人瀏覽過

SCP(安全副本)是一個命令列實用程序,允許使用者在兩個位置之間安全地複製檔案和目錄。以下這篇文章就來帶大家了解SCP指令,介紹使用SCP指令是如何安全地傳輸文件,希望對大家有幫助。

linux中如何使用SCP指令安全地傳輸檔案? (程式碼範例)

linux SCP指令

#SCP指令是一個linux下進行遠端拷貝檔案的指令,允許使用者在兩個位置之間安全地複製檔案和目錄。

使用SCP指令,使用者可以複製檔案(或目錄):

● 從本機系統到遠端系統。

● 從遠端系統到本機系統。

● 在本機系統的兩個遠端系統之間。

使用scp傳輸資料時,檔案和密碼都是加密的,這樣任何窺探流量的人都不會得到任何敏感資訊。

SCP命令的基本語法:

scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2
登入後複製

● OPTION: scp選項,如密碼,ssh配置,ssh端口,限制,遞歸複製..等。

● [user@]SRC_HOST:]file1:原始檔。

● [user@]DEST_HOST:]file2 : 目標檔案。

本機檔案應使用絕對或相對路徑指定,而遠端檔案名稱應包括使用者和主機規格。

SCP提供了許多選項來控制其行為的各個方面。最廣泛使用的選項有:

● -P 指定遠端主機ssh連接埠。

● -p 保留檔案修改和存取時間。

● -q 如果要禁止進度表和非錯誤訊息,請使用此選項。

● -C。此選項將強制scp在將資料傳送到目標電腦時壓縮資料。

● -r 此選項將告訴scp以遞歸方式複製目錄。

說明:開始使用SCP指令時

因為scp指令依賴ssh進行資料傳輸,所以在遠端系統上進行驗證需要ssh金鑰或密碼。

冒號(:)是SCP如何區分本地和遠端位置的。

為了能夠複製文件,使用者必須至少擁有原始檔案的讀取權限和目標系統的寫入權限。

在兩個系統上複製共享相同名稱和位置的檔案時要小心,scp會在沒有警告的情況下覆寫檔案。

如何使用SCP複製兩個系統之間的檔案和目錄?

1、使用scp指令將本機檔案複製到遠端系統

要將檔案從本機複製到遠端系統,請執行下列指令:

scp file.txt remote_username@10.10.0.2:/remote/directory
登入後複製

說明:file.txt是我們要複製的檔案名,remote_username是遠端伺服器上的使用者名,10.10.0.2是伺服器IP位址;/remote/directory是要將檔案複製到的目錄的路徑,如果不指定遠端目錄,檔案將複製到遠端使用者主目錄。

系統將提示使用者輸入使用者密碼,然後將開始傳輸程序。

輸出:

remote_username@10.10.0.2's password:
file.txt                             100%    0     0.0KB/s   00:00
登入後複製

從目標位置省略檔案名稱會使用原始名稱複製檔案。如果要以不同的名稱儲存文件,則需要指定新名稱:

scp file.txt remote_username@10.10.0.2:/remote/directory/newfilename.txt

#如果遠端主機上的SSH正在偵聽預設端口22以外的端口,則可以使用以下-P參數指定端口:

ssh -P 2322 file.txt remote_username@10.10.0.2:/remote/directory
登入後複製

要將目錄從本地複製到遠端系統,請使用以下-r選項:

scp -r /local/directory remote_username@10.10.0.2:/remote/directory
登入後複製

2、使用scp指令將遠端檔案複製到本機系統

#要將檔案從遠端系統複製到本機系統,需要使用遠端位置作為來源,使用本機位置作為目標。

例如,要從IP為10.10.0.2的遠端伺服器複製名為file.txt的文件,需要執行下列指令:

scp remote_username@10.10.0.2:/remote/file. txt /local/directory

附註:如果使用者沒有設定遠端電腦的“無密碼ssh登入”,將要求輸入使用者密碼。

3、使用scp指令在兩個遠端系統之間複製檔案

使用scp時,使用者無需登入其中一台伺服器,就可以將檔案從一台遠端電腦傳輸到另一台遠端電腦。

例如,下列指令可以將檔案/files/file.txt從遠端主機host1.com複製到遠端主機host2.com上的目錄/files上。

scp user1@host1.com:/files/file.txt user2@host2.com:/files
登入後複製

系統將提示使用者輸入兩個遠端帳戶的密碼;資料將直接從一個遠端主機傳輸到另一個。

相關影片教學推薦:《Linux教學

以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。更多精彩內容大家可以追蹤php中文網相關教學欄位! ! !

以上是linux中如何使用SCP指令安全地傳輸檔案? (程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板