grub 安装centos7(ubuntu软件安装)

启动盘安装centos

启动盘安装centos(启动盘安装centos7)刚买的thinkpad t430u 64位的笔记本,发现装Linux是一件非常麻烦的事,以前装个linux系统,配置双启,1个小时就能搞定,而这一次我连装centos6.4带配置双启,花了三个星期。双启后成功后又装了Arch,现在笔记本是三系统,三周的时间里,笔记本重启不下300次。我也不知道能不能成功,所以事先,并没有做详细的笔记电脑。所以下面,只是大致的记录。

关闭secure boot

开机按F1进入bios=>security=>secure boot

笔记本不同,可能secure boot的配置不同,将其disabled掉,要不然,选择U盘启动,光盘启动都无效,报没有权限。

bios里面配置启动项,默认efi only,改为both

bios=>startup=>uefi/legacy boot

启动优先级里面有三个选择,

1,efi only(注释:默认)

2,both(注释:二种方式都可以)

3,legacy only(注释:grub1)

这里说的启动根选择U盘启动,光盘启动不一样。这里的启动是,多系统安装好了,而选择的启动模式。而U盘启动,电脑光盘启动这种情况是系统还没有装时选择的安装启动。我的本子,按F12可以选择U盘启动,或者光盘启动。

为什么要进行这一步,如果不改,默认是装在第二块硬盘上面的,也就是efi的默认启动盘,安装CentOS时:

win8装centos

根本没有“更换设置”这个按钮,并且引导程序只能安装在/dev/sda2上面,选中的情况下,centos6.4 64位,根本安装不成功,所有包安装完后,配置时提示报错,

an unhandled exception has occurred.this is most likely a bug.plese copy the full text of this exeception and file a detailed bug report.against anaconda at

让提交bug到centos,这个有点坑爹。

将efi only改成both后,重新安装,“更换设置”就会出现,并把引导程序装到centos所在的分区,这样centos可以顺利装完,怎么安装网上太多,在这儿就不哆嗦了。

用easybcd和纯grub1实现双启都不可能

用easybcd和纯grub1实现双启根本不可能,大家就不要浪费时间了。网上有说easybcd2.2可以实现,我试过无数次不行。

在启动优先级里面选择,legacy only,保存重启,久违的centos界面出现了,那叫一个激动。下方向键选择others,windows进不去。总之还是有点高兴的,centos装成功了,我信心大增,通过grub1,我想能启动win8,然后我就开始尝试用grub1启动win8,又试了不知道多少次不行。我想完全靠grub1启动是不可能了

用centos自带的efi实现双启

1,启动优先级里面,选择legacy only,进入到centos

2,下载三个文件,BOOTX64.conf BOOTX64.efi splash.xpm.gz

或者是从iso镜像中解压也行。

3,挂载efi的启动盘

mkdir/mnt/usb

mount/dev/sda2/mnt/usb

cd/mnt/usb

mkdir image

cp/boot/initramfs-2.6.32-358.el6.x86_64.img./image/initrd.img

cp/boot/vmlinuz-2.6.32-358.el6.x86_64./image/vmlinuz

在efi启动盘的根目录也就是/dev/sda2上面,建一个image文件夹,把装好的cenots内核考过来,我为什么要这么干呢,因为BOOTX64.conf这个文件就是这么干的。

[root@localhost image]# ll/mnt/usb/image/

总用量 26812

-rwxr-xr-x. 1 root root 16532286 6月 1 18:11 initrd.img

-rwxr-xr-x. 1 root root 3089184 6月 1 19:11 initrd.img-arch//这是arch的,装了三系统

-rwxr-xr-x. 1 root root 4043888 6月 1 18:10 vmlinuz

-rwxr-xr-x. 1 root root 3778496 6月 1 19:10 vmlinuz-arch//这也是arch的,

4,这一步建redhat目录是多余的,我是按照操作时候的步骤来写这篇博客的

[root@localhost EFI]# mkdir/mnt/usb/EFI/redhat

为什么要redhat,而不是centos呢,装好的centos,/boot/efi/EFI(注:这个目录在系统的boot下面,不在sda2上面),这个目录下就有redhat,后来我才知道,这个目录没用。

将上面的三个文件BOOTX64.conf BOOTX64.efi splash.xpm.gz,copy到/mnt/usb/EFI/redhat目录下面

看一下我的配置:

[root@localhost redhat]# cat BOOTX64.conf

#debug--graphics

default=1

#splashimage=/EFI/BOOT/splash.xpm.gz

timeout=5

#hiddenmenu

title CentOS 6.4

kernel/image/vmlinuz ro root=/dev/sda7

