首页 > 编程知识 正文

busybox安装教程(busybox未安装)

时间:2023-05-05 03:17:46 阅读:75553 作者:2176

一、Busybox简介BusyBox是集成了100多个最常见的linux命令和工具的软件,同时还集成了http服务器和telnet服务器,所有这些功能只有1米左右大。 BusyBox包含简单的工具。 例如,我们平时使用的linux命令就像一个分立式电子部件,而BusyBox就像一个集成电路。 将常用的工具和命令集成到一个可执行文件中进行压缩,功能几乎不变,但大小小了好几倍。 例如,它还包括更大更复杂的工具,如ls、cat和echo。简单地说,BusyBox就像一个大型工具箱,它将许多压缩Linux的工具和命令集成在一起,随Android系统提供BusyBox将许多通用小版本的UNIX工具合并为一个可执行文件。 这样的集合可以替换大部分常用工具,如GNU。 BusyBox为小型或嵌入式系统提供了相对高级的环境。 在嵌入式linux APP应用程序中,busybox具有非常广泛的APP应用程序,而且大多数Linux发行版安装程序都有busybox。 安装linux时,ctrl alt F2可以在物理终端之间切换,但此物理终端中的所有命令都是指向busybox的链接。 busybox虽小,但作用惊人二、Busybox的用法最常见的用法是建立到busybox的链接。 用不同的链接名称完成不同的功能。 # ln-sbusyboxls # ln-sbusyboxrm # ln-sbusyboxmkdir随后,这三个链接: #./ls #./rm #./mkdir分别用于ls rm和mkdir命令他们都指向同一个可执行文件busybox,只是链接名称不同,完成的功能不同。 busybox是这样一个不可思议的.三、Busybox安装1,它是用红帽5.8版本制作的,系统中没有ext3文件,因此busybox需要提供ext3系统文件当然,这对强大的Busybox来说非常简单,但Busybox没有bash。 要直接移植它以便使用,必须使用移植系统附带的init,因为Busybox中的init不支持运行级。 2、安装前准备工作目标配置红帽5.8磁盘,mount /dev/cdrom /mnt/然后yum库CD/etc/yum.repos.d/vimserver.repo 开发库3,创建新的分区和目录,装载3.1,创建分区3.2,创建目录mkdir /mnt/{sysroot,引导} 3.3,mkdir 将hda2mount/dev/hda1/mnt/boot/mount/dev/hda2/mnt/sys ster Linux-2.6.38.5.tar.bz2转换为/usr/src/dirc 配置内核提供的./config文件。 这里有一个叫kernel-2.6.38.1-i686.cfg的样本。 直接以此为蓝色起源在CD/usr/src/linuxmvkernel-2.6.38.1-i686.CFG./config 3358 www.Sina.com /如有必要,驱动程序、文件系统和涅请注意,将PCnet32编译为内核模块,例如更改版本号。 其他选项根据需要更改即可。 这里不演示http://www.Sina.com.com/make subdir=arch /编译

