新聞中心

        編譯busybox

        作者: 時間:2011-02-25 來源:網絡 收藏
        編譯busybox

        1,busybox簡介

        busybox是一個集成了一百多個最常用linux命令和工具的軟件,他甚至還集成了一個http服務器和一個telnet服務器,而所有這一切功能卻只有區區1M左右的大小.我們平時用的那些linux命令就好比是分力式的電子元件,而busybox就好比是一個集成電路,把常用的工具和命令集成壓縮在一個可執行文件里,功能基本不變,而大小卻小很多倍,在linux應用中,busybox有非常廣的應用,另外,大多數linux發行版的安裝程序中都有busybox的身影,安裝linux的時候案ctrl alt F2就能得到一個控制臺,而這個控制臺中的所有命令都是指向busybox的鏈接.
        Busybox的小身材大作用的特性,給制作一張軟盤的linux帶來了及大方便.

        2,busybox的用法

        可以這樣用busybox
        #busybox ls
        他的功能就相當運行ls命令
        最常用的用法是建立指向busybox的鏈接,不同的鏈接名完成不同的功能.
        #ln -s busybox ls
        #ln -s busybox rm
        #ln -s busybox mkdir

        然后分別運行這三個鏈接:
        #./ls
        #./rm
        #./mkdir

        就可以分別完成了ls rm 和mkdir命令的功能.雖然他們都指向同一個可執行程序busybox
        但是只要鏈接名不同,完成的功能就不同,busybox就是這么的神奇.
        很多linux網站都提供busybox的源代碼下載.目前版本是busybox1.0正式版.

        3,配置busybox

        busybox的配置程序和linux內核菜單配置方式簡直一模一樣.熟悉用make menuconfig方式配置linux內核的朋友很容易上手.

        #cp busybox-1.00.tar.gz /babylinux
        #cd /babylinux
        #tar xvfz busybox-1.00.tar.gz
        #cd busybox-1.00
        #make menuconfig

        下面是需要編譯進busybox的功能選項,其他的可以根據需要自選,但是同樣不要太貪心.
        General Configuration應該選的選項
        Show verbose applet usage messages
        Runtime SUID/SGID configuration via /etc/busybox.conf

        Build Options
        Build BusyBox as a static binary (no shared libs)
        這個選項是一定要選擇的,這樣才能把busybox編譯成靜態鏈接的可執行文件,運行時才獨立于其他函數庫.否則必需要其他庫文件才能運行,在單一個linux內核不能使他正常工作.

        Installation Options
        Don't use /usr
        這個選項也一定要選,否則make install 后busybox將安裝在原系統的/usr下,這將覆蓋掉系統原有的命令.選擇這個選項后,make install后會在busybox目錄下生成一個叫_install的目錄,里面有busybox和指向他的鏈接.

        其他選項都是一些linux基本命令選項,自己需要哪些命令就編譯進去,一般用默認的就可以了.

        配置好后退出并保存.

        4,編譯并安裝busybox

        #make
        #make install

        編譯好后在busybox目錄下生成子目錄_install,里面的內容:
        drwxr-xr-x 2 root root 4096 11月 24 15:28 bin
        lrwxrwxrwx 1 root root 11 11月 24 15:28 linuxrc -> bin/busybox
        drwxr-xr-x 2 root root 4096 11月 24 15:28 sbin
        其中可執行文件busybox在bin目錄下,其他的都是指向他的符號鏈接.
        我編譯出來的busybox可執行文件是935K,加上符號鏈接,整個_install目錄是952K.加上845K的內核不是已經超過1440K了嗎?別擔心,我們將對整個根文件系統做大幅度的壓縮.
        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 衡阳市| 藁城市| 丰城市| 普兰县| 黄浦区| 灵石县| 抚顺市| 兴海县| 灵武市| 溆浦县| 葫芦岛市| 新绛县| 仲巴县| 汝南县| 娱乐| 开平市| 司法| 海门市| 商洛市| 乌兰察布市| 安陆市| 阿克陶县| 光山县| 石棉县| 深泽县| 德惠市| 龙口市| 清远市| 酒泉市| 正宁县| 紫云| 望都县| 台北市| 宝坻区| 固原市| 遂宁市| 正阳县| 故城县| 竹北市| 衡阳县| 无锡市|