近来一直帮朋友安装系统,开始在安装的时候都是帮朋友重新分区,我的习惯一直是从硬盘安装windows系统,而且在WINDOWS的系统盘上保留DOS,这样方便以后的恢复。可是手头的工具盘已经很破了,都是4年前做的DOS引导光盘。
后来看到slax linux的引导光盘很不错,小巧,速度也快,slax linux是从slackware linux裁减而来,系统的配置类似freebsd,这是我选择它的一个非常重要的原因。就想能否把dos和slax整合在一起,这样也可以快速分区, format分区,同时可以利用linux来利用网络连接其它的计算机。
想到就动手开始干了,把最新的slax linux光盘下载下来,才50多兆,然后使用winrar解压这个iso文件,整个的光盘目录就出来了。发现slax 用的是syslinux来做启动,查了些资料,syslinux可以引导dos软盘镜像的。不过需要memdisk,这个文件是在内存中虚拟一个磁盘,把dos的img文件放在虚拟磁盘上执行的。在slax的modules里有syslinux的模块包下载,操作步骤如下:
1.将下载的syslinux.mo放在解压后的modules中
2.进入DOS提示符,敲入make_iso c:\slax.iso
3.利用vmplayer来加载这个光盘镜像,启动slax
4.进入虚拟机的linux,配置好网络,利用find -name "memdisk"找到memdisk文件。
5.在虚拟机中利用FTP上传或者在WINDOWS下利用FTP从虚拟机中下载这个文件。
将memdisk放在解压后的光盘根目录,然后把找到的dos7.1工具盘镜像(dos.img)放在boot目录下,修改isolinux.cfg,改为如下的形式:
display boot/splash.cfg
default dos
prompt 1
timeout 40
F1 boot/splash.txt
F2 boot/splash2.txt
F3 boot/splash.cfg
label dos
kernel memdisk
append initrd=boot/dos.img
label slax
kernel boot/vmlinuz
append vga=769 changes=slaxsave.dat max_loop=255 initrd=boot/initrd.gz init=linuxrc load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=4444 root=/dev/ram0 rw
label memtest
kernel boot/memtest
修改好文件以后,需要对当前的slax进行扩充,下载了python(方便以后利用它来写些小的使用程序),namp(做网络扫描),tcpdump (网络监听),vim(非常棒的编辑器),vsftpd(FTP服务软件),这些都是以二进制模块的方式放在modules文件夹下,还需要一个好用的 FTP客户端软件,自我感觉lftp不错,可是slax的网站上没有提供这个软件的mo文件。看了下文档,发现可以利用slackware的tgz安装包来直接制做,到slackware的网站下载了lftp的tgz,在vmplayer里启动slax.iso文件,下载到系统里,使用tgz2mo就可以转换过来了,然后上传到windows系统里,把转换好的lftp.mo文件放在modules文件下。
现在slax下的软件已经备齐了,顺便把DOS下的DM分区工具,ghost工具也全部拷贝到了这个文件夹里。好了,一切就绪,在WINDOWS的 DOS命令符下敲入make_iso c:\slax.iso,一张整合了DOS启动盘,扩展的slax光盘就出来了,按照上面的配置,默认是启动到dos的,我们也可以在提示符下敲入 slax来启动linux,如果进入了dos,可以切到光盘的盘符,假设光盘盘符为C: ,那么做如下操作:
A:\>c:
c:\>cd boot\DOS
c:\boot\DOS\>linux
我们的slax又照样的启动起来了。
整个光盘的目录如下:
│ COPYING
│ LICENSE
│ README
│ autorun.inf
│ changelog.txt
│ cheatcodes.txt
│ filelist.txt
│ livecd.sgn
│ make_disk.bat
│ make_disk.sh
│ make_iso.bat
│ make_iso.sh
│ requirements.txt
│ slaxsave.zip
│ unionfs.html
│ memdisk
│ isolinux.cfg
│ vim.exe
│
├─base
│ 01_kernel.mo
│ 02_core.mo
│ 03_frodo.mo
│
├─boot
│ │ initrd.gz
│ │ isolinux.bi_
│ │ isolinux.bin
│ │ isolinux.boot
│ │ memtest
│ │ slax.ico
│ │ splash.cfg
│ │ splash.lss
│ │ splash.txt
│ │ splash2.txt
│ │ vmlinuz
│ │ dos.img
│ │
│ └─DOS
│ config
│ linux.bat
│ loadlin.exe
│ readme.txt
│
├─devel
│ slax-build-5.1.8.tar.gz
│
├─modules
│ Tcpdump_3_9_3.mo
│ Vim_6_3_078.mo
│ nmap_4_11.mo
│ Python_2_4_3.mo
│ vsftpd_2_0_4_i486_1.mo
│ UnRAR_3_6_8.mo
│ bzip2_1_0_3.mo
│ lftp-3.5.4.mo
│
├─optional
├─rootcopy
│ └─usr
│ └─share
│ └─vim
│ vimrc
│
├─tools
│ │ README
│ │ deb2mo
│ │ dir2mo
│ │ img2mo
│ │ liblinuxlive
│ │ mksquashfs
│ │ mo2dir
│ │ tgz2mo
│ │ unionctl
│ │ uniondbg
│ │ unsquashfs
│ │ uselivemod
│ │
│ └─WIN
│ config
│ cygwin1.dll
│ mkisofs.exe
│ syslinux.cfg
│ syslinux.exe
│
└─DM
DDLOADER.BIN
DM.COM
DM.OVL
DM1.EXE
DM1.HLP
DM1.REC
INI13.exe
INT13.386
ONTRACKD.SYS
ONTRACKW.386
XBIOS.OVL
一张功能强大的启动光盘就出来了,一共只有73兆。
来源:http://bbs.chinaunix.net/viewthread.php?tid=852459

非常好的一篇文章,
非常好的一篇文章,我也正在考虑winPE和slax/fanx的融合。
支持
支持,不过为了体积到时候体积一定会增大的。