U盘安装64位CentOS 6.4

自己安装CentOS 6.4 X86的64位版本,因为大于4G的文件无法拷贝到Fat32格式的U盘中,而镜像文件恰恰大于4G,看过一些裁剪ISO文件方法,虽然可以使安装镜像ISO小于4G,但会使镜像文件缺少依赖项而出错,参考了这篇文章http://ponyjava.iteye.com/blog/1329994,给出了很好的解决方案:

硬件要求:8G或以上的u盘,服务器支持从u盘启动。 

原理及难点: 

  • centos6.2的dvd文件非常大,超过4G,fat32文件系统不支持4G以上文件;而用于引导linux的文件系统恰恰就是fat32格式。
  • 将u盘分成两个区,一个用于启动linux,为fat32文件系统;一个用于存放安装文件,为ext2文件系统。
  • 这一制作过程需要在linux环境下制作。没有linux环境的朋友只有先用虚拟机安装一个linux系统。这一过程会碰到的问题主要有:guest上网、安装vmware tool、host和guest文件共享、guest访问host中的u盘。还有在制作过程中可能会碰到某些命令找不到,这需要用yum安装一些包。如:mkfs.vfat目录需要yum install dosfstools,还有syslinux等

过程: 
1、检查当前磁盘情况(在虚拟中需先挂载U盘,点击虚拟机右下角u盘图标,connect) 
fdisk -l 
u盘通常为/dev/sdb 


2、分区 
fdisk /dev/sdb 
d # delete existing partition - repeat as necessary 
n # new partition 
p # primary 
1 # partition number 
<enter> # take the default 
+100m # add 100 MB 
t # change the type 
1 # partition number 
b # VFAT 
n # new partition 
p # primary 
2 # partition number 
<enter> # take the default 
<enter> # take the default 
a # toggle bootable flag 
1 # partition number 
w # write to disk 


3、格式化 
mkfs.vfat -n BOOT /dev/sdb1 
mkfs.ext2 -m 0 -b 4096 -L DATA /dev/sdb2 


4、重新拔插u盘 


5、挂载u盘 
mkdir /media/BOOT 
mount /dev/sdb1 /media/BOOT 
mkdir /media/DATA 
mount /dev/sdb2 /media/DATA 


6、将iso文件拷贝到u盘的/dev/sdb2分区。拷贝的时间比较长,需要半个小时,也可能要一个小时。be patient。拷贝之后可以做sha1sum校验,不过一般没有问题,这里就省了。除了拷贝iso文件外,还要拷贝dvd1.iso的image文件夹,这一点官网的文档没有提到,也许centos5.x的不用吧。 
cd /dir/of/iso/images   #进入iso所在文件夹 
for i in 1 2; do cp -v CentOS-6.2-x86_64-bin-DVD${i}.iso /media/DATA/; sync; done 
mkdir /tmp/cdimage 
mount -ro loop CentOS-6.2-x86_64-bin-DVD1.iso /tmp/cdimage 
cp -rv /tmp/cdimage/images /media/DATA 
umount /media/DATA 


7、用syslinux在u盘的/dev/sdb1分区制作linux启动盘。如果没有安装syslinux,那么yum install syslinux。 
syslinux --stupid /dev/sdb1  
dd if=/usr/share/syslinux/mbr.bin of=/dev/sdb 
cd /media/BOOT 
cp -rv /tmp/cdimage/isolinux syslinux 
mv syslinux/isolinux.cfg syslinux/syslinux.cfg 
rm -f syslinux/isolinux.bin 
umount /tmp/cdimage 


8、修改syslinux.cfg,在append语句后面加上 method=hd:sda2:/  
注意:这里的sda2其实就是U盘的DATA分区,应根据实际情况而更改,此处是电脑把U盘识别为sda,若识别为sdb,则改成sdb2。
vi syslinux/syslinux.cfg 




#内容片段start 
  label linux 
  menu label ^Install or upgrade an existing system 
  menu default 
  kernel vmlinuz 
  append method=hd:sda2:/ initrd=initrd.img 
#内容片段end 


umount /media/BOOT 


9、终于制作完成了,去试试吧。从此不用光驱安装linux,舒服! 


另:买了一个16G的u盘,被这么折腾一下,只能用来装linux了,可是还将近10G的空间浪费掉了,这不是大材小用嘛。想了一下,由于windows只认第一个分区,于是u盘分成三个区,sdb1, 8G 自由分区; sdb2, 100M, 启动分区; sdb3, 8G, iso数据分区,这样就物尽其用了。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值