在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            嵌入式根文件制作方法

            作者: 時(shí)間:2016-11-26 來源:網(wǎng)絡(luò) 收藏
            (一):首先linux根文件系統(tǒng)的制作需要的開發(fā)環(huán)境。

            1:移植Linux內(nèi)核版本: linux-3.0.1 (只要能用就行)
            2:交叉編譯工具:arm-linux-gcc 4.3.2(任選)
            3:文件系統(tǒng)制作工具:Busybox-1.13.3(任選)
            4:etc.tar.gz
            (二):交叉編譯環(huán)境的搭建(這一步我在我的博客其他文章里面有 詳細(xì)的搭建過程,很簡單滴~)
            (三):創(chuàng)建根文件系統(tǒng)的目錄
            1:在home目錄下面新建一個(gè)文件夾rootfs

            本文引用地址:http://www.biyoush.com/article/201611/321748.htm
            [root@localhost ~]# cd /home/
            [root@localhost home]# mkdir rootfs
            [root@localhost home]# cd rootfs/
            [root@localhost rootfs]# mkdir bin dev etc lib proc sbin sys usr mnt tmp var
            [root@localhost rootfs]# mkdir usr/bin usr/lib usr/sbin lib/modules
            說明:
            根文件系統(tǒng)是Linux啟動(dòng)的時(shí)候使用的第一個(gè)文件系統(tǒng),沒有他系統(tǒng)將無法正常的啟動(dòng)
            然而在這個(gè)根文件系統(tǒng)中又包含了一系列的目錄,接下來對(duì)這些目錄做一個(gè)簡單的介紹。其實(shí)這個(gè)大家都很懂的
            bin
            存放所有用戶都可以使用的、基本的命令。

            sbin
            存放的是基本的系統(tǒng)命令,它們用于啟動(dòng)系統(tǒng)、修復(fù)系統(tǒng)等。
            sys
            一些總線啊設(shè)備啊驅(qū)動(dòng)啊。等等都在這里。好像都是動(dòng)態(tài)生成的吧

            usr
            里面存放的是共享、只讀的程序和數(shù)據(jù)。

            proc
            這是個(gè)空目錄,常作為proc文件系統(tǒng)的掛載點(diǎn)。

            dev
            該目錄存放設(shè)備文件和其它特殊文件。

            etc
            存放系統(tǒng)配置文件,包括啟動(dòng)文件。

            lib
            存放共享庫和可加載塊(即驅(qū)動(dòng)程序),共享庫用于啟動(dòng)系統(tǒng)、運(yùn)行根文件系統(tǒng)中的可執(zhí)行程序。
            mnt
            用于臨時(shí)掛接某個(gè)文件系統(tǒng)的掛接點(diǎn),通常是空目錄。也可以在里面創(chuàng)建空的子目錄。
            boot
            引導(dǎo)加載程序使用的靜態(tài)文件

            home
            用戶主目錄,包括供服務(wù)賬號(hào)鎖使用的主目錄,如FTP

            opt
            給主機(jī)額外安裝軟件所擺放的目錄。

            root
            root用戶的主目錄

            tmp
            存放臨時(shí)文件,通常是空目錄。

            var
            存放可變的數(shù)據(jù)。

            2:創(chuàng)建設(shè)備文件
            [root@localhost rootfs]#cd dev/
            [root@localhost dev]# mknod -m 666 console c 5 1
            [root@localhost dev]# mknod -m 666 null c 1 3
            說明:mknod -m 666 console c 5 1
            console 為設(shè)備文件名,自己可以隨便取,c代表是字符型設(shè)備(可選b,塊設(shè)備)
            5是主設(shè)備號(hào) /dev/devices里面記錄現(xiàn)有的設(shè)備
            1是次設(shè)備號(hào)當(dāng)你要給兩個(gè)同樣的設(shè)備上一個(gè)驅(qū)動(dòng)的時(shí)候就要分了,從0開始,1就是第二個(gè)了 ,對(duì)于字符設(shè)備,次設(shè)備號(hào)就表示同類型設(shè)備的不同設(shè)備。666代表訪問的權(quán)限

            3:配置/etc/
            這里有兩種方法
            1:可以把系統(tǒng)上面的/etc/下面一些比較重要的文件拷貝過來
            2:也可以直接在網(wǎng)上下載一個(gè)etc.tar.gz
            #tar -zxvf etc.tar.gz
            將解壓出來的文件etc下面的東西全部拷貝到上面新建的根目錄下面/rootfs/etc/下面
            etc/inittab
            etc/profile
            etc/fstab
            etc/init.d/
            etc/init.d/rcS

            4:編譯內(nèi)核模塊
            首先進(jìn)入內(nèi)核目錄下面(內(nèi)核目錄和根文件系統(tǒng)目錄不是在同一個(gè)目錄下面的)
            # cd linux-3.0.1
            #make modules ARCH=arm CROSS_COMPILE=arm-linux-
            說明:在這一步出現(xiàn)一些問題,發(fā)現(xiàn)怎么編譯也不行,后來由下載了一個(gè)內(nèi)核,編譯通過
            5:安裝內(nèi)核模塊
            #make modules_install ARCH=arm INSTALL_MOD_PATH=/home/rootfs
            說明:實(shí)質(zhì)上是將內(nèi)核里面編譯好的模塊放在根文件系統(tǒng)目錄下面。
            6:配置busybox
            說明:關(guān)于busybox:(百度百科)
            busybox是一個(gè)集成了一百多個(gè)最長用linux命令和工具的軟件。BusyBox 包含了一些簡單的工具,例如ls、cat 和echo等等,還包含了一些更大、更復(fù)雜的工具,例如grep、find、mount 以及telnet。有些人將 BusyBox 稱為 Linux 工具里的瑞士軍刀。簡單的說BusyBox就好像是個(gè)大工具箱,它集成壓縮了 Linux 的許多工具和命令,也包含了 Android 系統(tǒng)的自帶的shell。
            # tar -xvzf busybox-1.13.3.tar.gz
            # cd busybox-1.13.3
            #make menuconfig
            說明:這一步是要配置busybox的圖形界面,使之生效,運(yùn)行這個(gè)命令可能會(huì)出錯(cuò),原因是因?yàn)槟銢]有
            安裝那個(gè)圖像界面的依賴庫,在終端里面輸入apt-get install libncurses5-dev 就ok了~
            Busybox Settings-----> build Options----->
            選中Build BusyBox as a static binary(no shared libs)
            Busybox Settings-----> InstallationOptions ------------>
            選中 “dont use /usr” 選中此項(xiàng)可以避免busybox被安裝到宿主系統(tǒng)的/usr目錄下,破壞宿主系統(tǒng)
            Busybox Installation Prefix(/home/fs/myrootfs) 這里要輸入busybox安裝的絕對(duì)路徑
            7:編譯安裝busybox
            #make ARCH=arm CROSS_COMPILE=arm-linux-
            #make install
            到現(xiàn)在為止,根文件系統(tǒng)就完全做好了,你可以把這個(gè)根文件系統(tǒng)制作成ramdisk系統(tǒng)
            8:、將根文件系統(tǒng)制作 成ramdisk

            先確保安裝genext2fs
            #genext2fs -b 8192 -d /home/fs/myrootfs/ ramdisk
            說明:這一步出現(xiàn)問題,后來發(fā)現(xiàn)是這個(gè)分配的空間太小,于是將8192改為120400
            #genext2fs -b /home/rootfs/ ramdisk
            #gzip -9 -f ramdisk
            這樣就可以將ramdisk.gz下載到開發(fā)板上面去了



            關(guān)鍵詞: 嵌入式根文件制作方

            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