制作ramdisk的全过程
2007-03-04 17:08
381 查看
我把我做ramdisk的全过程写出来,请大侠们看看是否是因为
制作ramdisk有问题导致的内核无法加载根文件系统!!
1 建立根文件系统结构
#cd /home/fortis/rootfs
#mkdir bin dev etc lib proc sbin tmp usr var
#chmod 1777 tmp
#mkdir usr/bin usr/lib usr/sbin
#mkdir var/lib var/lock var/log var/run var/tmp
#chmod 1777 var/tmp
2 准备链接库
#cd ${OBJ_LIB}/lib (${OBJ_LIB}是交叉编译环境的目录)
#for file in libc libcrypt libdl libm /
>libpthread libresolv libutil
>do
>cp $file-*.so /home/fortis/rootfs/lib
>cp -d $file.so.[*0-9] /home/fortis/rootfs/lib
>done
#cp -d ld*.so* /home/fortis/rootfs/lib
3 使用busybox制作系统应用程序
(1)下载busybox-1.1.2, 解压
(2)#make defconfig
(3)#make menuconfig (主要修改以下配置)
busybox settings --->
build options --->
build busybox as a static binary(no shared libs)
do you want to build busybox with a cross compiler?
(这里写上交叉编译器的前缀)
linux Ext2 FS progs --->
将这下面的选项都去掉了,否则编译会出错,不知什么原因。
(4)#make TARGET_ARCH=arm PREFIX=/home/fortis/rootfs all install
4 准备所需的设备文件
#cd /home/fortis/rootfs/dev
#mknod -m 600 console c 5 1
5 制作initrd映象文件
#mkdir initrd
#dd if=/dev/zero of=initrd.img bs=1k count=8192
#/sbin/mke2fs -F -v -m0 initrd.img
#mount -o loop initrd.img initrd
#cp -av /home/fortis/rootfs/* initrd
#umount
#gzip -9<initrd.img>initrd.bin
initrd.bin 就是是最终要放到目标开发板上的根文件系统
制作ramdisk有问题导致的内核无法加载根文件系统!!
1 建立根文件系统结构
#cd /home/fortis/rootfs
#mkdir bin dev etc lib proc sbin tmp usr var
#chmod 1777 tmp
#mkdir usr/bin usr/lib usr/sbin
#mkdir var/lib var/lock var/log var/run var/tmp
#chmod 1777 var/tmp
2 准备链接库
#cd ${OBJ_LIB}/lib (${OBJ_LIB}是交叉编译环境的目录)
#for file in libc libcrypt libdl libm /
>libpthread libresolv libutil
>do
>cp $file-*.so /home/fortis/rootfs/lib
>cp -d $file.so.[*0-9] /home/fortis/rootfs/lib
>done
#cp -d ld*.so* /home/fortis/rootfs/lib
3 使用busybox制作系统应用程序
(1)下载busybox-1.1.2, 解压
(2)#make defconfig
(3)#make menuconfig (主要修改以下配置)
busybox settings --->
build options --->
build busybox as a static binary(no shared libs)
do you want to build busybox with a cross compiler?
(这里写上交叉编译器的前缀)
linux Ext2 FS progs --->
将这下面的选项都去掉了,否则编译会出错,不知什么原因。
(4)#make TARGET_ARCH=arm PREFIX=/home/fortis/rootfs all install
4 准备所需的设备文件
#cd /home/fortis/rootfs/dev
#mknod -m 600 console c 5 1
5 制作initrd映象文件
#mkdir initrd
#dd if=/dev/zero of=initrd.img bs=1k count=8192
#/sbin/mke2fs -F -v -m0 initrd.img
#mount -o loop initrd.img initrd
#cp -av /home/fortis/rootfs/* initrd
#umount
#gzip -9<initrd.img>initrd.bin
initrd.bin 就是是最终要放到目标开发板上的根文件系统
相关文章推荐
- Linux下用Busy Box制作Ramdisk全过程(转帖+部分完善)
- Linux系统下Ramdisk的制作过程
- ramdisk制作过程记录
- ramdisk制作全过程
- busybox制作ramdisk全过程
- Linux系统下Ramdisk的制作过程
- busybox制作ramdisk全过程
- ramdisk制作过程解析
- android ramdisk.img的制作过程
- 【原创】linux内核移植过程--ramdisk的制作
- 详细讲解 Linux系统下Ramdisk的制作过程
- ASA842-VMWARE完全制作过程-第一部分
- 如何利用Photoshop制作一幅建筑可视化场作品的整个过程p临沧
- WordPress主题制作全过程(一):基础准备
- 报表制作过程中出现输入不同参数查询数据不变的情况
- WordPress主题制作全过程(九):制作single.php
- z-blog插件的制作过程
- 制作简易计算器处理过程Servlet
- 扫雷游戏制作过程(C#描述):第一节、创建项目
- 扫雷游戏制作过程(C#描述):第三节、雷区绘制