linux-scp 遠端拷貝報錯原因
剛拿到一臺重灌後的伺服器,遠端ssh都正常,但是一scp拷貝東西就報錯:
本地確定是有scp命令的,而且如果是本地沒有scp不會報後面那句lost connection,因此就是遠端沒有scp這個命令。因此在遠端伺服器上裝上openssh-clients就可以了。那這是為什麼呢? |
scp原理
scp是rcp(remote file copy)在ssh上面的實現,rcp和scp在協議層面上沒有區別, 不同在於傳輸時使用了rlogin。
scp會先解析命令列引數,然後開啟一個到遠端伺服器的連線, 再通過這個連線在遠端另起一個scp程式。遠端的scp程式可以是源端,也可以是目的地(看你拷貝檔案的方向)。
資料提供者, 源頭, 以源模式執行的scp程式後面會被稱作是源端;
資料的目的地, 歸宿, 以宿模式執行的scp程式後面會被稱作是宿端。
源端讀取檔案並通過SSH連線傳送到另一端,宿端通過SSH連線接收檔案。
源模式和宿模式是通過-f (from)和 -t (to)這兩個隱藏選項來啟動的。
這兩個引數僅供命令內部使用, 因此沒寫進文件。除了這兩個隱藏引數外, 還有另一個隱藏引數-d, 表示複製的物件是一個目錄而不是檔案。
總結
從上面的原理就可以看出,ssh只是提供一個通道,實際拷貝東西的還是scp之間的通訊,因此本地和遠端都必須有scp的命令,否則無法遠端拷貝檔案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2220295/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SCP和Rsync遠端拷貝的幾個技巧
- linux採用scp命令拷貝檔案到本地,拷貝本地檔案到遠端伺服器Linux伺服器
- 淺拷貝&深拷貝
- python 指標拷貝,淺拷貝和深拷貝Python指標
- 遠端桌面時怎麼拷貝不了檔案到伺服器?伺服器
- 淺拷貝與深拷貝
- 淺拷貝和深拷貝
- 深拷貝和淺拷貝
- C++拷貝建構函式(深拷貝,淺拷貝)C++函式
- jquery之物件拷貝深拷貝淺拷貝案例講解jQuery物件
- 一文搞懂Java引用拷貝、淺拷貝、深拷貝Java
- Java深拷貝和淺拷貝Java
- Python淺拷貝與深拷貝Python
- 物件深拷貝和淺拷貝物件
- JavaScript深拷貝和淺拷貝JavaScript
- javascript 淺拷貝VS深拷貝JavaScript
- JavaScript 深度拷貝和淺拷貝JavaScript
- js 淺拷貝和深拷貝JS
- JS深拷貝與淺拷貝JS
- iOS深拷貝和淺拷貝iOS
- python深拷貝與淺拷貝Python
- js 深拷貝和淺拷貝JS
- JavaScript淺拷貝和深拷貝JavaScript
- 淺談深拷貝與淺拷貝?深拷貝幾種方法。
- 記憶體拷貝引起的錯誤記憶體
- 正則以及淺拷貝深拷貝
- 談談深拷貝與淺拷貝
- 賦值、淺拷貝與深拷貝賦值
- JavaScript之深拷貝和淺拷貝JavaScript
- ECMAScript-淺拷貝和深拷貝
- C++淺拷貝和深拷貝C++
- 深拷貝、淺拷貝與Cloneable介面
- 實現物件淺拷貝、深拷貝物件
- js的深拷貝和淺拷貝JS
- 聊聊物件深拷貝和淺拷貝物件
- React之淺拷貝與深拷貝React
- go slice深拷貝和淺拷貝Go
- js之淺拷貝和深拷貝JS