initrd/image/initrd.img

title Windows8

chainloader/EFI/Microsoft/Boot/win8.efi

title Archlinux

kernel/image/vmlinuz-arch ro root=/dev/sda9

initrd/image/initrd.img-arch

上面的win8.efi是bootmgfw.efi的备份,后来我把bootmgfw.efi也替换了,下面会提到的,这东西启动win8用的。

重启测试

重启F1,进bios,把启动优先级设为efi only,保存重起进grub

grub> configfile/efi/redhat/BOOTX64.conf

注意:grub下面是小定的,linux系统下是大写的,最好是用tab键提示。然后三个启动选项就出现了,我选了一下,都是可以进的,那叫一个激动啊,离成功不远了。

grub> chainloader/efi/Microsoft/Boot/win8.efi

win8也是可以进的

只要启动时能让EFI识别BOOTX64.conf这个文件,并读取,就搞这定了。

然后我就开始把redhat这个目录到处copy,发现不行,我又把BOOTX64.conf BOOTX64.efi splash.xpm.gz,这三个文件到处copy,EFI下面的每个目录我都试了。不行。

refind efi启动器

没办法啊,就上google上面找efi启动工具,看了好多,发现The rEFInd Boot Manager还是比较靠谱的。

下载地址:,这个是二进制版的。

该工具官方地址:,下载,安装,以及使用说明都有。

安装配置地址:

下面是我的操作:

cp-r refind/mnt/usb/EFI/

cd/mnt/usb/EFI/refind

rm-rf drivers_ia32

rm-f refind_ia32.efi

rm-rf tools_ia32

[root@localhost boot]# ll/mnt/usb/EFI/refind///删除后就是这样子

总用量 224

drwxr-xr-x. 2 root root 4096 6月 1 17:52 drivers_x64

drwxr-xr-x. 2 root root 8192 6月 1 17:52 icons

-rwxr-xr-x. 1 root root 17774 6月 1 20:55 refind.conf

-rwxr-xr-x. 1 root root 17911 6月 1 17:52 refind.conf-sample

-rwxr-xr-x. 1 root root 170824 6月 1 17:52 refind_x64.efi

drwxr-xr-x. 2 root root 4096 6月 1 17:52 tools_x64

如果你是64的系统,就把32的删除掉,反之就删64的。

mv refind.conf-sample refind.conf

然后配置refind.conf,我的配置肯定不对,如果要对的话,直接是可以用refind进入centos,win8,arch的。而不是refind去调用grub来启动

中的Installing rEFInd Manually Using Linux,安装方法中,6,7这二步,没敢做,我实在无法预测,efibootmgr-c-l\EFI\refind\refind_x64.efi-L rEFInd,执行这个命令到底会有什么后果。

重启后,无法进入refind界面

然后就在仔细阅读文件

rename EFI/BOOT/refind_x64.efi to the name of the boot loader it's replacing—it should become EFI/BOOT/bootx64.efi or EFI/Microsoft/Boot/bootmgfw.efi.

发现有上面的东西,操作如下:

[root@localhost EFI]# cp-r./Microsoft/Boot/./Microsoft/Boot_bak

[root@localhost EFI]# cp-r./refind/*./Microsoft/Boot/

[root@localhost EFI]# cd./Microsoft/Boot/

[root@localhost Boot]# cp bootmgfw.efi win8.efi//上面提到的win8.efi就是在这儿来的

[root@localhost Boot]# mv refind_x64.efi bootmgfw.efi

先把EFI/Microsoft/Boot/这个目录备份,这样我不管怎么配置Boot的目录,我可以还原,进WIN8绝对没问题。efi启动,会默认读取/EFI/Microsoft/Boot/bootmgfw.efi,我的机子是这样子的,规定死了。

重启后,可以进入refind的引导界面,但是没有一个系统能进

refind配置不正确,无法进入任何一个系统,但是我发现refind的第二个引导项读取到了/grub/BOOTX64.conf,并且是默认的centos的BOOTX64.conf,grub是什么时候建的我都忘了,里面是下载的原始的centos的BOOTX64.conf BOOTX64.efi splash.xpm.gz

[root@localhost refind]# cp/mnt/usb/EFI/redhat/*/mnt/usb/EFI/grub

[root@localhost refind]# cd/mnt/usb/EFI/Microsoft/Boot/

[root@localhost Boot]# vim refind.conf

timeout 2

default_selection 2//将第二引导项调为默认

知道refind读取哪个启动文件就好办了,把redhat下面已经配置好的文件copy到grub目录下就搞定了。

就这样我的三系统启动搞定了,不过还有缺点,

