摘 要:嵌入式系統(tǒng)設計的產(chǎn)品需要具備網(wǎng)絡功能需求日益增多,并且Linux系統(tǒng)內(nèi)核及其上執(zhí)行的各種網(wǎng)絡軟件,可以用來運行高可靠、高可用網(wǎng)絡服務的軟件,這也正是Linux更適合網(wǎng)絡應用程序的原因。本文將對如何在嵌入式Linux系統(tǒng)中設置及配置網(wǎng)絡服務進行闡述。
關鍵詞:嵌入式Linux;網(wǎng)絡服務
1 引言
隨著信息化、網(wǎng)絡化、智能化的發(fā)展,嵌入式技術(shù)得到了極大的發(fā)展,Linux操作系統(tǒng)以其穩(wěn)定性好,可靠性高,源代碼公開,可剪裁,版權(quán)免費等優(yōu)點,已成為嵌入式領域的一股新興力量,具有巨大的市場潛力和商業(yè)價值。利用嵌入式Linux系統(tǒng)設計的各種產(chǎn)品需要具備網(wǎng)絡功能的支持,主流網(wǎng)絡服務主要有internet super-server、SNMP遠程管理、使用Telnet進行網(wǎng)絡登錄等。
2 Inter Super-Server服務
網(wǎng)絡服務程序會影響來自特定端口號的服務請求,為讓網(wǎng)絡服務正常運行,必須有個運行中的進程在相應的端口號上監(jiān)聽服務請求。大多數(shù)程序都是利用Inter Super-Server程序,它負責堅挺所有已經(jīng)啟用的網(wǎng)絡服務器的端口。在Linux系統(tǒng)中主要有兩個程序可用,即:inetd和xinetd。后者將逐漸取代前者,但是前者的體積小更適合嵌入式Linux系統(tǒng)。
Inetd是netkit套件的一部分其中netkit-base套件除了附帶inetd外,還包括了ping。我們要先下載netkit-base并取出放到${PRJROOT}/sysapps目錄,修改configure腳本。如果不修改該腳本,測試程序?qū)o法在主機上執(zhí)行。修改方法是將__conftest測試程序前都加#以注釋掉對應測試程序。另外inetd的建立還需要glibc或uClibc。
Xinetd比inetd更優(yōu)秀,因為它還允許某種安全許可。我們要先下載xinetd套件,并解壓縮放到${PRJROOT}/sysapps目錄中,其中uClibc必須支持RPC和C99才能保證xinetd順利編譯。接著進行設定、編譯以及安裝xinetd,xinetd套件會把二進制文件安裝到${TARGET_PREFIX}目錄。
兩者在安裝后都需要添加一行設定(::once:/usr/sbin/xinetd),但是區(qū)別在于xinetd只能被啟動成監(jiān)控程序,所以,如果xinetd終止后,init無法再次啟動xinetd。
3 SNMP遠程管理
簡易網(wǎng)絡管理協(xié)議讓我們能通過TCP/IP網(wǎng)絡進行設備的遠程管理。這對于我們嵌入式設備的網(wǎng)絡應用和網(wǎng)絡維護提供方便。操作者不必在設備旁邊,通過遠程監(jiān)控目標板自動監(jiān)控工作。若我們的設備中的目標板是一個復雜網(wǎng)絡的一部分,亦或是你需要隨時從遠程監(jiān)控它的狀態(tài)。Net-SNMP是個相當大的套件,它包含很多軟件組件。我們首先下載套件并且將它解壓放到${PRJROOT}/sysapps目錄。將Net-SNMP設置成使用glibc進行建立的工作。Net-SNMP也可鏈接uClibc,但是需要將uClibc設定成支持IPv6。如果不支持,可以在Net-SNMP的配置命令行上加入—disable-ipv6選項,讓Net-SNMP停止對IPv6的支持即可。配置命令腳本執(zhí)行完畢后,接著進行建立和安裝Net-SNMP組件。
代碼如下:
$make prefix=${TARGET_PREFIX} exec_prefix=${TARGET_PREFIX} install
其中,值得注意的是SNMP代理執(zhí)行時仍會讀取/usr/local/share/snmp配置文件,exec_prefix參數(shù)如果未加入整個安裝將會失敗。
4 Telnet進行網(wǎng)絡登錄
Telnet登錄方式管理服務是最普遍的管理方法之一,一旦目標板系統(tǒng)連接網(wǎng)絡后,Telnet協(xié)議是存取目標板的最直接有效的方法。啟用遠程登錄功能,必須執(zhí)行Telnet監(jiān)控程序。能夠在嵌入式Linux系統(tǒng)中運行的Telnet有兩種:telnetd和utelnetd。系統(tǒng)資源的豐富與否將決定我們選擇哪個Telnet程序,如果我們資源非常有限,我們可以選擇utelnet。Telnet的登錄管理方法不是安全的管理方式,尤其在Internet上使用。
5 結(jié)束語
總之,嵌入Linux系統(tǒng)設計產(chǎn)品要想得到更快速和更廣泛的普及,它必須要有很好的網(wǎng)絡應用和網(wǎng)絡服務。本文通過對Inter Super-Server、SNMP和Telnet三種服務的安裝過程進行了闡述,為開發(fā)人員提供了基礎服務安裝的指導,同時也對嵌入式系統(tǒng)中網(wǎng)絡服務的發(fā)展提供了依據(jù)。
[參考文獻]
[1]馬坤,楊波.Telnet協(xié)議在網(wǎng)管系統(tǒng)中的應用[J].信息技術(shù)與信息化, 2006(04).
[2]裴鵬真,孫運強.網(wǎng)絡管理中一種Telnet用戶帳戶截獲的穩(wěn)定方法[J]. 信息技術(shù),2008(05).
[3]張建軍,陳志雄,韓江洪,張利.Linux平臺下串行口全雙工通訊的實現(xiàn)[J].合肥工業(yè)大學學報(自然科學版),2003(02).
[4]馬龍,張思東,張宏科.SNMP代理軟件在IPv6環(huán)境下的實現(xiàn)[J].中國數(shù)據(jù)通信,2003(08).
[5]許晨輝.嵌入式軟構(gòu)件技術(shù)的研究與應用[D].西北工業(yè)大學,2003.