您好,登錄后才能下訂單哦!
tftp的特點:
1)基于UDP
2)適合小文件傳輸
3)基本的文件獲取和寫入功能
搭建服務器的步驟:
安裝軟件 xinetd,tftp ,tftpd
1)xinetd 服務器守護進程( the extended Internet services daemon)。inetd的升級版
2)tftp 簡單文件傳輸協議(Trivial File Transfer Protocol)。ftp的簡化版
3)tftpd tftp服務器(DARPA Trivial File Transfer Protocol server)。DARPA: 美國國防高級研究計劃局
語法:apt-get install
配置服務器
1)在路徑:/etc/xinetd.d/下用vi新建一個名為“tftp”的文件
2)“tftp”文件內輸入以下內容,并保存退出(需要root權限)
* 注意 格式嚴格如圖,“=”用“tab”鍵對齊。
在路徑:/var/下新建目錄“tftpboot”,賦最高權限777。該目錄即是服務器的主目錄【還是那句話:一切皆文件!服務器也是文件哦。】
注:目錄名及路徑取決于配置文件中的參數“server_args”
重啟tftp服務器
/etc/init.d/xinetd restart
搭建完成。
測試服務器的步驟:
在tftp服務器目錄(/var/tftpboot)下,新建一個文件,并輸入一些便于識別的內容。比如:test
另開一個終端(ctrl+alt+t),定向訪問服務器。
輸入:tftp 127.0.0.1
* 為什么是127.0.0.1,而不是其它IP呢?試著在終端里輸入ifconfig查看網絡信息,除了網卡eth0之外,還有一個lo的虛擬網卡,類型是local loopback(本地環回接口(或地址)),地址:127.0.0.1 。至于什么是本地環回地址,又是一堆亂七八糟的東西,詳見百度。
向服務器請求獲得剛才新建的文件test(需在tftp提示符下操作)
get test
【如果是以普通用戶登錄,無法在較上級的目錄下使用get命令,會提示權限不夠。所以,測試get的路徑是在/home/topeet下完成的。topeet即用戶名】
成功后,輸入q退出tftp控制臺。
在當前目錄下ls一下,并用vim打開該test文件,確認是不是用于測試的文件。
在開發板上測試服務器的步驟:
設置虛擬機相關網絡配置,使開發板的IP地址與虛擬機的IP地址在同一網段并能ping通。(我在這里將虛擬機網絡設置為橋接)
*開發板上的網絡適配器文件位于/etc/eth0-setting,通過vi打開并修改IP地址。
在開發板超級終端上輸入“tftp -g -l testlocal -r test 192.168.15.134”
【命令含義如下:
tftp: 傳輸命令
-g: 獲取 get(寫入 put)
-l: 本地 local
testlocal:存放在本地的文件名
-r:遠端 remote
test:遠端服務器目錄(/var/tftpboot)上的文件名
192.168.15.134:服務器IP地址】
注意:-g -l的輸入次序有要求,換成-l -g時終端會提示語法錯誤。
完成后,即在當前目錄下生成文件testlocal。實際操作時,發現主機文件權限在傳輸過程中發生了改變:
下圖是主機上文件exectest的權限:-rwxr-xr-x
但是到了終端,該文件的權限就成了:-rw-r--r--
對比可以發現,所有級別的操作權限被復位了,也就是不可操作。這是出于系統安全的一種設計嗎?
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。