天天看點

從本地到雲伺服器複制檔案(轉)

原文位址

相信各位VPSer在使用VPS時會經常在不同VPS間互相備份資料或者轉移資料,大部分情況下VPS上都已經安裝了Nginx或者類似的web server,直接将要傳輸的檔案放到web server的目錄,然後在目标機器上執行:wget https://www.vpser.net/testfile.zip 就行了。當VPS上沒有安裝web server和ftp server的時候或感覺上面的方法比較麻煩,那麼用scp指令就會排上用場。

一、scp是什麼?

scp是secure copy的簡寫,用于在Linux下進行遠端拷貝檔案的指令,和它類似的指令有cp,不過cp隻是在本機進行拷貝不能跨伺服器,而且scp傳輸是加密的。可能會稍微影響一下速度。

二、scp有什麼用?

1、我們需要獲得遠端伺服器上的某個檔案,遠端伺服器既沒有配置ftp伺服器,沒有開啟web伺服器,也沒有做共享,無法通過正常途徑獲得檔案時,隻需要通過scp指令便可輕松的達到目的。

2、我們需要将本機上的檔案上傳到遠端伺服器上,遠端伺服器沒有開啟ftp伺服器或共享,無法通過正常途徑上傳是,隻需要通過scp指令便可以輕松的達到目的。

三、scp使用方法

1、擷取遠端伺服器上的檔案

scp -P 2222 [email protected]:/root/lnmp0.4.tar.gz /home/lnmp0.4.tar.gz

上端口大寫P 為參數,2222 表示更改SSH端口後的端口,如果沒有更改SSH端口可以不用添加該參數。 [email protected] 表示使用root使用者登入遠端伺服器www.vpser.net,:/root/lnmp0.4.tar.gz 表示遠端伺服器上的檔案,最後面的/home/lnmp0.4.tar.gz表示儲存在本地上的路徑和檔案名。還可能會用到p參數保持目錄檔案的權限通路時間等。

2、擷取遠端伺服器上的目錄

scp -P 2222 -r [email protected]:/root/lnmp0.4/ /home/lnmp0.4/

上端口大寫P 為參數,2222 表示更改SSH端口後的端口,如果沒有更改SSH端口可以不用添加該參數。-r 參數表示遞歸複制(即複制該目錄下面的檔案和目錄);[email protected] 表示使用root使用者登入遠端伺服器www.vpser.net,:/root/lnmp0.4/ 表示遠端伺服器上的目錄,最後面的/home/lnmp0.4/表示儲存在本地上的路徑。

3、将本地檔案上傳到伺服器上

scp -P 2222 /home/lnmp0.4.tar.gz [email protected]:/root/lnmp0.4.tar.gz

上端口大寫P 為參數,2222 表示更改SSH端口後的端口,如果沒有更改SSH端口可以不用添加該參數。 /home/lnmp0.4.tar.gz表示本地上準備上傳檔案的路徑和檔案名。[email protected] 表示使用root使用者登入遠端伺服器www.vpser.net,:/root/lnmp0.4.tar.gz 表示儲存在遠端伺服器上目錄和檔案名。

4、将本地目錄上傳到伺服器上

scp -P 2222 -r /home/lnmp0.4/ [email protected]:/root/lnmp0.4/

上 端口大寫P 為參數,2222 表示更改SSH端口後的端口,如果沒有更改SSH端口可以不用添加該參數。-r 參數表示遞歸複制(即複制該目錄下面的檔案和目錄);/home/lnmp0.4/表示準備要上傳的目錄,[email protected] 表示使用root使用者登入遠端伺服器www.vpser.net,:/root/lnmp0.4/ 表示儲存在遠端伺服器上的目錄位置。

5、可能有用的幾個參數 :

-v 和大多數 linux 指令中的 -v 意思一樣 , 用來顯示進度 . 可以用來檢視連接配接 , 認證 , 或是配置錯誤 .

-C 使能壓縮選項 .

-4 強行使用 IPV4 位址 .

-6 強行使用 IPV6 位址 .

附上将DiaHosting VPS 上的檔案 scp傳輸Linode上的截圖,速度在10MB/s:

從本地到雲伺服器複制檔案(轉)

(點選圖檔查大圖)

如果有任何問題請到https://bbs.vpser.net VPS論壇提問,如果是Linux新手可以到https://www.vpser.net/vps-howto 學習一下Linux的基本使用教程。

本文為VPS偵探原創文章,轉載請以連結形式注明出處:https://www.vpser.net/manage/scp.html

繼續閱讀