資源描述:
《linux 上的常用文件傳輸方式介紹與比較》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、Linux上的常用文件傳輸方式介紹與比較 ftp ftp命令使用文件傳輸協(xié)議(FileTransferProtocol,FTP)在本地主機(jī)和遠(yuǎn)程主機(jī)之間或者在兩個(gè)遠(yuǎn)程主機(jī)之間進(jìn)行文件傳輸?! TP協(xié)議允許數(shù)據(jù)在不同文件系統(tǒng)的主機(jī)之間傳輸。盡管這個(gè)協(xié)議在傳輸數(shù)據(jù)上提供了高適應(yīng)性,但是它并沒有嘗試去保留一個(gè)特定文件系統(tǒng)上的文件屬性(例如一個(gè)文件的保護(hù)模式或者修改次數(shù))。而且FTP協(xié)議很少對(duì)一個(gè)文件系統(tǒng)的整體結(jié)構(gòu)作假定,也不提供這樣的功能,比如遞歸的拷貝子目錄。在使用ftp命令時(shí),需要注意FTP協(xié)議的這些特性。當(dāng)需要保留文件屬性或者需要遞歸的拷貝子目錄時(shí),可以使用rcp/s
2、cp等命令?! 』菊Z法 ftp命令的一般格式如下: $ftp主機(jī)名/IP 其中主機(jī)名/IP是所要連接的遠(yuǎn)程機(jī)的主機(jī)名或IP地址。在命令行中,主機(jī)名屬于可選項(xiàng),如果指定主機(jī)名,ftp將試圖與遠(yuǎn)程機(jī)的ftp服務(wù)程序進(jìn)行連接;如果沒有指定主機(jī)名,ftp將給出提示符,等待用戶輸入命令:$ ftp ftp > 此時(shí)在ftp>提示符后面輸入open子命令加主機(jī)名或IP地址,將試圖連接指定的主機(jī)。不管使用哪一種方法,如果連接成功,需要在遠(yuǎn)程機(jī)上登錄。用戶如果在遠(yuǎn)程機(jī)上有帳號(hào),就可以通過ftp使用這一帳號(hào)并需要提供口令。在遠(yuǎn)程機(jī)上的用戶帳號(hào)的讀寫權(quán)限決定該用戶在遠(yuǎn)程
3、機(jī)上能下載什么文件和能將上載文件放到哪個(gè)目錄中。在遠(yuǎn)程站點(diǎn)上登錄成功后,在ftp>提示符下可以自由使用ftp提供的各種子命令,最常用的子命令如下表所示?! ”?.ftp子命令命令描述ls列出遠(yuǎn)程機(jī)的當(dāng)前目錄cd在遠(yuǎn)程機(jī)上改變工作目錄lcd在本地機(jī)上改變工作目錄ascii設(shè)置文件傳輸方式為ASCII模式binary設(shè)置文件傳輸方式為二進(jìn)制模式close終止當(dāng)前的ftp會(huì)話get(mget)從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)put(mput)從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)open連接遠(yuǎn)程ftp站點(diǎn)quit斷開與遠(yuǎn)程機(jī)的連接并退出ftp?顯示本地幫助信息!轉(zhuǎn)到Shell中promp
4、t1關(guān)閉交互模式 使用實(shí)例: 利用編寫ftp腳本可以自動(dòng)完成文件傳輸任務(wù)。具體方法是使用ftp命令的-in選項(xiàng),并重定向ftp命令的輸入?,F(xiàn)在我們來編寫一個(gè)利用ftp登錄到遠(yuǎn)程服務(wù)器,并以bin的文件格式,在/home目錄下,下載file1.log以及file2.sh至本機(jī)/opt/ibm/,并從本地/opt目錄上傳文件file3.jave至遠(yuǎn)程服務(wù)器/home的自動(dòng)化腳本。ftp -ni <<+ open $IP user $USERNAME $PASSE/.ssh/id_rsa.pub,私有密鑰保存在$HOME/.ssh/id_rsa。然后把這個(gè)密鑰
5、對(duì)中的公共密鑰的內(nèi)容復(fù)制到要訪問的機(jī)器上的$HOME/.ssh/authorized_keys文件中。這樣,下次再訪問那臺(tái)機(jī)器時(shí),就不用輸入密碼了。 使用實(shí)例: Copy本地文件/etc/eva.log,到遠(yuǎn)程機(jī)器sysB,用戶user的家目錄下 scp/etc/eva.logusersysB:/home/user copy遠(yuǎn)程機(jī)器sysB上的文件/home/uesr/eva.log,到本地的/etc目錄下,并保持文件屬性不變 scp-pusersysB:/home/uesr/eva.log/etc copysysB上的目錄/home/user,到本地/home
6、/user/tmp,<nee/user/tmp/user> scp-rusersysB:/home/user/home/user/tmp ba.org/上下載安裝rsync的最新版本。使用時(shí)需將rsync分別安裝于服務(wù)端和客戶端,服務(wù)端和客戶端使用同一個(gè)rsync軟件包來實(shí)現(xiàn)遠(yuǎn)程鏡像和定期同步更新。需要說明的是一個(gè)rsync服務(wù)端可同時(shí)備份多個(gè)客戶端的數(shù)據(jù);多個(gè)服務(wù)端備份一個(gè)客戶端的數(shù)據(jù)。rsync默認(rèn)端口為873,服務(wù)器在該端口接收客戶的匿名或者認(rèn)證方式的備份請(qǐng)求。 rsync服務(wù)端在使用之前需要進(jìn)行必要的配置,其配置文件為/etc/rsyncd.con
7、f,進(jìn)行認(rèn)證、訪問、日志記錄等控制。配置文件包括全局參數(shù)、模塊參數(shù)的設(shè)置。rsyncd.conf文件中[module]之前的所有參數(shù)為全局參數(shù),也可以在全局參數(shù)部分定義模塊參數(shù),在這種情況下該參數(shù)的值就是所有模塊的默認(rèn)值。全局參數(shù)設(shè)置程序使用的端口號(hào),指定消息文件、日志文件pid文件以及發(fā)送日志消息的級(jí)別。模塊參數(shù)主要定義服務(wù)端哪個(gè)目錄需要被同步。用戶可根據(jù)不同的需要指定多個(gè)模塊,每個(gè)模塊對(duì)應(yīng)需要備份的一個(gè)目錄樹,即若有N個(gè)需要備份的目錄樹,則需要N個(gè)模塊與之對(duì)應(yīng)。模塊中可以定義許多參數(shù),常見參數(shù)如下?! ”?.r