下面的步骤,等到编译完成后再进行复制内核) 6.2 、提供内核 cp /usr/src/linux/arch/x86/boot/bzImage /mnt/boot/vmlinuz 6 . 3 、安装 grub : grub-install --root-directory=/mnt/ /dev/had 6.4、编辑配置grub.conf vim /mnt/boot/grub/grub.conf 7、提供initrd 7.1、编译前准备操作,这里我们用的是Busybox-1.20.2的版本 7.2、编译busybox 进入Busybox的菜单选项中进行选择自己所需要的东西即可,在这里不需要更改太多,把编译选项改一下即可,编译成一个二进制文件,方便移植。过程如下 7.3、编译安装(编译的东西自动保存在了_install目录下) 删除自动为我们创建的链接文件 自行创建一个目录,把_install文件复制到这里,一切配置在这里更改 创建设备文件(5和3是主设备号,1是次设备号) 7.4、创建init脚本,此脚本完成的任务: 1、挂载proc文件系统,proc文件系统是用来输出内核映像的 2、挂载sys文件系统(输出硬件信息) 3、导入内核模块,导入ext3内核模块,否则无法访问真正的文件系统(这里的/dev/hda2格式化为了ext3,如果是格式化成ext2就不要安装这个模块) vim /tmp/initrd/init 给脚本执行权限:chmod +x init 归档压缩生成initrd文件 8、/mnt/sysroot目录下的文件准备(即根文件的准备 8.1、复制busybox-1.20.2_install目录下的所有文件,把这些文件当做真正的根 cp busybox-1.20.2/_install/* /mnt/sysroot/ -a 8.2、创建所需的目录(在/mnt/sysboot目录下) mkdir boot root etc/rc.d/init.d var/{log,lock,run} proc sys dev lib/modules tmp home mnt media usr/lib –pv 8.3、创建设备文件 8.4、编辑inittab配置文件 vim /mnt/sysroot/etc/inittab 8.5、编辑rc.sysinit文件 vim /mnt/sysroot/etc/rc.d/rc.sysinit chmod +x /mnt/sysroot/etc/rc.d/rc.sysinit #给一个执行权限 8.6、编辑配置/mnt/sysroot/etc/fstab sync #多同步几次 到此基本的微linux就完成了,注意/tmp/initrd/init 脚本中使用的是bash,而Busybox不支持这样shell,此时该如何实现bash的使用呐?下面我们就来演示一下Busybox的扩展功能 四、Busybox的扩展功能: 1、 使用bash命令 这里首先需要复制一下bash命令即可,复制相关命令的脚本内容如下: vim nxdsmtcp.sh #!/nxdsmt/bash # dest=/mnt/sysroot libcp() { libpath=${1%/*} [ ! -d $dest$libpath ] && mkdir -p $dest$libpath [ ! -e $dest${1} ] && cp $1 $dest$libpath && echo " copy lib $1 finished" } nxdsmtcp() { cmdpath=${1%/*} [ ! -d $dest$cmdpath ] && mkdir -p $dest$cmdpath [ ! -e $dest${1} ] && cp $1 $dest$cmdpath for lib in `ldd $1 | grep -o "/.*lib(64){0,1}/[^[:space:]]{1,}"`; do libcp $lib done } read -p " your command:" cmd until [ $cmd = 'q' ]; do ! which $cmd && echo "wrong command" && read -p "input again:" cmd && continue command=`which $cmd | grep -v "^alias" | grep -o "[^[:space:]]{1,}"` nxdsmtcp $command echo "copy $command finished." read -p "continue:" cmd done 给脚本一个执行权限:chmod +x nxdsmtcp.sh 怎么样这个脚本好用吧!   更改inittab配置文件 vim /mnt/sysroot/etc/inittab 到这里bash就能够启动成功了 2、 实现用户登陆功能 2.1、首先要提供终端即编辑inittab文件内容,直接修改成以下即可 2.2、建立账号(我们可以直接复制本机的root账号的相关信息) 现在我们就可以使用用户来登陆了 3、 添加一个主机名 vim /mnt/sysroot/etc/hostname 自行创建一个hostname文件,添加一行代码即可;如下: HOSTNAME=MyBusyboxlinux 而加载HOSTNAME这变量需要编辑rc.sysinit脚本文件 vim /mnt/sysroot/etc/rc.d/rc.sysinit 添加一下代码即可: 4、提供用户登陆界面的显示信息 vim mnt/sysroot/etc/issue My Busybox Linux Kernel r on an m 5、为微型系统提供IP地址 首先复制网卡模块 cp /usr/src/linux/drivers/net/pcnet32.ko /mnt/sysroot/lib/modules/ 然后设置开机装载网卡驱动 vim /mnt/sysroot/etc/rc.d/rc.sysinit 编辑这个配置文件添加以下代码 echo "load ethernet card modules.." insmod /lib/modules/pcnet32.ko 到这里微型小系统的IP地址就能成功添加了 这就是Busybox的制作过程,你会了吗?

转载于:https://blog.51cto.com/jilili/1170368

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。