U盘安装CentOS 7的方法

来源:互联网 发布:为什么脸会变宽 知乎 编辑:程序博客网 时间:2024/05/22 01:49

安装 CentOS7 前,我的 PC 是 win7 和 CentOS6.5 的双系统,使用GRUB引导启动。我在 CentOS6.5 中安装了很多应用软件和服务器软件,并重新编译了高版本的内核。但由于在按自己需求打造 linux 系统的过程中,犯了很多不能解决的错误,导致系统有些地方配置的不如人意。作为一个完美主义轻度患者,得知 CentOS7 发布后,就开始琢磨升级。

1. 首先尝试了在线升级的方法。参照http://wiki.centos.org/TipsAndTricks/CentOSUpgradeTool给出的教程,尝试之后未能成功。

2. 然后尝试通过硬盘安装的方式,这也是我安装 CentOS6.5 双系统时采用的方法。在 win7 系统环境下,具体步骤如下。

(1) 使用 ext2Fsd 软件读入 linux 分区

(2) 然后将 CentOS-7.0-1406-x86_64-DVD.iso 文件拷贝到 linux 分区的根目录下

(3) 将 CentOS-7.0-1406-x86_64-DVD.iso 解压,将解压文件夹中的 isolinux 和 images 复制到 linux 分区根目录下

(4) 使用 EasyBCD 配置 linux 启动入口后重启计算机

(5) GRUB 引导处选择 win7 启动后进入windows启动界面,再选择CentOS启动。

经过上面的步骤,本应进入 CentOS7 的安装界面。但实际上未能进入CentOS7的安装界面,而是出现了类如下面的错误。

dracut-initqueue[624]:Warning: Could not boot.

dracut-initqueue[624]:Warning: /dev/root does not exist.

                                  Starting Dracut EmergencyShell…

Warning: /dev/root does not exist

经过搜索,发现使用在 windows 环境制作的启动盘安装时,也可能会出现相同的错误。根据 http://blog.csdn.net/gaohuaid/article/details/38750283 给出的解决方案,这是因为安装程序未能找到安装文件所致。可以在随后出现的 dracut:/# 输入命令

 cd /dev
后找到安装文件所在的位置,重启后修改(在启动引导的地方输入 e 进入编辑状态)启动配置,

vmlinuz initrd=initrd.img

inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet 

改为:

vmlinuz initrd=initrd.img

inst.stage2=hd:/dev/sda quiet

其中 /dev/sda 是安装文件所在U盘在系统中的设备号。然后继续回车,即可正常进入安装过程。笔者未验证该方法。

3. 参照 http://wiki.centos.org/HowTos/InstallFromUSBkey 给出的教程在 linux 环境下制作 USB 启动盘安装。具体步骤如下。

(1)  U盘(容量为8G)连接到电脑,在root权限下,使用

fdisk –l
命令查看 盘的设备号。需要注意,将要使用的是 盘的设备号(e.g./dev/sdb而不是分区(e.g./dev/sdb1)。另外制作USB启动盘将会格式化U盘,使用前应对U盘进行备份。

(2) root权限下,进入CentOS7镜像文件所在目录,使用下面命令制作USB启动盘。

dd bs=4M if=CentOS-7.0-1406-x86_64-DVD.iso of=/dev/sdb

其中 bs 参数可选,它只影响制作启动盘的速度。if 参数指定输出文件。of 参数指定输入装置,值为上一步中确认过的USB设备号。执行该命令前,需确定U盘处于 unmount 状态。根据计算机硬件水平,该过程可能需要10分钟或更多。

另外需要注意的是,成为启动盘后 盘的容量将变小许多,格式化也不能使其恢复。这是由于启动盘不能通过格式化释放的缘故。安装完成确定USB启动盘不再使用的时候,可以在 win7 环境的命令行模式下,使用 diskpart 工具进行容量恢复。

(3) 保持USB启动盘连接状态,重启计算机,进入主板设置界面,设置 BOOT 启动优先级为移动设备最高后保存并重启计算机即可正常进入如下 CentOS7 的安装界面。选择 Install CentOS 7 后进入下一步。

(4) 然后在初始化设定页面进行必要的设定。点击相应的图标例如 DATE& TIME, KEYBOARD LANGUAGE SUPPORT 等设定时间,将要使用的键盘和系统语言支持等。


其中 INSTALLATIONSOURCE 里保持默认的 Auto-detected installation media 不变。

其中 SOFTWARESELECTION 中根据需要选择待安装的工作环境。需要桌面环境的,可以选择 GNOME 或 KDE,前者更适合入门用户;后者则相对华丽,接近 windows 的桌面。Add-ons 软件也根据需要选择。这些软件及服务器环境都可以在将来的使用过程中进行安装,所以选择时候不必太过斟酌。

其中 INSTALLATIONDESTINATION 选定将要安装 CentOS7 系统的硬盘。选定硬盘并在分区设定处选择 I willconfigure partitioning 后单击左上角的 Done按钮,计入如下的分区设定界面。一般来说,只要设定分区和 swap 分区即可。

 

最后是网络设定,可以设定计算机的网络连接方式。

经过以上的步骤,就能正常完成 CentOS7 的安装了。重新启动,设置主板优先从硬盘启动,然后就能进入CentOS 7操作系统了。

4. 安装完成并重新启动后,由于原来的 grub 引导程序失效,系统默认进入 CentOS 而没有引导进入 win7 系统的入口。并且,CentOS7 使用 GRUB2 管理启动引导程序,因此原来修改 /etc/grub.conf 的方式不能达到恢复 win 7 启动入口的目的。

启动时,可以使用grub命令行手动引导进入win7系统。系统启动进入下面的画面时,按键盘上 键进入 grub 命令行。使用 ls 命令查看所有硬盘装置,显示结果如下:

(hd0)(hd0, msdos6) (hd0, msdos5)...(hd0,msdos1) (hd1) (hd1,msdos1)

然后在 grub 命令行连续输入执行下面的命令,就能进入到 win7 系统了。

setroot=(hd0, msdos1)chainloader +1boot
上面三条命令中,set 命令指定将要启动系统的分区,我的 win7 系统安装在第一块硬盘 hd0 的 msdos1(即第一个分区)。第二条命令注意 chainloader 和参数之间必须有空格。第三条命令启动系统。

但是,我还是需要使用 grub 自动为 win7 系统提供入口。参考http://superuser.com/questions/781300/searching-for-grub-configuration-file-in-centos-7Adam C 的解答,CentOS 7 的 grub 启动配置文件路径为 /boot/grub2/grub.cfg。但是一般不通过修改上述文件来更改启动引导。可修改文件/etc/grub.d/40_custom,在其中添加如下内容:

menuentry"Windows 7"{

 set  root='(hd0, msdos1)'

  chainloader  +1

}

然后执行如下命令。

grub2-mkconfig --output=/boot/grub2/grub.cfg
将自定义的系统启动文件反映到启动配置。再次重启计算机时,就能发现win7系统入口,并能正常进入win7系统了。

另外,可以通过修改 /etc/default/grub文件设定默认的启动系统(参数GRUB_DEFAULT),也可以修改等待选择启动的时间(参数GRUB_TIMEOUT)




0 0
原创粉丝点击