Linux SSh scp使用【遠端檔案/目錄的傳輸】

coolhe發表於2011-07-20
一:Linux ssh scp的簡介及作用
scp就是secure copy的簡寫,用於在linux下進行遠端拷貝檔案的命令,和它類似的命令有cp,不過cp只是在本機進行拷貝不能跨伺服器. 有時我們需要獲得遠端伺服器上的某個檔案,該伺服器既沒有配置ftp伺服器,也沒有做共享,無法通過常規途徑獲得檔案時,只需要通過簡單的scp命令便可達到目的。
一、Linux ssh scp 的使用方法
 
1將本機檔案複製到遠端伺服器上
#scp /home/test/item.txt root@192.168.1.129:/etc/test
/home/test/ 本地檔案的絕對路徑;
item.txt 要複製到伺服器上的本地檔案 ;
root 通過root使用者登入到遠端伺服器(也可以使用其他擁有同等許可權的使用者) ;
192.168.1.129 遠端伺服器的ip地址(也可以使用域名或機器名) ;
/etc/test將本地檔案複製到位於遠端伺服器上的路徑 ;
如圖通過root使用者登入遠端伺服器,輸入yes表示同意建立ssh連線 ;
按提示輸入root使用者的密碼 ;
如圖所示建立連線後開始傳輸檔案,顯示百分比、實際時間和傳送速度等資訊 ;
2將本地目錄上傳到遠端伺服器上:
# scp -r /home/test/  root@192.168.1.129:/etc/test

-r 參數列示遞迴複製(即複製該目錄下面的檔案和目錄);/home/test/表示準備要上傳的目錄,root@192.168.1.129:/etc/test 表示使用root使用者登入遠端伺服器,:/etc/test 表示儲存在遠端伺服器上的目錄位置。


3將遠端伺服器上的檔案複製到本機
#scp remote@www.abc.com:/usr/local/sin.sh /home/test
remote 通過remote使用者登入到遠端伺服器(也可以使用其他擁有同等許可權的使用者)
www.abc.com 遠端伺服器的域名(當然也可以使用該伺服器ip地址)
/usr/local/sin.sh 欲複製到本機的位於遠端伺服器上的檔案
/home/testr 將遠端檔案複製到本地的絕對路徑
 
4將遠端伺服器上的目錄複製到本機
# scp -r  root@www.vpser.net:/user/local/  /home/test/

r 參數列示遞迴複製(即複製該目錄下面的檔案和目錄);root@www.vpser.net 表示使用root使用者登入遠端伺服器www.vpser.net,:/user/local/ 表示遠端伺服器上的目錄,最後面的/home/test/表示儲存在本地上的路徑。

 5可能有用的幾個引數 :

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

-C 使能壓縮選項 .

-4 強行使用 IPV4 地址 .

-6 強行使用 IPV6 地址


注意兩點:
1.如果遠端伺服器防火牆有特殊限制,scp便要走特殊埠,具體用什麼埠視情況而定,命令格式如下:
#scp -p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator
2.使用scp要注意所使用的使用者是否具有可讀取遠端伺服器相應檔案的許可權。 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3090/viewspace-702619/,如需轉載,請註明出處,否則將追究法律責任。

相關文章