新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式Linux開發環境的搭建之:嵌入式開發環境的搭建

        嵌入式Linux開發環境的搭建之:嵌入式開發環境的搭建

        作者: 時間:2013-09-13 來源:網絡 收藏


        本文引用地址:http://www.104case.com/article/257141.htm

        接下來,需要創建一些重要文件。首先要創建/etc/inittab和/etc/fstab文件。inittab是Linux啟動之后第一個被訪問的腳本文件,而fstab文件是定義了文件系統的各個“掛接點”,需要與實際的系統相配合。接下來要創建用戶和用戶組文件。


        以上用busybox構造了文件系統的內容,下面要創建cramfs文件系統映像文件。制作cramfs映像文件需要用到的工具是mkcramfs。此時可以采用兩種方法,一種方法是使用我們所構建的文件系統(在目錄“/home/david/fs2410/cramfs”中),另一種方法是在已經做好的cramfs映像文件的基礎上進行適當的改動。下面的示例使用第二種方法,因為這個方法包含了第一種方法的所有步驟(假設已經做好的映像文件名為“fs2410.cramfs”)。


        首先用mount命令將映像文件掛載到一個目錄下,打開該目錄并查看其內容。


        [root@localhostfs2410]#mkdircramfs

        [root@localhostfs2410]#mountfs2410.cramgscramfs–oloop

        [root@localhostfs2410]#lscramfs

        bindevetchomeliblinuxrcprocQtopiaramdisksbintestshelltmpusrvar


        因為cramfs文件系統是只讀的,所以不能在這個掛載目錄下直接進行修改,因此需要將文件系統中的內容復制到另一個目錄中,具體操作如下所示:


        [root@localhostfs2410]#mkdirbackup_cramfs

        [root@localhostfs2410]#tarcvfbackup.cramfs.tarcramfs/

        [root@localhostfs2410]#mvbackup.cramfs.tarbackup_cramfs/

        [root@localhostfs2410]#umountcramfs

        [root@localhostfs2410]#cdbackup_cramfs

        [root@localhostbackup_cramfs]#tarzvfbackup.cramfs.tar

        [root@localhostbackup_cramfs]#rmbackup.cramfs.tar


        此時我們就像用busybox所構建的文件系統一樣,可以在backup_cramfs的cramfs子目錄中任意進行修改。例如可以添加用戶自己的程序:


        [root@localhostfs2410]#cp~/hellobackup_cramfs/cramfs/


        在用戶的修改工作結束之后,用下面的命令可以創建cramfs映像文件:


        [root@localhostfs2410]#mkcramfsbackup_cramfs/cramfs/new.cramfs


        接下來,就可以將新創建的new.cramfs映像文件燒入到開發板的相應位置了。


        2.NFS文件系統

        NFS為NetworkFileSystem的簡稱,最早是由Sun公司提出發展起來的,其目的就是讓不同的機器、不同的操作系統之間通過網絡可以彼此共享文件。NFS可以讓不同的主機通過網絡將遠端的NFS服務器共享出來的文件安裝到自己的系統中,從客戶端看來,使用NFS的遠端文件就像是使用本地文件一樣。在嵌入式中使用NFS會使應用程序的開發變得十分方便,并且不用反復地燒寫映像文件。


        NFS的使用分為服務端和客戶端,其中服務端是提供要共享的文件,而客戶端則通過掛載(“mount”)這一動作來實現對共享文件的訪問操作。下面主要介紹NFS服務端的使用。在嵌入式開發中,通常NFS服務端在宿主機上運行,而客戶端在目標板上運行。


        NFS服務端是通過讀入它的配置文件“/etc/exports”來決定所共享的文件目錄的。下面首先講解這個配置文件的書寫規范。


        在這個配置文件中,每一行都代表一項要共享的文件目錄以及所指定的客戶端對它的操作權限??蛻舳丝梢愿鶕鄳臋嘞?,對該目錄下的所有目錄文件進行訪問。配置文件中每一行的格式如下:


        [共享的目錄][客戶端主機名稱或IP][參數1,參數2…]


        在這里,主機名或IP是可供共享的客戶端主機名或IP,若對所有的IP都可以訪問,則可用“*”表示。這里的參數有很多種組合方式,常見的參數如表5.1所示。


        表5.1 常見參數

        選項

        參數含義

        rw

        可讀寫的權限

        ro

        只讀的權限

        no_root_squash

        NFS客戶端分享目錄使用者的權限,即如果客戶端使用的是root用戶,那么對于這個共享的目錄而言,該客戶端就具有root的權限

        sync

        資料同步寫入到內存與硬盤當中

        async

        資料會先暫存于內存當中,而非直接寫入硬盤


        如在本例中,配置文件“/etc/exports”的代碼如下:


        [root@localhostfs]#cat/etc/exports

        /root/workplace192.168.1.*(rw,no_root_squash)


        在設定完配置文件之后,需要啟動nfs服務和portmap服務,這里的portmap服務是允許NFS客戶端查看NFS服務在用的端口,在它被激活之后,就會出現一個端口號為111的sunRPC(遠端過程調用)的服務。這是NFS服務中必須實現的一項,因此,也必須把它開啟。如下所示:


        [root@localhostfs]#serviceportmapstart

        啟動portmap:[確定]

        [root@localhostfs]#servicenfsstart

        啟動NFS服務:[確定]

        關掉NFS配額:[確定]

        啟動NFS守護進程:[確定]

        啟動NFSmountd:[確定]


        可以看到,在啟動NFS服務的時候啟動了mountd進程。這是NFS掛載服務,用于處理NFS遞交過來的客戶端請求。另外還會激活至少兩個以上的系統守護進程,然后就開始監聽客戶端的請求,用“cat/var/log/messages”命令可以查看操作是否成功。這樣,就啟動了NFS的服務,另外還有兩個命令,可以便于使用NFS。


        其中一個是exportfs,它可以重新掃描“/etc/exports”,使用戶在修改了“/etc/exports”配置文件之后不需要每次重啟NFS服務。其格式為:

        linux相關文章:linux教程




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 宜宾县| 二连浩特市| 博湖县| 册亨县| 河曲县| 东乡| 耿马| 桂平市| 理塘县| 山东省| 松滋市| 呼玛县| 鄯善县| 尼玛县| 江山市| 景宁| 长汀县| 长治县| 新兴县| 视频| 宾阳县| 革吉县| 镇赉县| 光山县| 平塘县| 壶关县| 射阳县| 邵阳县| 叙永县| 拜城县| 甘德县| 永寿县| 阳山县| 洛阳市| 襄汾县| 东乡族自治县| 疏勒县| 织金县| 饶河县| 台北市| 宝丰县|