一般来说,我们安装一台服务器都是使用CD或DVD安装,但是这种安装方式有几个缺点:
1、CD和DVD的盘片寿命有限,几次安装下来就很容易磨花而作废。
2、CD和DVD安装的速度慢,安装前要刻盘,安装时读盘时间也比较长。
3、最重要的一点是对于我这种偶尔要去机房的人来说,机房的服务器不是每个都有CD或DVD光驱的。
而U盘安装则是一种很好的替代方式。特别是有以下几个显著优势:
1、U盘价格便宜,容易购买,容量也比CD和DVD大很多。
2、U盘可反复使用,需要安装什么系统就制作什么系统的U盘,如果不用了,只要格式化一下,就可以当普通U盘使用来存储数据。
3、携带方便,U盘很小巧,随身携带也很方便。
4、U盘读写速度比CD和DVD明显快很多,安装系统能节省很多时间。
基于以上几点,我一般安装系统都是优先考虑使用U盘或PXE安装方式。这两种方式既适合单机安装也适合大规模安装。这篇文章就是写我怎样制作U盘版的系统安装盘。
 
制作环境:
1、装Linux系统的电脑一台(我使用的是fedora系统的笔记本)
2、8G的U盘一个(我使用的是kingmax的超棒8G版,非常的小巧啊)
3、Red Hat Enterprise Linux AS 4 update 8的ISO镜像
4、还有就是电脑上要装syslinux(这个很重要,一切就靠它了)
 
制作步骤:
注:以下步骤都是在root权限下操作的。
把U盘插入电脑USB口上,让系统认出U盘。
 
#fdisk -l    //查看系统是否发现U盘
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0f800000
Device Boot Start End Blocks Id System
/dev/sda1 * 1 70 555008 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 70 7043 56012800 83 Linux
/dev/sda3 7043 38913 256000833 83 Linux
Disk /dev/sdb: 8019 MB, 8019509248 bytes
255 heads, 63 sectors/track, 974 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 97 779121 6 FAT16
/dev/sdb2 98 974 7044502+ 83 Linux
上面那个/dev/sda是我笔记本的硬盘,下面这个/dev/sdb才是我的U盘。这个千万不能搞错,搞错了你把自己的系统重新分区格式化了丢数据了可千万别来找我算帐。
上面的U盘其实已经按照我的需要分区完毕了。其实这个操作很容易。就是把U盘fdisk成两个分区,一个fat16,一个ext2,我来解释一下,其实是可以分一个区的,因为syslinx只认windows分区,但是为了更广泛的兼容,我分成两个,一个引导分区,一个镜像分区。
 
#fdisk /dev/sdb      //看清楚,选对设备,千万别把自己的系统给重新分区了
 
分两个区,引导分区500M容量(这个容量你可以按照自己的需求更改,只是提醒一下,引导分区没有必要分的太大),格式是fat16,要设置为启动,其他空间都留给镜像分区,格式是ext2,这样就ok了。完成后的结果如下:
 
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 97 779121 6 FAT16
/dev/sdb2 98 974 7044502+ 83 Linux
你不要跟我说你不会fdisk,那我会吐血的,如果真的不会请man fdisk,或者google一下。
分区分好了,接下来要建立文件系统了。
 
#mkfs.vfat -b 4096 -n usbboot /dev/sdb1
#mkfs.ext2 -b 4096 -L usbiso /dev/sdb2
文件系统建好了,挂载一下这两个分区。
 
#mkdir /media/usb1
#mkdir /media/usb2
#mount /dev/sdb1 /media/usb1
#mount /dev/sdb2 /media/usb2
接下来轮到Red Hat Enterprise Linux AS 4 update 8的ISO镜像出场了。首先要把Red Hat Enterprise Linux AS 4 update 8的ISO镜像复制到U盘的镜像分区里。
 
#cp /home/gavin/ISO/RHEL4.8-i386-AS-DVD.iso /media/usb2
鉴于一般U盘的写速度比较慢,这个操作是需要点时间了,你可以去泡杯茶,或是干点其他的事情,毕竟等待是件很无聊的事情。
复制完毕后,把Red Hat Enterprise Linux AS 4 update 8的ISO镜像挂载一下。
 
#mount -o loop /home/gavin/ISO/RHEL4.8-i386-AS-DVD.iso /mnt
复制引导文件到U盘的引导分区。
 
# cp -avr /mnt/isolinux /media/usb1/syslinux
#mv /media/usb1/syslinux/isolinux.cfg /media/usb1/syslinux/syslinux.cfg
这里我说明一下,从镜像里复制的isolinux目录其实就是isolinux的配置文件和系统启动的文件目录。内容如下:
 
#ls -l   /mnt/isolinux
总用量 6152
-r--r--r-- 1 root root 2048 5月 5 2009 boot.cat
-r--r--r-- 10 root root 292 5月 5 2009 boot.msg
-r--r--r-- 10 root root 1034 5月 5 2009 general.msg
-r--r--r-- 20 root root 4655733 5月 5 2009 initrd.img
-r--r--r-- 10 root root 9856 5月 5 2009 isolinux.bin
-r-xr-xr-x 10 root root 595 5月 5 2009 isolinux.cfg
-r--r--r-- 10 root root 81860 5月 5 2009 memtest
-r--r--r-- 10 root root 788 5月 5 2009 options.msg
-r--r--r-- 10 root root 872 5月 5 2009 param.msg
-r--r--r-- 10 root root 490 5月 5 2009 rescue.msg
-r--r--r-- 10 root root 549 5月 5 2009 snake.msg
-r--r--r-- 10 root root 6056 5月 5 2009 splash.lss
-r--r--r-- 1 root root 2880 5月 5 2009 TRANS.TBL
-r--r--r-- 20 root root 1532940 5月 5 2009 vmlinuz
其实isolinux和syslinux一样都是一个轻量级的引导器,而且非常相似,所以它们的配置文件的格式也差不多,可以混用,所以刚才我复制这个目录后,把里面的配置文件isolinux.cfg改名syslinux.cfg,就可直接使用了。
ok!到这里大部分工作都做完了,就剩安装syslinux这个引导器了。
 
#umount /mnt
#umount /dev/sdb1      //一定要卸载掉挂载的分区
#umout /dev/sdb2       //一定要卸载掉挂载的分区
安装syslinux引导器。
 
#syslinux -f /dev/sdb1
安装完毕,快吧,不然怎么说它是轻量级的呢,没有grub那么复杂吧。检查一下是否真的安装成功。
 
#mount /dev/sdb1 /media/usb1
#ls -l /media/usb1
总用量 20
-r-xr-xr-x 1 woszm woszm 14445 6月 10 16:20 ldlinux.sys
drwx------ 2 woszm woszm 4096 6月 10 16:21 syslinux
看到了吧,U盘引导分区根目录下多出来一个ldlinux.sys文件。见到这个文件就表示你安装syslinux成功了。
一切完毕,你可以去找台服务器用U盘安装了。

补充一下:
使用U盘安装有点类似硬盘安装,安装的时候在选安装介质那一步选local drive,具体的分区就选U盘的镜像分区,其他的安装步骤就和普通光盘安装没区别了。
有些朋友非常喜欢全自动安装,这样可以懒得连键盘都不敲一下了。其实这个也 简单,那就把ks.cfg文件也复制到U盘里(两个分区随你选),只要修改一下syslinux.cfg这个配置文件的启动项就可以实现懒人的自动安装了。这里我就不阐述具体步骤了,你懂的。