300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > linux 制作ramdisk镜像 制作ramdisk文件系统

linux 制作ramdisk镜像 制作ramdisk文件系统

时间:2024-01-23 21:22:49

相关推荐

linux 制作ramdisk镜像 制作ramdisk文件系统

/qiu_zhi/blog/static/601409778852750530/

/art/302/0403/1410071_1.html

一、配置内核

Device Drivers--->

ATA/ATAPI/MFM/RLL support (DEPRECATED)

General Setup - --> [*] Initial RAM filesystem and RAM disk

(initramfs/initrd) support

Device Drivers ---> [*] Block devices ---> RAM

block device support

(1)Default number of RAM disks

(30720) Default RAM disk size(kbytes)

二、制作文件系统镜像

1、建立一个大小为30M的临时文件,bs是单位,count是大小。

dd if=/dev/zero of=./ramdisk bs=1M count=30

此处以dd命令建立一个了一个30M文件系统映像,存于当前目录。(of后面的./可以不用,也是在当前目录下生成ramdisk文件)

2、将文件系统映像格式化成ext2格式。

mkfs.ext2 -F ramdisk

3、创建一个挂载点并将映像文件挂载到这个挂载点上。

mkdir -p /dev/initrd

mount -o loop ramdisk /mnt/initrd

4、拷贝相应的文件到/mnt/initrd目录下

5、卸载

umount /mnt/initrd

6、压缩

gzip -v9 ramdisk

生成ramdisk.gz文件

7、解压

gunzip ramdisk.gz

生成ramdisk文件

8、在文件系统前加上0x40字节的头。

./mkimage -n 'uboot ext2 ramdisk rootfs' -A arm -O linux -T ramdisk

-C none -a 0x10000000 -e 0x10000040 -d ramdisk.gz

did5306.ramfs.gz

uboot源代码的tools/目录下有mkimage工具,这个工具可以用来制作不压缩或者压缩的多种可启动映象文件。mkimage在制作映象文件的时候,是在原来的可执行映象文件的前面加上一个0x40字节的头,记录参数所指定的信息,这样uboot才能识别这个映象是针对哪个CPU体系结构的,哪个OS的,哪种类型,加载内存中的哪个位置,

入口点在内存的那个位置以及映象名是什么。

注意:在设置bootargs和bootcmd时记得要地址保持一致。

9、设置启动参数(从mmc上启动)

setenv bootargs console=ttyS1,115200n8 $mtdparts

initrd=0x10000040,30M init=/linuxrc root=/dev/ram0 rw

rootfstype=ext2 ip=$ip

setenv bootcmd fatls mmc 0\;fatload mmc 0 0x8000

vmlinux.bin\;fatload mmc 0 0x10000000did5306.ramfs.gz\;go 0x8000;

save

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。