制作Mini Linux U盘启动盘

制作Mini Linux U盘启动盘

by ncforest
http://ncforest.blog.163.com

在将U盘制作成启动盘,然后用Mini Linux引导,可以用以修复硬盘上的Linux系统错误。

Mini linux很多,如:CDlinux、dsl、puppy等,还可以自己lfs。这里简单介绍最简单的制作方法。由于U盘大小限制(我的U盘64M,基本没用了,正好拿来做引导盘),我选择了CDlinux0.4.9(19M)、Mini Chinese Linux(mclinux2.02)(2.88M)、BomberLinux 3.9(2.88M),因为我的U盘上还装有mini winpe、maxdos、矮人dos,要做到他们加起来不超过64M(最后一共61M)。

由于已经装好的winpe等都是采用grub引导的,因此这三个mini linux当然也用grub来引导。如果你没有安装上面这些,你需要先制作可启动U盘,先用惠普格式化U盘工具格式化,然后用grubinstall将grub安装到U盘的mbr,并复制grldr到U盘根目录。

首先看CDlinux,由于它本身是采用syslinux来引导的,因此需要做一点调整。首先打开cdlinux的iso,将boot目录下的cdlinux提取出来,然后,将cdlinux.img的扩展名改成gz,即cdlinux.gz,然后将其解压,由于我们采用grub引导,因此syslinux的文件都可以删掉,只保留bzImage和CDlinux.gz,将其复制到cdlinux目录下,然后将cdlinux目录复制到U盘根目录。然后写menu.lst

title CDlinux 0.4.9 (with extra)
find --set-root /grubhere.id
kernel /CDlinux/bzImage root=/dev/ram0 cdl_dev=/dev/sda1
initrd /CDlinux/CDlinux.gz

grubhere.id意义见上一篇文章。具体的更多参数可以参考cdlinux howtos中的命令行参数,这里/dev/sda1可能要根据具体情况来区别对待。我当初把它搞成hda1,结果不能加载extra,因为找不到,后来发现linux将其识别为sda1。中文:kernel /CDlinux/bzImage root=/dev/ram0 CDL_LANG=zh_CN.UTF8 cdl_dev=/dev/sda1

然后再看mclinux,我下载了mclinux1.0和mclinux2.02,mclinux1.0是一个ima软盘镜像文件,因此直接用软盘引导的方式即可,而mclinux2没有做成软盘镜像,是一人zip文件,里面有很多把它rawrite到软盘的工具。还是做成ima方便,首先解压,然后只留mclinux.img、zimage、syslinux.cfg三个文件,将它们做成ima,由于已经有mclinux1.0.ima,因此我直接用winimage打开mclinux10.ima,然后删里面那三个文件,将这三个文件拉进去,然后保存就OK了。将保存后的mclinux.ima复制到U盘/linux/下,然后写menu.lst:

title Mini Chinese Linux 2.02
find --set-root /grubhere.id
map --mem /linux/mclinux.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

对于bomber linux 3.7,本身就是一个ima文件,因此直接复制到linux目录下,然后写menu.lst

title BomberLinux 3.7
find --set-root /grubhere.id
map --mem /linux/bomberlinux.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

这样就制作完成了,如果U盘够大,完全可以使用功能更强的cdlinux0.5.9(包含X和更多的软件)和dsl、puppy等。最后,我们就完成了在一个64M U盘上安装winpe+maxdosv6plux+矮人dos5.3+cdlinux0.4.9+mclinux2.02+bomberlinux3.7这样一个mini 型的功能非常齐全的启动型U盘。

最后我把这些做成了一个傻瓜化的安装包。只需点几下就可以完成整个过程。
有助于系统维护