busybox制作跟文件系统

来源:互联网 发布:网络装修平台 编辑:程序博客网 时间:2024/04/29 17:25

参照里Linux目录建立文件系统目录。

解压源码进入目录配置编译器和编译架构:

CROSS_COMPILE ?= arm-linux-

ARCH = arm。


执行make menuconfig 进行配置

选择静态编译,

在Installation Options中选择安装路径(可以直接选择刚才建立到目录)。保存退出。

make

make install 生成文件。

进入建立好目录到etc目录执行:cp -rf ../../busybox-1.13.0/examples/bootfloppy/etc/* ./
复制部分配置文件,同时可以复制本机到passwd group shadow到当前目录。

修改inittab文件为:

::sysinit:/etc/init.d/rcS::respawn:-/bin/shhang_serial0::askfirst:-/bin/sh::once:/usr/sbin/telnetd -l /bin/login::ctrlaltdel:/bin/umount -a -r
在dev目录下手工创建连个设备文件:
root@Jarvis dev]# mknod console c 5 1[root@Jarvis dev]# lsconsole[root@Jarvis dev]# mknod null c 1 3[root@Jarvis dev]# lltotal 0crw-r--r--. 1 root root 5, 1 May  5 19:51 consolecrw-r--r--. 1 root root 1, 3 May  5 19:51 null

修改etc/init.d/rc.S文件

#! /bin/shPATH=/bin/:/sbin/:/usr/bin:/usr/sbinrunlevel=Sprevlevel=Numask 022export PATH runlevel prevlevel/bin/mount -amkdir /dev/ptsmount -t devpts devpts /dev/ptsecho /sbin/mdev > /proc/sys/kernel/hotplugmdev -smkdir -p /var/lock/bin/hostname -F /etc/sysconfig/HOSTNAME

在etc目录下创建目录sysconfig进入目录添加文件HOSTNAME,内容为显示的名字。

修改profile文件内容为:

#Ash profile#vim:syntas=sh#No core files by default#ulimit -S -c 0 > /dev/null 2>&1USER="`id -un`"LOGNAME=$USERPS1='[\u@\h \W]# 'PATH=$PATHHOSTNAM=`/bin/hostname`echo "Welcome home Sir"echo "Jarvis is OK!"export USER LOGNAME PS1 PATH

从交叉编译器中复制库文件:
[root@Jarvis lib]# cp -f /opt/EmbedSky/4.3.3/arm-none-linux-gnueabi/libc/armv4t/usr/lib/*.so* ./ -a

制作bin文件:

[root@Jarvis hakits]# mkyaffs2image my_root/  my_root.bin

//来自网络
[\u@\h \W]\# 怎么不能显示我想要的[root@6410 /etc]

原来是busybox不行,版本才是1.13,官网都1.20了。编译了最新的BUSYBOX,把所有的功能都加上,把可执行权限加上,然后拷贝到根文件系统中,重建新yaffs2,搞定!


0 0
原创粉丝点击