扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
一、什么是BabyLinux
BabyLinux不是一个完整的发行版,它是利用原有的一套完整的Linux系统的内核原代码和编译工具,利用busybox内建的强大功能,在一张软盘上做的一个很小的Linux系统。它具备一个Linux系统的基本特征,支持Linux系统最常用的一百多个命令,支持多种文件系统,支持网络等等,你可以把它当做一张Linux起动盘和修复盘来用,你也可以把它当做一个静态路由的路由器软件,当然,你也可以把它当做一个Linux玩具,向你的朋友炫耀Linux可以做的多么小。我把它叫做BabyLinux因为它很小巧,小的很可爱,像一个刚刚出生的小baby。
二、为什么要作这样一个Linux
先说说我一开始的想法,当我一开始接触Linux的时候,看到书上说,Linux通常安装只需要60MB左右的空间,但是我发现装在我硬盘上的Redhat 6.0确要占据好几百MB的空间。为什么我的Linux这么大呢? 后来我发现,装在我机器上的那么多东西只有不到30%是我平时常用的,还有30%是我极少用到的,另外的40%基本上是不用的。于是,我和大多数初学者一样,开始抱怨,为什么Linux不能做的精简一点呢?于是,我萌发了自己裁减系统的想法。可惜那个时候我还没有听说过有LFS和Debain。等到我积累了足够的Linux知识后,我开始制作这样一个小系统。
制作这样一个小系统最大的意义在于,你可以通过制作系统了解Linux的启动过程,学会raMBdisKB的使用,让你在短时间内学到更多的Linux知识。当然,你会得到很大的乐趣。这个项目只是做一个具有基本特征的Linux系统,如果你想自己做一个具有完整功能的Linux,请阅读Linux From Scratch (LFS)文档。
三、什么人适合读这篇文档
如果你是一个Linux爱好者,并且很想了解Linux的启动过程和系统的基本结构,而且是一个喜欢动手研究小玩意的人,那么这个文档可以满足你的需求。如果你仅仅是用Linux来做一些普通的日常工作,而不在乎你的Linux到底怎么工作,那么这份文档也许不太适合你。另外,如果你是Linux爱好者,但是目前还是一个刚刚入门的newbi,我建议你先把Linux命令学好。不过我想我会尽可能的把这份文档写详细一些,如果你有足够的毅力,或许一个newbi也能成功做一个babyLinux。
四、应该具备的知识
在做一个babyLinux之前,你应当已经会应用Linux最常用的命令。并且至少有一次成功编译并安装系统内核的经历,会通过编译源代码来安装软件。如果你具备了这些条件,那么做这样一个小系统会很顺利,如果你还没有掌握这些知识,你可能会遇到一些困难。但是只要有毅力,也可以成功。你不需要具备编程的知识,因为我的目标是:让具有中等以上Linux水平的爱好者可以通过阅读文档轻松完成这个项目。关于一张软盘上的Linux还有一个很著名的Linux叫LOAP (Linux On A Floppy) 但是它是由比较专业的人员需要编写很多程序完成的。而且没有关于它制作过程的文档。
五、Linux系统引导过程简介
首先,主板的BIOS会读取硬盘的主引导记录(MBR),MBR中存放的是一段很小的程序,它的功能是从硬盘读取操作系统核心文件并运行,因为这个小程序太小了,因此通常这个小程序不具备直接引导系统内核的能力,它先去引导另一个稍微大一点的小程序,再由这个大一点的小程序去引导系统内核。在Linux系统中这样的小程序有LILO和GRUB。在这个项目中,我决定用LILO来做系统引导程序。在软盘上启动Linux系统的过程和在硬盘上启动的过程相似。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者