proc /proc proc defaults 0 0
none /tmp ramfs defaults 0 0
none /var ramfs defaults 0 0
mdev /dev ramfs defaults 0 0
sysfs /sys sysfs defaults 0 0
4>修改初始化脚本init.d/rcS
#! /bin/sh
echo "----------mount all"
/bin/mount -a
echo "----------Starting mdev......"
/bin/echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
echo "*********************************************************"
echo " GG skyily 2410 Rootfs 2009.6 "
echo " Love Linux ! ! @@ Love GG ! ! "
echo "********************************************************"
5>为mdev创建配置文件:(etc下)
[root@ etc]# touch mdev.conf
创建一个mdev.conf文件,内容可为空!!!!
6>创建登陆账户
把自己pc上的/etc下的group shadow passwd 文件拷贝到制作的..../etc下
#cp /etc/group ./
#cp /etc/passwd ./
#cp /etc/shadow ./
8、动态编译时所要查的(所需动态链接库)
# arm-linux-readelf busybox
Dynamic section at offset 0xb8014 contains 22 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library:[libcrypt.so.1]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libc.so.6]
0x0000000c (INIT) 0xc04c
0x0000000d (FINI) 0xa26f0
0x00000004 (HASH) 0x80e8
0x00000005 (STRTAB) 0xa384
0x00000006 (SYMTAB) 0x8b24
.....
.....
复制lib 文件到lib目录下:
[root@centos lib]cp -d /usr/local/arm/3.4.1/arm-linux/lib/ld* .
[root@centos lib]cp -d /usr/local/arm/3.4.1/arm-linux/lib/libc-2.3.2.so .
[root@centos lib]cp -d /usr/local/arm/3.4.1/arm-linux/lib/libc.so.6 .
[root@centos lib]cp -d /usr/local/arm/3.4.1/arm-linux/lib/libm * .
[root@centos lib]cp -d /usr/local/arm/3.4.1/arm-linux/lib/libcrypt* .
注:这样的话制作的.cramfs文件挺大的10M多。
9、使用工具mkcramfs将整个s3c2440文件夹制作成文件系统
# mkcramfs rootfs rootfs.cramfs
烧入nand flash 启动
注:还有一些脚本需要添加和修改,使得其他功能得以实现,正在实验中,以后添加
注意:
使用busybox制作文件系统时,运行make时,系统会马上提示:
没有/dev/null这个文件。(这里没有什么问题)
最终编译出根文件系统没有问题,问题出在重启自己pc的linux系统时,机器进不去了。提示出错,信息如下:
/etc/rc.d/rc.sysinit: line 173:/dev/null: read-only file system
/etc/rc.d/rc.sysinit: line 173:/dev/null: read-only file system
/etc/rc.d/rc.sysinit: line 184:/dev/null: read-only file system
/etc/rc.d/rc.sysinit: line 184:/dev/null: read-only file system
/etc/rc.d/rc.sysinit: line 200:/dev/null: read-only file system
.
.
.
***An error occured during the file system check.
***Dropping you to a shell;the system will reboot
***when you leave the shell
Give root password for maintenance
(or type Control-D to continue):
解决办法:
按照提示输入root用户的密码,回车就可以看到提示修复信息:
依次输入命令:
(Repair filesystem)1# mount -n -o remount, rw /
(Repair filesystem)2# rm -f /dev/null
(Repair filesystem)3# mknod -m 0666 /dev/null c 1 3
(Repair filesystem)4# reboot
问题解决。