Linux在兩個(gè)服務(wù)器直接傳文件的操作方法
目錄
- 1.當(dāng)從一個(gè)遠(yuǎn)程服務(wù)器傳輸文件到另一個(gè)服務(wù)器上(你想傳給別人文件)
- 2.在本地服務(wù)器,從另一個(gè)服務(wù)器中獲取文件(你想從別人獲取文件)
scp是secure copy
的簡寫, 是 linux 系統(tǒng)下基于 ssh 登陸進(jìn)行安全的遠(yuǎn)程文件拷貝命令。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加強(qiáng)版。
因?yàn)閟cp傳輸是加密的,可能會(huì)稍微影響一下速度。另外,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)正常使用。
場景:假設(shè)我現(xiàn)在有兩臺(tái)服務(wù)器(這里的公網(wǎng)ip和內(nèi)網(wǎng)ip相互傳都可以,當(dāng)然用內(nèi)網(wǎng)ip相互傳比較快,**公網(wǎng)ip不便公布)
Sessions1: 47.95.208.2**內(nèi)網(wǎng):172.17.31.174User:rootSessions2: 47.94.92.2**內(nèi)網(wǎng):172.17.31.173User:root
這里常用的兩種辦法:
1.當(dāng)從一個(gè)遠(yuǎn)程服務(wù)器傳輸文件到另一個(gè)服務(wù)器上(你想傳給別人文件)
現(xiàn)在我們登錄172.17.31.173這臺(tái)服務(wù)器,想把當(dāng)前的 test.mysql
傳給別人( 172.17.31.174
這臺(tái)服務(wù)器)
hostname -i
可以查看當(dāng)前ip
命令:
scp test.sql root@172.17.31.174:/data/
如果兩臺(tái)服務(wù)器直接沒有配置免密登錄的話需要輸入密碼。
這里的ip我用的是內(nèi)網(wǎng)ip,所以傳的快點(diǎn)兒,走公網(wǎng)的話就慢很多(親測)
傳輸完成!
在ip為后綴174的服務(wù)器查看一下:
附錄:
scp [可選參數(shù)] file_source file_target
常用的-r,-C
-1: 強(qiáng)制scp命令使用協(xié)議ssh1-2: 強(qiáng)制scp命令使用協(xié)議ssh2-4: 強(qiáng)制scp命令只使用IPv4尋址-6: 強(qiáng)制scp命令只使用IPv6尋址-B: 使用批處理模式(傳輸過程中不詢問傳輸口令或短語)-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ù)傳輸用到的端口號-S program: 指定加密傳輸時(shí)所使用的程序。此程序必須能夠理解ssh(1)的選項(xiàng)。
2.在本地服務(wù)器,從另一個(gè)服務(wù)器中獲取文件(你想從別人獲取文件)
在173服務(wù)data目錄中新建一個(gè)local_test 用來測試文件夾(測試-r參數(shù)的)
然后轉(zhuǎn)到本地服務(wù)器(*174這一臺(tái)),這里的本地服務(wù)器是相對的。
命令:
scp -r root@172.17.31.173:/data/local_test /data/
拷貝文件夾則需要在scp后面加上-r
大白話描述:
scp root@遠(yuǎn)程的服務(wù)器Ip:文件路徑 存放路徑
在遠(yuǎn)程服務(wù)器上拷貝到本地服務(wù)器(登錄遠(yuǎn)程服務(wù)器傳給別人(本地)文件文件)
命令:
scp test.sql root@172.17.31.174:/data/
需要?jiǎng)e人(本地)的ip地址傳輸
在本地服務(wù)器登錄,從遠(yuǎn)程服務(wù)器獲取文件(自己主動(dòng)去別人哪里獲取文件)
命令:
scp -r root@172.17.31.173:/data/local_test /data/
需要遠(yuǎn)程ip(別人)地址獲取文件
到此這篇關(guān)于Linux在兩個(gè)服務(wù)器直接傳文件的操作方法的文章就介紹到這了,更多相關(guān)Linux服務(wù)器傳文件內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
