linux用busybox制作ramdisk的腳本分享 |
發(fā)布時(shí)間: 2012/8/10 15:07:31 |
目前的嵌入式開發(fā)大多采用linux操作系統(tǒng),linux操作系統(tǒng)運(yùn)行的一般方式都是內(nèi)核(如bzImage)加上根文件系統(tǒng)(rootfs),內(nèi)核的編譯裁剪說的很多,也不麻煩,我這里想說的是使用busybox來制作rootfs的方法,
廢話不說那么多,我制作了一個(gè)sh腳本程序,可以直接生成我需要的ramdisk,先將腳本貼出來: #bash/sh echo "Start make rootfs !" cd /usr/src/mkOSrtfs mkdir rootfs cd rootfs mkdir dev etc lib proc tmp usr var chmod 777 tmp mkdir usr/lib mkdir var/lib var/lock var/log var/run var/tmp chmod 777 var/tmp cp -dpR /usr/src/busybox-1.14.2/_install/* . cp -R /dev/console dev/ cp -R /dev/null dev/ cp -R /dev/zero dev/ cp -R /usr/src/busybox-1.14.2/examples/bootfloppy/etc/* etc/ dd if=/dev/zero of=/usr/src/mkOSrtfs/disk bs=1M count=32 mkfs.ext2 -m0 /usr/src/mkOSrtfs/disk mkdir /mnt/ram mount -o loop /usr/src/mkOSrtfs/disk /mnt/ram/ cp -R /usr/src/mkOSrtfs/rootfs/* /mnt/ram/ umount /mnt/ram dd if=/usr/src/mkOSrtfs/disk of=/usr/src/mkOSrtfs/ramdisk.img gzip /usr/src/mkOSrtfs/ramdisk.img echo "End make rootfs!" 腳本寫的很簡單,能實(shí)現(xiàn)基本功能,沒有添加判斷,容錯(cuò)之類的,就是個(gè)意思,用得到的時(shí)候,可以在上面修改; 需要說明的時(shí)候,busybox也有menuconfig選項(xiàng)供我們選擇,我選擇的是將busybox工具編譯成靜態(tài)庫,為了簡單和偷懶,如果編譯成動態(tài)庫,需要將用到的庫拷貝到lib目錄。 ramdisk制作好了之后,以后如果有改動,只要采用如下方式: mkdir tmp gzip -d ramdiak.img.gz mount -o loop ramdisk.img tmp #cp 需要的程序到tmp指定的文件夾 umount tmp gzip ramdisk.img.gz 就可以了 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |