訂閱
糾錯
加入自媒體

Linux原創(chuàng)干貨:Linux scp命令

概念

scp是secure copy的簡寫, 是 linux 系統(tǒng)下基于 ssh 登陸進行安全的遠程文件拷貝命令。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加強版。

因為scp傳輸是加密的,可能會稍微影響一下速度。另外,scp還非常不占資源,不會提高多少系統(tǒng)負荷,在這一點上,rsync就遠遠不及它了。雖然 rsync比scp會快一點,但當小文件眾多的情況下,rsync會導(dǎo)致硬盤I/O非常高,而scp基本不影響系統(tǒng)正常使用。

語法scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2

簡易寫法:

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

本例在vmware打開了兩個ubuntu。

ubuntu A 地址:192.168.6.186,并開啟了ssh服務(wù)器 ;

ubuntu B 地址:192.168.6.111。

安裝ssh命令如下:

apt-get install openssh-server

ssh詳細安裝步驟可以參考博文:《Ubuntu18.04搭建ssh服務(wù)器》

開啟ssh服務(wù)器指令【ubuntu A】:

 /etc/init.d/ssh restart

執(zhí)行結(jié)果如下:

例1 下載文件

把192.168.6.186服務(wù)器的t.log拷貝到當前服務(wù)器的當前目錄下;

scp -r root@192.168.6.186:/home/peng/test/t.log ./

執(zhí)行結(jié)果如下:

例2 上傳文件scp icons.png root@192.168.1.1:/root/下載   #本機文件,copy遠程服務(wù)器

執(zhí)行結(jié)果:

例3 下載目錄以root用戶登錄ubuntu A的ssh服務(wù)器,并將文件夾copy到本地
scp -r root@192.168.6.186:/home/peng/driver/list  /home/peng/test

執(zhí)行結(jié)果【ubuntu B】:

例4 上傳目錄

將本地文件copy到服務(wù)器,添填寫用戶,默認當前用戶

scp /home/peng/test/t.log 192.168.6.186:/home/peng/test

執(zhí)行結(jié)果【ubuntu B】:


看到錯誤提示:Permission denied,這個錯誤是因為服務(wù)器A的文件夾/home/peng/test沒有修改權(quán)限。

進入ubuntu A,修改對應(yīng)文件夾訪問權(quán)限:

再次執(zhí)行命令 【ubuntu B】:

顯示傳輸?shù)奈募緐buntu A】

例5 指定端口

使用指定端口從本地拷到遠程服務(wù)器

scp -P 20022 -r /home/peng/test/list root@192.168.6.186:/home/peng/test
例6 使用證書

使用證書登錄,并遞歸的將遠程目錄下載到本地,同時指定了所需要的端口號。

scp -r -i /Users/test/wx_Document/private.crt -P 2323 root@10.135.178.6:/data/htdocs/www/logs /Users/local  

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    掃碼關(guān)注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯
    x
    *文字標題:
    *糾錯內(nèi)容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網(wǎng)安備 44030502002758號