U盘安装Centos

一:准备工作:

1:准备所需要的软件。它包括 Centos镜像(DVD)文件和windows版的syslinux.exe文件。

2:准备两个操作系统,一个windows,一个linux.windows用来做引导--写 mbr和生成ldlinux.sys;linux用来创建分区、拷贝文件等。

3:准备一个4G以上的U盘 为了保险起见我准备一个8个G的U盘,因为考CentOS的ISO文件就需要3.8个G。

二:具体的执行步骤:Linux系统上的操作:

1.在mnt目录下新建三个目录文件:usb1 ,usb2, iso

#mkdir usb1 usb2 iso

把CentOS的iso文件挂载到/mnt/iso上

#mount –o loop  /tmp/CentOS_5.4_Final.iso  /mnt/iso

进入/mnt/iso 确定像浏览dvd光盘一样查看目录及其里面的文件。

2:把U盘插入linux主机,然后执行fdisk -l检查是否被识别。在我的系统里,它被识别为/dev/sdb。(也可以去/dev下看看有没有sdb这个设备文件)。并把U盘分成两个区

#fdisk  -l                  查看磁盘

#fdisk  /dev/sdb            给U盘分区

n                         新建分区

p                         选择新建主分区

1                         分区号是一

enter                     回车键,分区的开始柱面

+500M                    制定分区的大小,我这里是500M

P                         查看分区是否成功  有/dev/sdb1 说明成功

n                         新建分区

p                         新建主分区

2                         主分区号为2

enter                      磁盘分区的开始柱面

enter                      结束柱面

a                         激活分区做可引导分区

1                         激活分区号为1的分区

w                        保存分区信息

#partprobe /dev/sdb         让内核重新读取分区表,不执行此命令,重启机器也可以

3:创建文件系统 并挂载分区

#mkfs.msdos  /dev/sdb1      把U盘的第一个分区格式化成msdos格式的文件系统 如果不能格式化请卸载分区在格式化

#mkfs.ext2  /dev/sdb2         把U盘的第二个分区格式化成ext2的格式 据说syslinux好像只跟dos和ext2文件系统友好。本人没有验证过ext3的格式 你俩有机会可以验证一下。

#mount  /dev/sdb1  /mnt/usb1   将U盘的第一个分区挂载到/mnt/usb1目录上

#mount  /dev/sdb2  /mnt/usb2    将U胖的第二个分区挂载/mnt/usb2 目录上

4:复制目录及文件。需要复制的目录是/mnt/iso/isolinux,需要复制的文件是/root/anaconda-ks.cfg.文件/root /anaconda-ks.cfg不是必须的,为了能自动安装centos,所以使用了这个文件。 

#cp –a /mnt/iso/isolinux /mnt/usb1/syslinux    拷贝isolinux目录到/mnt/usb1/下,(注意改了目录的名称,以便syslinux能正常工作)

#cp /root/anaconda-ks.cfg  /mnt/usb1           拷贝anaconda-ks.cfg文件到/mnt/usb1下(任何安装完成的centos系统都会在/root目录自动生成这个文件) 

#cp /tmp/CentOS-5.3-i386-bin-DVD.iso /mnt/usb2  拷贝iso镜像文件到/mnt/usb2下

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

修改文件名 将/mnt/usb1/syslinux/isolinux.cfg 为 /mnt/usb1/syslinux/syslinux.cfg

4、修改文件 /mnt/usb1/syslinux/syslinux.cfg和/mnt/usb1/anaconda-ks.cfg

   (wq!这两个文件没有写的权限,注意加感叹号强制修改)

(1):修改/mnt/usb1/syslinux/syslinux.cfg后的内容如下

#vi /mnt/usb1/syslinux/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 -

---------------------------------------------------------------------------------------------------

“append ks=hd:sdb1:/anaconda-ks.cfg initrd=initrd.img”这一行是做了修改的,其作用是以硬盘方式(u盘也被认为是硬盘)引导系统,其所需的centos镜像文件在u盘的第二个分区,并且使用kickstart自动安装,指定kickstart配置文件的路径为/anaconda-ks.cfg,即u盘第一个分区的根目录下。 

(2):修改文件/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

---------------------------------------------------------------------------------------------------------------------------

此文件定义了自动给安装时:账户名称及密码,防火墙,网卡,分区大小,等等的设置信息。你俩根据需求而定。

三:

卸载并把掉Linux主机上的U盘,把U盘插入装有Windows系统的主机上,将下载的syslinux里面的win32目录考入到U盘的第一个分区syslinux目录下(windows只能识别第一个分区,好像这个文件拷到windows主机的本地也可以,我没试,你俩可以试试。)然后打开DOS命令窗口,执行 G:\syslinux\win32\syslinux.exe -a -m G: (G是你的U盘盘符。)

四:开始安装 

把处理好的u盘插如欲安装系统的服务器,然后开机,把引导设备改成u盘。无误后,片刻出现centos 的安装界面,根据提示依次下一步,到安装Grub的画面时,点击‘改变驱动器顺序’把本地硬盘调到第一位,确定后回到之前的画面,系统会自动将grub的安装位置调整到/dev/sda ,然后点击下一步继续。后面的步骤跟光盘的安装一样。 

注意事项:

  1. 如果系统反复提示找不到镜像文件,可能是你的u盘因为某种原因(如:未安全卸载就拔出)不干净导致不能正常读盘,这是你需要将此优盘按上述步骤重新做一遍,然后再用它安装系统
  2. Anaconda-ks,cfg并不是必须的,如果你想在安装过程中手动选择分区,可以不用它
  3. 还需把镜像文件中的images文件包复制到u盘的第二个分区
  4. 此次安装过程中我把centos的引导装载程序没有放在MBR中,而是放在了/dev/sda7即boot目录的挂载点,计算机启动时是无法识别的,你只需在easybcd中new entry一下即可,把相应的选项给它加上。 

下面是最最重要的一条:

You think!

 


作者:beanmoon
出处:http://www.cnblogs.com/beanmoon/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
该文章也同时发布在我的独立博客中-豆月博客

原文地址:https://www.cnblogs.com/beanmoon/p/2716591.html