自己动手做一个迷你linux系统本文将带领大家构建一个迷你型的linux系统。它占用的硬盘空间远小于16M字节,但是却包括了XFree86的XWindow窗口系统。目标本文要构建的这个迷你型的linux系统只能在一台特定的单机上运行,如果读者朋友们有兴趣的话,在这个系统的基础上加以改进,是可以构建出通用的、可以在大多数常规PC机上即插即用的系统来的。但是这已经不在本文的话题之内了,读者朋友们如果有兴趣,可以通过我的电子邮件和我讨论其中的细节问题。我们的目标linux系统运行在一台普通的Intel386PC机上,可以有硬盘,也可以不要硬盘,而用FlashDisk来代替。如果是用Flash盘的话,需要能够支持从Flash盘启动,而且Flash盘的大小要在16M字节或者以上。我们希望用户一开机启动,就直接进入XWindow图形界面,运行事先指定好的程序。不需要用户输入用户名和密码进行登录。我们设定的这个目标有点像一个XTerminal终端工作站。稍加改进,还可以做成干脆无盘的形式,也就是说,连16M的Flash盘也不要了。不过,这也超出了本文的话题了。读者朋友们如果有兴趣,可以来信和我进行讨论。系统启动因为我们要考虑从Flash盘进行启动,所以我们选择用LILO作为我们的BootLoader,而不选用GRUB。这是考虑到GRUB有较强的对硬盘和文件系统的识别能力,而Flash盘到底不是标准的硬盘,并且我们选用的文件系统GRUB又不一定认识,搞不好的话GRUB反会弄巧成拙。而LILO就简单的多了,它在硬盘开始的MBR写入一个小程序,这个小程序不经过文件系统,直接从硬盘扇区号,读出KernelImage装入内存。这样,保险系数就大大增加。并且也给了我们自由选用文件系统的余地。那么,我们要如何安装LILO呢?首先,我们要找一块普通的800M左右的IDE硬盘,连在目标机器的IDE线上。这样在我们的目标机器上,IDE1上挂的是Flash盘,IDE2上挂的是一块工作硬盘。我们用标准的步骤在IDE2的标准硬盘上装上一个DebianGNU/linux系统。当然,如果读者朋友们手头没有Debian,也可以装RedHat系统。装好工作系统之后,要首先做一些裁减工作,把不必要的Service和XWindow等等东西都删掉。这样做的目的是增进系统启动速度,因为我们在后面的工作中,肯定要不停的重新启动机器,所以启动速度对我们的工作效率是很关键的。装好工作系统之后,在Falsh盘上做一个Ext2文件系统,这个用mke2fs这个命令就可以完成。由于Flash盘是接在IDE1上的,所以在linux里面,它的身份是/dev/hda。本文作者在操作的时候,把整个Flash盘划分了一个整个的分区,所以,调用mke2fs的时候,处理的是/dev/hda1。读者朋友们应该可以直接在/dev/hda上做一个Ext2文件系统,而不用事先分区。在Flash盘上做好了文件系统之后,就可以把一个编译好的内核映像文件vmlinuz拷贝到Flash盘上了。注意,必须要先把这个vmlinuz映像文件拷贝到Flash盘上,然后才能在Flash盘上安装LILO。不然的话,LILO到时候可是会LILILILI打结巴的,因为它会找不到KernelImage在Flash盘上的位置的,那样的话Flash盘也就启动不起来了。还
自己动手做一个迷你linux系统 来自淘豆网m.daumloan.com转载请标明出处.