仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 754|回复: 9
打印 上一主题 下一主题

[其他Linux] Linux编程之使用busybox制造一个玲珑的Linux体系仓酷云

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:30:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
如果你让他去用linux搭建一个web服务器,做一个linux网关,他就什么都不会了.他们把时间都浪费在了版本的转换上了.
1.下载busybox和linuxkernel的源码.
busybox的源码地点:http://www.ckuyun.com/Linux/2011-08/40704.htm
linuxkernel的源码地点:http://www.ckuyun.com/pub/linux/kernel/v2.6/
我选择的busybox版本是:busybox-1.16.0.tar.bz2
linuxkernel的版本是:linux-2.6.28.tar.bz2
2.接上去我们先编译linux内核
我将下载上去的内核源代码紧缩包拷贝到/usr/src目次下,然落后进到这个目次将其解压,命令以下:
#tarxjflinux-2.6.28.tar.bz2
然后创立一个目次,用来保留编译内核发生的方针文件
#pwd
/usr/src
#mkdirlinux-2.6.28-obj
linux-2.6.28-obj如今是一个空目次,编译内核时会将方针文件输入保留到这个目次下。
linux-2.6.28是方才linux-2.6.28.tar.bz2文件解压出来的目次。
然后我们入手下手编译linux内核,输出以下所示的命令:
#cd/usr/src/linux-2.6.28(进进到内核源码树目次)
#makeO=/usr/src/linux-2.6.28-objmenuconfig(设置内核)
设置内核时,内里的选项有良多,假如不断定的话就将一切选项都编译进内核,固然最好能针对性的设置内核,如许发生出的内核镜像不至于太年夜。另有一点就是设置时必定要将选定的选项编译进内核,而不要编译成模块。同时,为了撑持initrd内存盘文件体系,有两个选项是必需的。
一个是GeneralSetup–>InitialRAMfilesystemandRAMdisksupport
另外一个是DeviceDrivers–>BlockDevices–>RAMblockdevicesupport
这个选项的子选项坚持默许就能够了,以下图所示:
然前进出设置界面,在加入时会提醒你是不是保留方才的设置,选择yes就能够了(由于我们在设置时指了然O=/usr/src/linux-2.6.28-obj目次,以是设置文件会保留到这个目次下,文件名为.config)
接上去我们入手下手编译内核:
#makeO=/usr/src/linux-2.6.28-obj(天生内核镜像和模块)
一般,我们编译内核是为了更新内核,但这里我们只是为了编译出一个内核镜像,以是就不挪用makeinstall命令来安装内核了。
好!内核编译完成,我们将编译好的内核镜像拷贝到主目次下,以供前面利用。
#cp/usr/src/linux-2.6.28-obj/arch/x86/boot/bzImage~(拷贝内核镜像到root用户的主目次下)
3.编译busybox
接上去我们入手下手编译busybox。(我的busybox-1.16.0.tar.bz2寄存到了/root目次下)
#tarxfbusybox-1.16.0.tar.bz2(解压busybox紧缩包)
#cdbusybox-1.16.0(进进到解压后的busybox源码目次)
#makemenuconfig(设置busybox)
注重设置时,必定要选择静态链接选项,该选项位于:
BusyboxSettings–>BuildOptions–>BuildBusyboxasastaticbinary
接上去,我们安装busybox
#makeinstall(busybox默许安装到了其源码树目次的名字为_install的目次中)
#cd_install(进进安装了busybox的目次)
当我们进进了busybox后发明了熟习的linux目次布局,但只要这些是不敷的还必要手工增加一些基础的设置文件。
4.在busybox中增加设置文件并天生initrd镜像
这时候,我们处在/root/busybox-1.16.0/_install目次下。
好了,入手下手我们的设置~
#mkdirprocsysetcdev(创立四个空目次,linux内核必要)
#cddev
#mknodconsolec51(创立一个把持台字符设备文件)
#mknodnullc13(创立一个0设备文件)
#cd..
#cdetc
#vimfstab(输出以下图内容)
#mkdirinit.d
#viminit.d/rcS(输出以下内容)
#chmod+xinit.d/rcS(给rcS文件加上可实行权限)
#viminittab(输出以下内容)
#cd..
#pwd(打印以后目次)
/root/busybox-1.16.0/_install
此时标明我们处在busybox安装文件的根目次下
#rmlinuxrc(删除linuxrc链接文件)
然后新创立一个指向busybox文件的链接文件我们输出以下图所示命令来创立initrd镜像.
#cd..
#cpinitrd.gz~(将其拷贝到主目次)
至此我们就失掉了两个镜像文件:
bzImage:linux内核镜像文件
initrd.gz:内存盘根文件体系镜像文件
好!接上去我们在一个grub引诱器下,来引诱这个体系:
嗯。为了便利起见,我将天生的这两个文件拷贝到了/boot下
只需在grub提醒符下输出以下图所示的三个命令,你的minilinux就可以引诱开了~~

给你装的系统里为ubuntu12.04,它已经封装的很臃肿了,但是考虑到你没有很多时间投入其中,所以给你装了它,但是怎么用它提高开发效率,需要你在学习的过程中不断总结;
简单生活 该用户已被删除
沙发
发表于 2015-1-30 12:42:32 | 只看该作者
你需要提供精确有效的信息。Linux这并不是要求你简单的把成吨的出错代码或者数据完全转储摘录到你的提问中。
板凳
发表于 2015-2-2 22:31:06 | 只看该作者
写学习日记,这是学习历程的见证,同时我坚持认为是增强学习信念的法宝。
灵魂腐蚀 该用户已被删除
地板
发表于 2015-2-8 15:52:19 | 只看该作者
让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?
分手快乐 该用户已被删除
5#
发表于 2015-2-8 17:51:26 | 只看该作者
通过自学老师给的资料和向同学请教,掌握了一些基本的操作,比如挂载优盘,编译程序,在Linux环境下运行,转换目录等等。学了这些基础才能进行下面的模拟OS程序。?
若天明 该用户已被删除
6#
发表于 2015-2-25 21:59:21 | 只看该作者
得到到草率的回答或者根本得不到任何Linux答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。
柔情似水 该用户已被删除
7#
发表于 2015-3-5 00:06:41 | 只看该作者
学习Linux系统在服务中的配置方法及使用方法。Linux在服务器中应用相当广,应对常用的apache,samba,ftp等服务器基本配置清楚了解。[重点,应巩固学习]
山那边是海 该用户已被删除
8#
发表于 2015-3-11 04:04:32 | 只看该作者
把这个问题放在其他Linux社区请求帮助也是一种选择。如果Linux得不到答案,请不要以为我们觉得无法帮助你。有时只是看到你问题的人不知道答案罢了。这时换一个社区是不错的选择。
小妖女 该用户已被删除
9#
发表于 2015-3-17 20:08:17 | 只看该作者
我是学习嵌入式方向的,这学期就选修了这门专业任选课。
第二个灵魂 该用户已被删除
10#
发表于 2015-3-24 23:21:14 | 只看该作者
学习Linux应具备的。[书籍+网络资源]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 13:36

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表