Linux SSH遠(yuǎn)程文件/目錄傳輸命令scp
相信各位VPSer在使用VPS時(shí)會(huì)經(jīng)常在不同VPS間互相備份數(shù)據(jù)或者轉(zhuǎn)移數(shù)據(jù),大部分情況下VPS上都已經(jīng)安裝了Nginx或者類似的web server,直接將要傳輸?shù)奈募诺絯eb server的目錄,然后在目標(biāo)機(jī)器上執(zhí)行:wget http://www.0794baidu.com/testfile.zip 就行了。當(dāng)VPS上沒有安裝web server和ftp server的時(shí)候或感覺上面的方法比較麻煩,那么用scp命令就會(huì)排上用場(chǎng)。
一、scp是什么?
scp是secure copy的簡(jiǎn)寫,用于在Linux下進(jìn)行遠(yuǎn)程拷貝文件的命令,和它類似的命令有cp,不過cp只是在本機(jī)進(jìn)行拷貝不能跨服務(wù)器,而且scp傳輸是加密的。可能會(huì)稍微影響一下速度。
二、scp有什么用?
1、我們需要獲得遠(yuǎn)程服務(wù)器上的某個(gè)文件,遠(yuǎn)程服務(wù)器既沒有配置ftp服務(wù)器,沒有開啟web服務(wù)器,也沒有做共享,無法通過常規(guī)途徑獲得文件時(shí),只需要通過scp命令便可輕松的達(dá)到目的。
2、我們需要將本機(jī)上的文件上傳到遠(yuǎn)程服務(wù)器上,遠(yuǎn)程服務(wù)器沒有開啟ftp服務(wù)器或共享,無法通過常規(guī)途徑上傳是,只需要通過scp命令便可以輕松的達(dá)到目的。
三、scp使用方法
1、獲取遠(yuǎn)程服務(wù)器上的文件
scp -P 2222 root@www.0794baidu.com:/root/lnmp0.4.tar.gz /home/lnmp0.4.tar.gz
上端口大寫P 為參數(shù),2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數(shù)。 root@www.0794baidu.com 表示使用root用戶登錄遠(yuǎn)程服務(wù)器www.0794baidu.com,:/root/lnmp0.4.tar.gz 表示遠(yuǎn)程服務(wù)器上的文件,最后面的/home/lnmp0.4.tar.gz表示保存在本地上的路徑和文件名。還可能會(huì)用到p參數(shù)保持目錄文件的權(quán)限訪問時(shí)間等。
2、獲取遠(yuǎn)程服務(wù)器上的目錄
scp -P 2222 -r root@www.0794baidu.com:/root/lnmp0.4/ /home/lnmp0.4/
上端口大寫P 為參數(shù),2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數(shù)。-r 參數(shù)表示遞歸復(fù)制(即復(fù)制該目錄下面的文件和目錄);root@www.0794baidu.com 表示使用root用戶登錄遠(yuǎn)程服務(wù)器www.0794baidu.com,:/root/lnmp0.4/ 表示遠(yuǎn)程服務(wù)器上的目錄,最后面的/home/lnmp0.4/表示保存在本地上的路徑。
3、將本地文件上傳到服務(wù)器上
scp -P 2222 /home/lnmp0.4.tar.gz root@www.0794baidu.com:/root/lnmp0.4.tar.gz
上端口大寫P 為參數(shù),2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數(shù)。 /home/lnmp0.4.tar.gz表示本地上準(zhǔn)備上傳文件的路徑和文件名。root@www.0794baidu.com 表示使用root用戶登錄遠(yuǎn)程服務(wù)器www.0794baidu.com,:/root/lnmp0.4.tar.gz 表示保存在遠(yuǎn)程服務(wù)器上目錄和文件名。
4、將本地目錄上傳到服務(wù)器上
scp -P 2222 -r /home/lnmp0.4/ root@www.0794baidu.com:/root/lnmp0.4/
上 端口大寫P 為參數(shù),2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數(shù)。-r 參數(shù)表示遞歸復(fù)制(即復(fù)制該目錄下面的文件和目錄);/home/lnmp0.4/表示準(zhǔn)備要上傳的目錄,root@www.0794baidu.com 表示使用root用戶登錄遠(yuǎn)程服務(wù)器www.0794baidu.com,:/root/lnmp0.4/ 表示保存在遠(yuǎn)程服務(wù)器上的目錄位置。
5、可能有用的幾個(gè)參數(shù) :
-v 和大多數(shù) linux 命令中的 -v 意思一樣 , 用來顯示進(jìn)度 . 可以用來查看連接 , 認(rèn)證 , 或是配置錯(cuò)誤 .
-C 使能壓縮選項(xiàng) .
-4 強(qiáng)行使用 IPV4 地址 .
-6 強(qiáng)行使用 IPV6 地址 .
-i 如果使用私鑰連接,可以添加上 -i /path/to/key 參數(shù) .
附上將DiaHosting VPS 上的文件 scp傳輸Linode上的截圖,速度在10MB/s:
如果有任何問題請(qǐng)到https://bbs.vpser.net VPS論壇提問,如果是Linux新手可以到http://www.0794baidu.com/vps-howto 學(xué)習(xí)一下Linux的基本使用教程。
本文為VPS偵探原創(chuàng)文章,轉(zhuǎn)載請(qǐng)以鏈接形式注明出處:http://www.0794baidu.com/manage/scp.html
>>轉(zhuǎn)載請(qǐng)注明出處:VPS偵探 本文鏈接地址:http://www.0794baidu.com/manage/scp.html











謝謝。
wonderful!!!
Thanks a lot!
謝謝!總結(jié)的非常詳細(xì)
非常感謝,幫了我大忙了!!!
@寧波油缸, 不喜歡用命令,可以用圖形化界面工具:winscp,http://www.0794baidu.com/manage/winscp.html
嗯這個(gè)學(xué)起來還是比較麻煩的呢
感覺flashfxp的sftp好用