标题：系统引导盘
基本信息
如果你能做一张windows系统引导盘，就能在windows系统出问题时，用这张引导盘来引导你的系统，然后再找出故障并决之。下面笔者就介绍三种做引导盘的方法。 1．在windows中创建系统引导盘 打开控制面板，双击添加／删除程序”，然后选引导盘”选卡。需要说明的是，只有在这里优质出的引导盘的功能最完整，它包括了光驱的通用驱动程序，可引导系统并能支持绝大多数的atapiide与scsi光驱，这样就能直接从光驱上安装各类windows操作系统了。另外，它还包括一个虚拟盘的创建程序，在启动后它会自动创建一个2mb的虚拟磁盘，原来被压缩为cab格式的诊断工具和光驱驱动程序就自动释放到虚拟盘上了，使运行磁盘分区、扫描、格式化等软件工具的速度大大加快。 单点创建引导盘”按钮，系统会提示你在软驱中插盘，然后经过长时间的等待后，你就能拥有一张windos引导盘了。 2．在dos下做引导盘 如果你的windows系统崩溃了，不能入windows，想重装系统但手上却没有引导盘，那就只能自己想办法做个引导盘了。如果你的系统仍能入dos，那么就可入win 。
如何制作
本文旨在如何给工作的系统做LILO和内核的软盘备份，因为大多数Linux服务器使用LI 
LO 
进行引导，同时也给出紧急修复办法。   
二：测试环境   
Redhat   Linux   ，IDE和SCSI启动硬盘。   
三：备份措施   
当我们设置完新的服务器后，除了常规的服务器重要配置文件和系统备份之外，最好? 
惨? 
做LILO和内核的软盘备份，万一由于某种原因导致LILO不能引导系统。   
1.   第一种方法   
适用范围： 
自己编译的内核，所有的支持模块已经编译进内核，如果有SCSI硬盘，必须 
编译进SCSI支持进内   核，也就是说内核已经包含了所有引导需要的东西   
步骤：   
格式化一张空白软盘，不要生成文件系统，直接写内核到软盘，然后改变内核文件中? 
母? 
文件系统分区定义   
fdformat   /dev/fd0h1440   
dd   if=/boot/vmlinuz   of=/dev/fd0   (用你自己的内核文件名替代vmlinuz)   
rdev   /dev/fd0   /dev/sda3   (用你的根分区设备名称替代/dev/sda3)   
rdev   -R   /dev/fd0   1   (安装根文件系统成只读模式)   
作用：   这样当系统LILO失败时，可用该软盘引导系统且安装硬盘根文件系统。 
2.   第二种方法   
适用范围： 
内核需要一系列模块帮助引导，如SCSI硬盘驱动程序，则需要用下面的方法 
生成带LILO的引导软盘   
步骤：   放一张新的软盘，不要格式化和分区，直接用mkbootdisk创建引导盘   
mkbootdisk   --device   /dev/fd0   2.2.12-20   (用你的内核版本代替2.2.12-20, 
可用uname   -a查看)   
3.   第三种方法   
适用范围： 
mkbootdisk命令不可用，或者无论什么理由你想手动创建一张带LILO的引导 
软盘   
步骤：   
fdformat   /dev/fd0h1440   (低级格式化软盘)   
/sbin/mkfs.minix   /dev/fd0   1440   (在软盘上创建minix文件系统)   
/bin/mount   /dev/fd0   /mnt/floppy   (安装软盘到/mnt/floppy目录)   
cd   /mnt/floppy   
mkdir   boot   etc   dev   
cp   -a   /boot/vmlinuz   /boot/initrd.img   /boot/boot.b   boot/   
注：用你的内核文件名代替vmlinuz   
用你的initrd映像文件名代替initrd.img   
cp   -a   /dev/fd0   /dev/null   /dev/zero   /dev/hd[abcd]*   /dev/sd[abcd]*   dev/ 
注：   如果你没有SCSI设备，可不用拷贝/dev/sd[abcd]*   
创建/mnt/floppy/etc/lilo.conf如下   
boot=/dev/fd0   
read-only   
prompt   
image   =   /boot/vmlinuz   
initrd=/boot/initrd.img   
root   =   /dev/sda1   #   把/dev/sda1换成你的根文件系统设备名称   
label   =   linux   
最后运行   lilo   -r   /mnt/floppy   在软盘上安装LILO 
(将自动生成/boot/map文件包括内 
核的物理映像位置)   
4.   剖析initrd.img   
如果你是用SCSI硬盘启动，内核必须能装入SCSI驱动程序才能转入你的硬盘根文件系? 
骋? 
导系统。   
如果你的内核没有编译进SCSI驱动程序，则需要用mkinitrd创建RAM驱动映像   
想知道你的initrd.img中包含了哪些驱动程序吗？   
cat   initrd.img   |   gunzip   >   /tmp/myinitrdfs   
mkdir   /mnt/tmp   
mount   -o   loop   -t   ext2   /tmp/myinitrdfs   /mnt/tmp   
然后查看/mnt/tmp中的文件linuxrc中的内容即可知道启动时会装入哪些驱动程序   
你也可以更改其中的内容，假设我们想加另一种SCSI驱动aic7xxx.o进入你的initrd.i 
mg 
cd   /mnt/tmp   
vi   linuxrc   加上一行   insmod   /lib/aic7xxx.o   
cp   /lib/modules/`uname   -r`/scsi/aic7xxx.o   lib/   
cd   /   
umount   /mnt/tmp   
dd   if=/tmp/myinitrdfs   |   gzip   >   /boot/initrd2.img   
至此，新的initrd文件initrd2.img就包含了aic7xxx的驱动程序了。   
四：   紧急修复   
许多情况能导致LILO引导失败，象升级内核，忘记运行lilo更新MBR，克隆硬盘，缺少 
SCSI驱动程序引导根文件系统等等，当我们遇到这些情况而手边又没有备份的引导软? 
? 
时，你仍然有许多其它途径去修复   
1. 
查看周围有没有类似的其它机器和系统在运行，如另一台服务器上有相同版本或同系 
列的内核在运行。   
则在另一台系统上生成引导软盘(带LILO或者不带LILO)，如果需要添加initrd.img中? 
? 
SCSI驱动文件   
2. 
用CDROM安装盘启动，CDROM会载入SCSI驱动，到分区界面时用ALT+F2转入字符界面， 
可mount硬盘根分区   
，运行lilo   和做相关的修复   
3. 
下载包含boot/root文件系统在一张软盘上的文件， 
完全从一张软盘启动   
系统，完全不需要硬盘，然后再安装硬盘，修复系统(例如万一你的/etc/fstab中的根 
文 
件分区指定错误   ，可用此方法修复)   
4. 
最后如果都不可行，你可以下载与你的服务器相同版本或者同系列中最新版本的内 
核，在另一台机器上编 
译需要的SCSI和网卡等相关驱动程序直接进入内核，不需要任何 
模块，然后用本文的方法拷贝至软盘，去   引导系统   
吴阿亭   (   Jephe   Wu   )