学习网考试学习资料

Gzu521.com

制作在软盘上跑的Linux引导器详细过程(1)

LINUX教程   点击:次   发布时间:2007-3-5   【字体: 】   来源:Gzu521.com
Gzu521.com我的学习网
1. 软盘上安装引导器(grub)  

  一般制作软盘上跑的LINUX引导器都使用syslinux这个工具(这个工具不支持ext2分区格式,只能支持fat分区格式),因为我对grub比较熟悉,并且我在软盘上安装grub只用了132kb空间,不是很耗磁盘空间。  

  具体操作如下:  


# mke2fs /dev/fd0  

  创建了 ext2 文件系统后,需要安装该文件系统:  


# mount /dev/fd0 /mnt/floppy  

  现在,需要创建一些目录,并将一些关键文件(原先安装 grub 时已安装了这些文件)复制到软盘:  


# mkdir /mnt/floppy/boot   
# mkdir /mnt/floppy/boot/grub   
# cp /boot/grub/stage1 /mnt/floppy/boot/grub   
# cp /boot/grub/stage2 /mnt/floppy/boot/grub  

  再有一个步骤,就能得到可用的引导盘。  

  在linux bash中,从 root 用户运行“grub”,该程序非常有趣并值得注意,因为它实际上是 grub 引导装入器的半功能性版本。尽管 linux 已经启动并正在运行,您仍可以运行 grub 并执行某些任务,而且其界面与使用 grub 引导盘或将 grub 安装到硬盘 mbr 时看到的界面(即grub控制台)完全相同。  

  在 grub> 提示符处,输入:  


grub> root (fd0)   
grub> setup (fd0)   
grub> quit  

  现在,引导盘完成了。 
  2. 安装根文件系统  
  一套linux系统要正常启动,根文件系统要包括下列文件夹:  


/bin /etc /proc /tmp /var /dev /mnt  

  要包括下列基本的设备文件:  


/dev/console /dev/fd0 /dev/null /dev/ram0 /dev/tty /dev/tty0  

  要包括下列配置文件:  


/etc/rc.d/inittab /etc/rc.d/rc.sysinit /etc/fstab  

  要实现基本的功能,还要包括一些常用工具:如:sh,ls,cd,cat等。其中,前面三个部分不要多少空间的,但是常用工具会占用很多空间,要是用原来系统中的这些命令,就是全部用静态编译,不是用动态连接库,大概有2mb~3mb,放不进软盘。网络上解决的方案是使用busybox工具。具体可以到官方网站:www.busybox.net看看。下载busybox工具的源代码。  

  注意:  

  (1) 译的时候要静态编译,修改 makefile 中的 dostatic 参数,从false 改为 true,这样,编译出来的代码就不要依赖glibc了。  

  (2) 因为我们用的是 busybox 上的 init,与一般所使用的 init 不太一样,会先执行 /etc/init.d/rcs 而非 /etc/rc.d/rc.sysinit,为了做出来的 floppylinux 架构与 redhat 的架构一样,所以修改了 busybox 中的 init.c底下是修到的部分内容∶  


#ifndef init_script  
#define init_srcipt "/etc/rc.d/rc.sysinit"  
#endif  

  具体操作如下:  

  (1) 官方网站上下载busybox的最新版本:busybox-0.60.5.tar.gz解开,按照上面的注意点修改源代码。  

  (2) 运行下列命令:  


#make  
#make install  

  (3) 译好的可势行文件放在 ./_install 文件夹里的。  


#cp ./_install /tmp/floppy-linux -r  

下 一 页
2页: 第 [1] [2]

责任编辑:gzu521

电脑课堂分类
Windows 2000教程
Windows XP教程
Windows 2003教程
Windows Vista教程
LINUX教程
软件教学
办公软件
硬件DIY
分类推荐信息
更多...
大类最新文章
更多...