久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

【精品博文】為Miz702制作ramdisk文件系統(下)

 ChinaAET 2020-10-31

挖寶

學習如何簡化水

,、燃氣,、熱量計

量應用設計

 

2.3 工具鏈動態(tài)與應用的設置

進入/home/devel/_rootfs,,創(chuàng)建lib目錄

cd /home/devel/_rootfs mkdir lib

將交叉編譯環(huán)境庫拷貝到這個目錄下

cp /home/milinker/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/libc/lib/* lib -r

同樣,,將工具鏈拷貝到sbin/和usr/bin/下

cp /home/milinker/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/libc/sbin/* sbin -r cp /home/milinker/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/libc/usr/bin/* usr/bin -r

2.4 目錄的創(chuàng)建與配置

這一步是要創(chuàng)建文件系統下其余的目錄,,以及在啟動系統時所需的配置文件,,所有操作都在_rootfs目錄下。

I) 創(chuàng)建目錄

mkdir dev etc etc/dropbear etc/init.d mnt opot proc root sys tmp var var/log var/www

II) 創(chuàng)建配置文件etc/fstab,,內容為:

LABEL=/ / tmpfsdefaults 00 none /dev/ptsdevptsgid=5,mode=62000 none /procproc defaults00 none /syssysfsdefaults00 none /tmptmpfsdefaults 00

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 -r

IV) 創(chuàng)建配置文件etc/passwd,內容為:

:root:$1 $qC.CEbjC $SVJyqm.IG.gkElhaeM.FD0:0:0:root:/root:/bin/sh

V) 創(chuàng)建配置文件etc/init.d/rcS,,內容為:

#!/bin/shecho “Starting rcS …” echo “++ Mounting filesystem”mount –t proc none /procmount –t sysfs none /sysmount –t tmpfs none /tmp echo “++ Setting up mdev”echo /sbin/mdev > /proc/sys/kernel/hotplugmdev –s mkdir –p /dev/ptsmkdir –p /dev/i2cmount –t devpts devpts /dev/pts echo “++ Starting telnet daemon”telnetd –l /bin/sh echo “++ Starting http daemon”httpd –h /var/www echo “++ Starting ftp daemon”tcpsvd 0:21 ftpd ftpd –w /& echo “++ Starting dropbear (ssh) daemon”dropbear echo “rcS Complete”

VI) 為rcS賦予root的執(zhí)行權限

chmod 755 etc/init.d/rcS sudo chown root:root etc/init.d/rcS

2.5 制作鏡像文件ramdisk.image

創(chuàng)建鏡像文件ramdisk16M.image,,并設置大小為16M,文件系統格式為ext2:

cd ~ dd if=/dev/zero of=ramdisk16M.image bs=1024 count=16384 mke2fs -F ramdisk16M.image -L "ramdisk" -b 1024 -m 0 tune2fs ramdisk16M.image -i 0 chmod 777 ramdisk16M.image

大小可以按照需要自己調整,,但是最好不要超過32M,;此外文件系統的大小最好和內核配置的大小相同,以避免發(fā)生匹配錯誤,。不過照我的使用情況來看,,內核設置為16M時,8M和16M的文件系統都能夠正常啟動,,但還是建議二者匹配,。

創(chuàng)建ramdisk目錄,將ramdisk16M.image 掛載到該目錄下,,

mkdir ramdisk sudo mount -o loop ramdisk16M.image ramdisk/

接下來,,只需要將_rootfs目錄下的內容全部拷貝到ramdisk下即可。

sudo cp -R /home/devel/_rootfs/* ramdisk

注意,,這里cp的參數一定是R而非r,。

這樣,這個鏡像文件的內容就是_rootfs目錄下的內容了,。將其卸載就可,。

sudo umount ramdisk/

到此,根文件系統鏡像文件ramdisk16M.image 制作完成,,將其壓縮,。

gzip -9 ramdisk16M.image

生成ramdisk16M.image.gz文件。

2.6 生成uramdisk.image.gz

使用mkimage命令為ramdisk.img.gz添加一些頭部信息,,生成uramdisk.image.gz,,否則uboot將提示ramdisk格式錯誤。

使用如下命令生成uramdisk.image.gz

mkimage -n 'uboot ext2 ramdisk' -A arm -O linux -T ramdisk -C gzip -d ramdisk16M.image.gz 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=1
gunzip ramdisk.img.gz
mkdir ramdisk; cd ramdisk
cpio -i < ../ramdisk.img

上兩種方法均是從網上查找,,尚未驗證,。

參考文獻:

http://xilinx./blog/8663

http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_lab7.html

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多