制作CentOS USB启动盘

dqcoffee 2010-12-25

公司以前服务器都是用的ubuntu的系统,这次听了一大牛的话,把系统换成CentOS的,并且把web服务器换成了nginx

听说金山的也是用的这样的Web架构

不过下载的Centos live cd是不能安装系统到硬盘的,现在手上又没有DVD的盘来刻录。当时就想ubuntu的有可以制作usb启动盘的,能不能把Centos的也做成一个呢?

以前用Ultral ISO制作过XP的安装盘,是很简单的,不过试了下直接用下载的centos的dvd(1-2里的第一个ISO文件)制作完成后启动失败,说是什么东西错了 就把这条路给断了

看下制作成功的步骤

    准备工作:

       linux系统、  windows系统、8G   U盘一个、Centos DVD ISO文件(一般都有两个文件,只需要第一个就行了),syslinux.exe文件

  开始工作:

   1、把U盘插入linux系统里,运行    fdisk -l

          这一步一般是不会出什么问题的,只是检测下系统能不能发现U盘

   2、执行    fdisk  /dev/sdb   (一般U盘在linux下都以sdb开头)进行对U盘进行分区(本人对这个命令不是很熟,刚好使用的是ubuntu系统,就直接使用ubuntu的硬盘管理工具进行了分区)

        分成两个  /dev/sdb1 和/dev/sdb2  其中/dev/sdb1为512M  剩下的就全给/dev/sdb2这样做主要是为了在对/dev/sdb1操作时不把放到/dev/sdb2中的ISO文件给弄丢,一个4G的文件拷起来还是很费时的

3、格式化分区    

mkfs.msdos  /dev/sdb1
mkfs.ext2  /dev/sdb2

 4、在/mnt下建立iso、usb1、usb2三个目录(这个命令就不用说了吧),分别对应iso文件和新建的U盘上的两个分区

 5、挂载对应的分区

   mount -o loop /root/CentOS-5.5-x86_654-bin-DVD.iso  /mnt/iso
mount   /dev/sdb1  /mnt/usb1
mount /dev/sdb2   /mnt/usb2
 

   6、下面开始拷贝文件

cp –a /mnt/iso/isolinux /mnt/usb1/syslinux
touch /mnt/usb1/anaconda-ks.cfg
   因为我使用的是ubuntu系统,没有anaconda-ks.cfg文件,这里就直接新建一个
cp /root/CentOS-5.5-x86_654-bin-DVD.iso /mnt/usb2

  7、修改文件

  将isolinux.cfg改为syslinuxcfg

mv /mnt/usb1/syslinux/isolinux.cfg /mnt/usb1/syslinux/syslinux.cfg

 修改syslinux.cfg,修改后内容如下

default linux
prompt 1
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
  kernel vmlinuz
  append initrd=initrd.img
label text
  kernel vmlinuz
  append initrd=initrd.img text
label ks
  kernel vmlinuz
  append ks=hd:sdb1:/anaconda-ks.cfg initrd=initrd.img
label local
  localboot 1
label memtest86
  kernel memtest
  append -
 

  修改文件/mnt/usb1/anaconda-ks.cfg,使其内容如下:

# Kickstart file automatically generated by anaconda.
install
harddrive --partition=sdb2 --dir=
lang en_US.UTF-8
keyboard us
 
text
rootpw  123456
firewall --enabled --port=22:tcp
authconfig --enableshadow --enablemd5
selinux --enforcing
timezone --utc America/New_York
bootloader --location=partition --driveorder=sda
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
clearpart --linux
part / --fstype ext3 --size=20000
part /var --fstype ext3 --size=20000
part /usr --fstype ext3 --size=20000
part /data --fstype ext3 --size=1 --grow
part swap --size=4096
 
%packages
@development-libs
@system-tools
@core
@base
@network-server
@admin-tools
@development-tools
audit
kexec-tools
device-mapper-multipath
imake
  

8、给U盘写入mbr

  将U盘插到windows的系统上,执行命令

syslinux.exe  -a -m  i:

 上面的i:为盘符,请根据自己的实际情况来定

这步完成后就可以来安装系统了,将U盘插到服务器上,在启动过程中把启动项选择为USB

就带你进入Centos的安装界面了

中间安装中注意分区时不要把U盘给算上,还有一个大致为选择安装源文件位置的,选择硬盘再选择sdb2就OK啦

安装完成后有可能grub的启动有误,手动改一下boot(hd1,0) 为boot(hd0,0)就OK啦

 以后不用每次都拿光驱来安装系统了

相关推荐