挖寶 學習如何簡化水 ,、燃氣,、熱量計 量應用設計 2.3 工具鏈動態(tài)與應用的設置 進入/home/devel/_rootfs,,創(chuàng)建lib目錄 將交叉編譯環(huán)境庫拷貝到這個目錄下 同樣,,將工具鏈拷貝到sbin/和usr/bin/下 2.4 目錄的創(chuàng)建與配置 這一步是要創(chuàng)建文件系統下其余的目錄,,以及在啟動系統時所需的配置文件,,所有操作都在_rootfs目錄下。 I) 創(chuàng)建目錄 II) 創(chuàng)建配置文件etc/fstab,,內容為: III) 創(chuàng)建配置文件etc/inittab,,內容為: ::sysinit:/etc/init.d/rcS # /bin/ash # # Start an askfirst shell on the serial ports ttyPS0::respawn:-/bin/ash # What to do when restarting the init process ::restart:/sbin/init # What to do before rebooting ::shutdown:/bin/umount -a -rIV) 創(chuàng)建配置文件etc/passwd,內容為: V) 創(chuàng)建配置文件etc/init.d/rcS,,內容為: VI) 為rcS賦予root的執(zhí)行權限 2.5 制作鏡像文件ramdisk.image 創(chuàng)建鏡像文件ramdisk16M.image,,并設置大小為16M,文件系統格式為ext2: 大小可以按照需要自己調整,,但是最好不要超過32M,;此外文件系統的大小最好和內核配置的大小相同,以避免發(fā)生匹配錯誤,。不過照我的使用情況來看,,內核設置為16M時,8M和16M的文件系統都能夠正常啟動,,但還是建議二者匹配,。 創(chuàng)建ramdisk目錄,將ramdisk16M.image 掛載到該目錄下,, 接下來,,只需要將_rootfs目錄下的內容全部拷貝到ramdisk下即可。 注意,,這里cp的參數一定是R而非r,。 這樣,這個鏡像文件的內容就是_rootfs目錄下的內容了,。將其卸載就可,。 到此,根文件系統鏡像文件ramdisk16M.image 制作完成,,將其壓縮,。 生成ramdisk16M.image.gz文件。 2.6 生成uramdisk.image.gz 使用mkimage命令為ramdisk.img.gz添加一些頭部信息,,生成uramdisk.image.gz,,否則uboot將提示ramdisk格式錯誤。 使用如下命令生成uramdisk.image.gz 將生成的uramidisk.image.gz拷貝到TF卡,,即可使用,。 2.7 由uramdisk.image.gz生成ramdisk.img.gz 假如手上有一個uramdisk.image.gz的文件系統,想獲取其內部的內容,,該怎么辦呢,? 由于mkimage工具是在ramdisk.img.gz的頭部添加了64字節(jié)的uboot信息來生成uramdisk.image.gz(破壞了壓縮格式),所以uramdisk.image.gz是無法直接解壓??梢灾苯邮褂肬edit32編輯器刪除掉uramdisk.image.gz頭部的64字節(jié),,然后重命名為ramdisk.img.gz。此時就可以使用gunzip解壓為ramdisk.img,,再進行掛載就可以修改鏡像文件了,。 還有一種方法更加快捷,使用的是Linux shell操作: dd if=uramdisk.img of=ramdisk.img.gz skip=64 bs=1gunzip ramdisk.img.gz mkdir ramdisk; cd ramdisk cpio -i < ../ramdisk.img 上兩種方法均是從網上查找,,尚未驗證,。 參考文獻: http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_lab7.html |
|