第一,引导是分二步的,首先是refind引导,然后refind调用BOOTX64.conf,在通过grub来引导,之后才能进入系统。

第二,内核版本,是copy到了,efi的启动盘上面,升级内核,也用不了,除非在重新将内核copy到sda2上面。

联想小新笔记本装centos7系统要怎么安装

一、安装CentOS 7.3

成功引导系统后,会出现下面的界面

界面说明:

Install CentOS 7#安装CentOS7

Test this media& install CentOS7#测试安装文件并安装CentOS 7

Troubleshooting#修复故障

这里选择Install CentOS Linux7,安装CentOS 7,回车,进入下面的界面

语言选择界面,正式生产服务器建议安装英文版本。

Continue继续

选择-系统SYSTEM-安装位置INSTALLTION DESTINATION,进入磁盘分区界面

选择-其它存储选项Other Storage Options-分区Partitoning-我要配置分区I will configure partitioning,

点左上角的“完成Done”,进入下面的界面

新挂载点使用以下分区方案:标准Standard Partition

完成Done

分区前先规划好,swap#交换分区,一般设置为内存的2倍,/#剩余所有空间

备注:生产服务器建议单独再划分一个/data分区存放数据

点左下角的“+”号,挂载点:swap,期望容量:4096,添加挂载点,如下图所示,继续点左下角的“+”号,挂载点:“/”期望容量:留空#默认为剩余所有空间,添加挂载点,如下图所示

点左上角的“完成Done”,进入下面的界面

接受更改Accept Changes,进入下面的界面

软件SOFTWARE”-“软件选择SOFTWARE SELECTION”,我们使用的是Minimal版本,默认是最小化安装。

设置完成后,点Done

开始安装Begin Installation

进入下面的界面

选择-用户设置USER SETTINGS-ROOT密码,进入下面的界面

设置Root密码

如果密码长度少于5位,会提示要按“完成”两次来确认,安装继续。安装完成之后,会进入下面的界面.

重启Reboot

进入登录界面,输入用户名【root】密码【itnihao】,系统登录成功

回到顶部

二、设置IP地址、网关DNS

说明:CentOS 7.x默认安装好之后是没有自动开启网络连接的,所以需要我们自己配置。

在命令行输入#vi/etc/sysconfig/network-scripts/ifcfg-ens33#编辑配置文件,添加修改或添加以下内容。

BOOTPROTO=static#启用静态IP地址

ONBOOT=yes#开启自动启用网络连接

IPADDR=192.168.1.73#设置网关

GATEWAY=192.168.1.1

NETMASK=255.255.255.0

DNS1=114.114.114.114

DNS2=8.8.8.8

:wq!#保存退出

service network restart#重启网络

ping www.baidu.com#测试网络是否正常

ip addr#查看IP地址

至此,CentOS 7.3.1611系统安装配置图解教程完成!

回到顶部

三:附加

1、修改主机名

#hostnamectl set-hostname compute1

2.修改网卡名

CentOS 7.x系统中网卡命名规则被重新定义,可能会是”ifcfg-ens33”等,下面我们把网卡改为ifcfg-eth0这种。

1、cd/etc/sysconfig/network-scripts/

mv ifcfg-ens33 ifcfg-eth0#修改名称

vi ifcfg-eth0#编辑

NAME=eth0#修改

DEVICE=eth0#修改

:wq!#保存退出

2、vi/etc/sysconfig/grub#编辑

在”GRUB_CMDLINE_LINUX“变量中添加一句”net.ifnames=0 biosdevname=0“

:wq!#保存退出

3、运行命令:grub2-mkconfig-o/boot/grub2/grub.cfg#重新生成grub配置并更新内核参数

4、添加udev的规则

在”/etc/udev/rules.d“目录中创建一个网卡规则”70-persistent-net.rules“,并写入下面的语句:

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:0c:29:1e:a3:77",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"

#ATTR{address}=="00:0c:29:1e:a3:77"是网卡的MAC地址

cd/etc/udev/rules.d

vi 70-persistent-net.rules#添加

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:0c:29:1e:a3:77",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"

:wq!#保存退出

shutdown-r now#重启系统

网卡已经更改为eth0

直接删除了安装centos的盘,重装centos时现grub

1、grub安装在mbr,删除(格式化)centos(linux)分区、ghost安装系统不会清除mbr,所以grub还会起作用,但由于找不到引导配置文件,所以就会出现grub>;

2、如果你的centos安装U盘是启动盘,应该可以直接从U盘引导进入安装,你是不是没有修改bios让U盘优先启动?

3、可以用U盘启动进PE修复系统引导或用分区软件重建mbr恢复默认Win引导;

阅读剩余
THE END