鍍金池/ 教程/ Linux/ scp 跨機(jī)遠(yuǎn)程拷貝
進(jìn)程管理工具
objdump 二進(jìn)制文件分析
scp 跨機(jī)遠(yuǎn)程拷貝
crontab 定時(shí)任務(wù)
readelf elf文件格式分析
pstack 跟蹤進(jìn)程棧
系統(tǒng)管理及IPC資源管理
vmstat 監(jiān)視內(nèi)存使用情況
strace 跟蹤進(jìn)程中的系統(tǒng)調(diào)用
sar 找出系統(tǒng)瓶頸的利器
ipcs 查詢進(jìn)程間通信狀態(tài)
ps 進(jìn)程查看器
性能優(yōu)化
wget 文件下載
top linux下的任務(wù)管理器
磁盤管理
size 查看程序內(nèi)存映像大小
free 查詢可用內(nèi)存
文件及目錄管理
iostat 監(jiān)視I/O子系統(tǒng)
性能監(jiān)控
程序構(gòu)建
學(xué)會(huì)使用命令幫助
gdb 調(diào)試?yán)?/span>
網(wǎng)絡(luò)工具
nm 目標(biāo)文件格式分析
lsof 一切皆文件
用戶管理工具
程序調(diào)試
ldd 查看程序依賴庫(kù)
文本處理

scp 跨機(jī)遠(yuǎn)程拷貝

scp是secure copy的簡(jiǎn)寫,用于在Linux下進(jìn)行遠(yuǎn)程拷貝文件的命令,和它類似的命令有cp,不過cp只是在本機(jī)進(jìn)行拷貝不能跨服務(wù)器,而且scp傳輸是加密的。當(dāng)你服務(wù)器硬盤變?yōu)橹蛔x read only system時(shí),用scp可以幫你把文件移出來(lái)。

類似的工具有rsync;scp消耗資源少,不會(huì)提高多少系統(tǒng)負(fù)荷,在這一點(diǎn)上,rsync就遠(yuǎn)遠(yuǎn)不及它了。rsync比scp會(huì)快一點(diǎn),但當(dāng)小文件多的情況下,rsync會(huì)導(dǎo)致硬盤I/O非常高,而scp基本不影響系統(tǒng)正常使用。

命令格式:

scp [參數(shù)] [原路徑] [目標(biāo)路徑]

命令參數(shù):

  • -1 強(qiáng)制scp命令使用協(xié)議ssh1
  • -2 強(qiáng)制scp命令使用協(xié)議ssh2
  • -4 強(qiáng)制scp命令只使用IPv4尋址
  • -6 強(qiáng)制scp命令只使用IPv6尋址
  • -B 使用批處理模式(傳輸過程中不詢問傳輸口令或短語(yǔ))
  • -C 允許壓縮。(將-C標(biāo)志傳遞給ssh,從而打開壓縮功能)
  • -p 留原文件的修改時(shí)間,訪問時(shí)間和訪問權(quán)限。
  • -q 不顯示傳輸進(jìn)度條。
  • -r 遞歸復(fù)制整個(gè)目錄。
  • -v 詳細(xì)方式顯示輸出。scp和ssh(1)會(huì)顯示出整個(gè)過程的調(diào)試信息。這些信息用于調(diào)試連接,驗(yàn)證和配置問題。
  • -c cipher 以cipher將數(shù)據(jù)傳輸進(jìn)行加密,這個(gè)選項(xiàng)將直接傳遞給ssh。
  • -F ssh_config 指定一個(gè)替代的ssh配置文件,此參數(shù)直接傳遞給ssh。
  • -i identity_file 從指定文件中讀取傳輸時(shí)使用的密鑰文件,此參數(shù)直接傳遞給ssh。
  • -l limit 限定用戶所能使用的帶寬,以Kbit/s為單位。
  • -o ssh_option 如果習(xí)慣于使用ssh_config(5)中的參數(shù)傳遞方式,
  • -P port 注意是大寫的P, port是指定數(shù)據(jù)傳輸用到的端口號(hào)
  • -S program 指定加密傳輸時(shí)所使用的程序。此程序必須能夠理解ssh(1)的選項(xiàng)。

使用說(shuō)明

從本地服務(wù)器復(fù)制到遠(yuǎn)程服務(wù)器

復(fù)制文件::

$scp local_file remote_username@remote_ip:remote_folder
$scp local_file remote_username@remote_ip:remote_file
$scp local_file remote_ip:remote_folder
$scp local_file remote_ip:remote_file

指定了用戶名,命令執(zhí)行后需要輸入用戶密碼;如果不指定用戶名,命令執(zhí)行后需要輸入用戶名和密碼;

復(fù)制目錄::

$scp -r local_folder remote_username@remote_ip:remote_folder
$scp -r local_folder remote_ip:remote_folder

第1個(gè)指定了用戶名,命令執(zhí)行后需要輸入用戶密碼; 第2個(gè)沒有指定用戶名,命令執(zhí)行后需要輸入用戶名和密碼;

從遠(yuǎn)程復(fù)制到本地的scp命令與上面的命令一樣,只要將從本地復(fù)制到遠(yuǎn)程的命令后面2個(gè)參數(shù)互換順序就行了。

使用示例

實(shí)例1:從遠(yuǎn)處復(fù)制文件到本地目錄

$scp root@10.6.159.147:/opt/soft/demo.tar /opt/soft/

說(shuō)明: 從10.6.159.147機(jī)器上的/opt/soft/的目錄中下載demo.tar 文件到本地/opt/soft/目錄中

實(shí)例2:從遠(yuǎn)處復(fù)制到本地

$scp -r root@10.6.159.147:/opt/soft/test /opt/soft/

說(shuō)明: 從10.6.159.147機(jī)器上的/opt/soft/中下載test目錄到本地的/opt/soft/目錄來(lái)。

實(shí)例3:上傳本地文件到遠(yuǎn)程機(jī)器指定目錄

$scp /opt/soft/demo.tar root@10.6.159.147:/opt/soft/scptest

說(shuō)明: 復(fù)制本地opt/soft/目錄下的文件demo.tar 到遠(yuǎn)程機(jī)器10.6.159.147的opt/soft/scptest目錄

實(shí)例4:上傳本地目錄到遠(yuǎn)程機(jī)器指定目錄

$scp -r /opt/soft/test root@10.6.159.147:/opt/soft/scptest

說(shuō)明: 上傳本地目錄 /opt/soft/test到遠(yuǎn)程機(jī)器10.6.159.147上/opt/soft/scptest的目錄中