歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux SSH遠程文件/目錄傳輸命令scp

相信各位VPSer在使用VPS時會經常在不同VPS間互相備份數據或者轉移數據,大部分情況下VPS上都已經安裝了Nginx或者類似的web server,直接將要傳輸的文件放到web server的目錄,然後在目標機器上執行:wget http://www.vpser.net/testfile.zip 就行了。當VPS上沒有安裝webserver和ftpserver的時候或感覺上面的方法比較麻煩,那麼用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表示保存在本地上的路徑和文件名。
 
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 地址.
Copyright © Linux教程網 All Rights Reserved