利用ssh傳輸檔案

2021-06-16 23:47:50 字數 2428 閱讀 8876

相信各位vpser在使用vps時會經常在不同vps間互相備份資料或者轉移資料,大部分情況下vps上都已經安裝了nginx或者類似的web server,直接將要傳輸的檔案放到web server的目錄,然後在目標機器上執行:wget 就行了。當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表示儲存在本地上的路徑和檔名。

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 位址 .

2、上傳本地檔案到伺服器

scp /path/filename username@servername:/path

例如scp /var/www/test.php  [email protected]:/var/www/  把本機/var/www/目錄下的test.php檔案上傳到192.168.0.101這台伺服器上的/var/www/目錄中

例如:scp -r [email protected]:/var/www/test  /var/www/  

4、上傳目錄到伺服器

scp  -r local_dir username@servername:remote_dir

例如:scp -r test  [email protected]:/var/www/   把當前目錄下的test目錄上傳到伺服器的/var/www/ 目錄

注:目標伺服器要開啟寫入許可權。

利用ssh傳輸檔案

在linux下一般用scp這個命令來通過ssh傳輸檔案。而如果你的工作環境是windows的話,那麼可以選擇用 secure crt,或者putty 這樣的ssh登入工具來進行傳輸.對於linux環境 一 利用scp傳輸檔案 scp username servername path filename...

利用ssh傳輸檔案

在linux下一般用scp這個命令來通過ssh傳輸檔案。2 上傳本地檔案到伺服器 scp path filename username servername path 例如scp var www test.php root 192.168.0.101 var www 把本機 var www 目錄下的...

利用ssh傳輸檔案

在linux下一般用scp這個命令來通過ssh傳輸檔案。2 上傳本地檔案到伺服器 scp path filename username servername path 例如scp var www test.php root 192.168.0.101 var www 把本機 var www 目錄下的...