安装 Windows 10 + Centos 7 双系统共存

简介:

第一步 准备工作

分区

给CentOS 系统单独创建一个分区,具体看空闲硬盘的大小决定。

  • 右键桌面上 [我的电脑] 或者 [此电脑] 图标,选择 [管理] → [计算机管理] → [存储] - [磁盘管理]
  • 选择一个空闲空间较大的分区,右键选择 [压缩卷(H)...]
  • 在弹出的对话框中输入需要分配给 CentOS 系统的空间大小,以 MB 为单位
  • 输入完毕后,点击对话框右下角的 [压缩] 按钮执行压缩即可

注意:压缩出的新分区,不要执行 [新建简单卷],否则稍后 CentOS 不识别,到此步即可

下载 CentOS 7 系统文件

到 CentOS官网 下载 ISO 文件,DVD 版即可。

制作优盘启动盘

同样很简单:

  • 准备一个优盘,备份里面所有你认为不能删的文件,稍后将会格式化此优盘
  • 到 UltraISO官网 下载软件
  • 安装,我基本是用完就卸载,所以,除了安装路径改下,其他全部默认
  • 运行 UltraISO,选择试用,选择主界面菜单栏里的[文件] → [打开],选择你刚下载好的 CentOS 7 镜像
  • 选择菜单栏里的 [启动] → [写入硬盘映像]
  • 在弹出框中确认选中的优盘无误,其他选项保持默认,无需修改,直接点击下方的 [写入] 按钮,执行制作优盘启动盘,稍后确认制作成功的提示信息即可

准备工作到此结束

第二步 从优盘启动安装

调整 BIOS 引导顺序

  • 插入刚刚制作的优盘启动盘,重启电脑,开机阶段按 F2 、 F8 或 F12 进入 BIOS
  • 切换到 Boot 界面,找到优盘启动项,使用 F5 或 F6 调整其顺序至第一位,即从优盘启动
  • 按 F10 保存并退出 BIOS ,即可从优盘引导启动。
  • 稍后进入一个标题为 CentOS 7 的黑白界面:

同时提示 Press Tab for full configuration options on menu items. 和 Automatic boot in 60 seconds...。

默认选中的是 第一项即 Install CentOS 7,按 Tab 键,下方的提示信息将显示为 vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOSx207x20x86_64 rd.live.check quiet

移动光标,删除 LABEL=CentOSx207x20x86_64 rd.live.check 这部分,并用 linux dd 替换,最终的内容为 vmlinuz initrd=initrd.img linux dd quiet

确认无误后回车,可以看到如下界面

这里可以看到,界面下方有4列,分别是 DEVICE 、 TYPE 、 LABEL 和 UUID,LABEL 这一列就是驱动器名称,据此找到你的优盘,并记下对应 DEVICE 列的值,一般是 sdb4 。

  • 强制关闭计算机后再开机,回到刚才倒计时那个界面,依旧按 Tab 键,修改启动参数,这次修改为 vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 rd.live.check quiet,这里的 sdb4 替换成你刚才记下的自己优盘对应的DEVICE 列的值。

  • 确认无误后回车,稍等片刻就可以看到暖暖的界面啦!

开始安装

  • 上面的系统语言根据需要自行选择(为了防止系统自动生成家目录下有 桌面 、 下载 这类中文名路径,切换路径的时候还要修改输入法,比较麻烦,所以这里我保持默认,即 English),这里主要说下第二步的 INSTALLATION SUMMARY。

选择需要安装的基础软件

  • 点击 SOFTWARE 下的 SOFTWARE SELECTION 选择一些需要安装的基础软件,这里只选择安装一个桌面软件 GNOME Desktop 就够了,选择完成之后点击左上角的 Done 回到 INSTALLATION SUMMARY 主界面。

磁盘分区

  • 点击 SYSTEM 下的 INSTALLATION DESTINATION 选择安装位置,这里可以看到我们之前压缩出来的那个新分区,以及优盘分区。

选中那个新分区,并选中 Other Storage Options → Partitioning 下的 I will configure partitioning 选项,切记,一定要选中此项,否则整个硬盘的数据都将被删除!!!

确认无误后,点击左上角的 Done 。

  • 这一步对硬盘进行分区,可以点击 Click here to create them automatically 即可让安装程序自动创建分区,非常方便,也可以点击左下角写有 AVAILABLE SPACE 字样的红色区域上方的 + 按钮手动创建分区。 

选择手动分区的话,要注意单位,这里我选择自动分区。分区完成并且确认无误后,点击左上角的 Done 结束对硬盘的分区操作。下面我讲下手动分区操作步骤。

点击 + 按钮,在弹出的对话框中选择新分区挂载的路径,并输入新分区的大小,这里我们设置新分区的大小为 6 GB,并挂载在 根目录 / 下。点击 Add mount point 保存分区信息。

此时,可以看到新分区已经出现在左侧栏里了,但分区的单位并不对,默认刚才输入的单位是 MiB 并显示为 KiB ,这里我们修改为MiB 即可,点击右下角 Update Settings 保存修改后的信息。

以同样的方式添加 swap 等分区,添加完成后,点击左上角的 Done 按钮,完成对磁盘的分区。如果没有给 /boot 进行分区,会在第一次点击 Done 后收到警告信息。可以点击 Click for details 查看警告原因,然后点击 Close 后再次点击一次 Done ;也可以忽略警告信息,再点一次 Done 。

忽略警告信息,点击两次 Done 之后,可以在弹出的对话框中看到,即将对磁盘进行修改的摘要信息,直接点击 Accept Changes ,开始对硬盘执行分区操作。

  • 回到 INSTALLATION SUMMARY 界面,待分区执行完成后, SYSTEM 下的 INSTALLATION DESTINATION 下的黄色感叹号就没有。点击右下角的 Begin Installation 按钮开始安装 CentOS 系统。

 

初始化账户

  • 安装进度界面可以看到 USER SETTINGS 下,ROOT PASSWORD 提示需要给 root 账户设置密码(root 账户默认是没有密码的),USER CREATION 提示创建一个普通用户。下面我们按照提示完成对账户的初始化。

  • 点击 USER SETTINGS 下的 ROOT PASSWORD ,给 root 账户设置密码。如果设置的密码强度不够,需要点两次 Done 按钮忽略警告信息,完成对 root 账户的初始化。

  • 完成对 root 账户初始化后,可以看到 USER SETTINGS 下 USER CREATION 的黄色感叹号已经消失了,说明初始化 root 账户的密码后,创建普通账户已经变成一个可选项。

但推荐仍创建一个普通账户,以便平时使用,而非平时直接使用 `root` 账户,这样可以减少使用过程中的误操作,以及 `root` 账户密码泄露的风险。点击 `USER CREATION` ,创建一个新的账户,同样 `ROOT PASSWORD` 一样,如果密码强度不够,请点击两次 `Done` 按钮。

完成安装

  • 约15 ~ 30 分钟后,CentOS 7 的安装就大功告成啦。为了避免重启后再次从优盘启动,可以先拔掉优盘,再点击 Reboot 按钮重启计算机;也可以在重启时进入 BIOS 调整引导顺序,恢复硬盘作为第一引导盘。

  • 开机后会看到一个黑白屏的启动菜单,并且有一个默认选项,屏幕下方有一个 5 秒的倒计时,若 5 秒内没有任何操作,将使用默认选中的内核启动系统,也可以使用上下键进行切换并按回车键,即可使用选中的内核启动系统。这里默认即可。

第三步 找回 Windows 10 启动项

可能大家都注意到了,上面重启之后,已经无法进入之前的 Windows 10 系统。是的,CentOS 7 不能在安装过程中设置之后的启动项,不像 Ubuntu 那样,在安装 Ubuntu 的过程中,就可以选择启动项,因此这时候就无法进入 Windows 10 了。不过,不用担心,因为 Windows 10 系统的引导信息以及数据都是还在的,我们只需要在 CentOS 7 中找回 Windows 10 的引导信息并添加到启动菜单中就可以了。

  • 启动 CentOS 7 并使用事先设定的账户,登录系统。这里我使用的是非 root 账户登录的。

安装 ntfs-3g

  • 右键桌面,打开一个终端。执行以下命令安装 ntfs-3g:

  
  
  1. sudo yum install -y ntfs-3g 

之所以需要安装 ntfs-3g ,是因为 Windows 家族专用的文件系统,CentOS 7 默认不能识别,而要想在 CentOS 7 系统中找回 Windows 10 的引导信息,势必要让 CentOS 7 系统识别 Windows 10 的文件系统,故安装此库。

更新 Grub2 启动菜单,找回 Windows 10

  • 执行以下命令即可找回 Windows 10 引导信息:

  
  
  1. sudo grub2-mkconfig -o /boot/grub2/grub.cfg 

这一条命令,是让 grub2 自动扫描磁盘中已经安装的所有系统的引导信息,并将其加入到启动菜单中。重启一下计算机,在上面提过的启动菜单界面,是不是可以看到一个有 Windows 字眼的启动项啦?这就是你的 Windows 10!切换到此项,回车,我 Windows 10 又回来啦!

第四步 修复启动菜单界面 Windows 版本显示错误的问题

虽然 Windows 10 已经找回,然而,不尽如人意的是,引导 Windows 10 的菜单项上的 Windows 系统的版本并非“Windows 10”,而是“Windows 7”或 “Windows 8.1”等。

初步推测,此启动项上显示的 Windows 版本号,取决于你从何版本的 Windows 升级到 Windows 10的(若你是从 Windows 7 升级到 Windows 10 的,那此启动项的文字就会显示“Windows 7”字眼,对于从 Windows 8.1 升级也是一样的道理。未考虑直接安装 Windows 10 的情况)。

需要说明的是,这里只是一个文字显示错误,对正常使用没有丝毫影响。但你有强迫症的话,请继续往下看。

修复显示错误

我已经打好了一个 patch,放到了这里点击预览了,登录已安装好的 CentOS 7 系统,打开一个终端,并这行以下命令即可:

  • 下载patch

https://gist.githubuserconten...

  • 安装patch

  
  
  1. ((sudo cp 20microsoft-win10.patch / && cd / && sudo patch -p0 ) < 20microsoft-win10.patch) 

错误原因浅析

  • 启动菜单是执行 Grub2 的命令后,由 Grub2 生成的
  • Grub2 本身并不能识别磁盘中已安装的操作系统,它是依赖 os-prober 这个库来识别的
  • os-prober 本是为 debian 系统编写的,其在 debian 系统下不能识别 Windows 10 的问题已经修复
  • CentOS 下的 os-prober 目前最新版本依旧是 1.58 ,该版本依旧存在此问题,貌似 CentOS 下的 os-prober 无人维护。问题代码位置是 /usr/libexec/os-probes/mounted/20microsoft




作者:玄黎
来源:51CTO
目录
相关文章
|
19天前
|
机器学习/深度学习 并行计算 异构计算
WINDOWS安装eiseg遇到的问题和解决方法
通过本文的详细步骤和问题解决方法,希望能帮助你顺利在 Windows 系统上安装和运行 EISeg。
44 2
|
26天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。
|
27天前
|
网络安全 Windows
Windows server 2012R2系统安装远程桌面服务后无法多用户同时登录是什么原因?
【11月更文挑战第15天】本文介绍了在Windows Server 2012 R2中遇到的多用户无法同时登录远程桌面的问题及其解决方法,包括许可模式限制、组策略配置问题、远程桌面服务配置错误以及网络和防火墙问题四个方面的原因分析及对应的解决方案。
|
29天前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
56 4
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
100 3
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
84 2
|
1月前
|
存储 安全 Linux
VMware安装CentOS7
【11月更文挑战第11天】本文详细介绍了在 VMware 中安装 CentOS 7 的步骤,包括准备工作、创建虚拟机、配置虚拟机硬件和安装 CentOS 7。具体步骤涵盖下载 CentOS 7 镜像文件、安装 VMware 软件、创建和配置虚拟机硬件、启动虚拟机并进行安装设置,最终完成 CentOS 7 的安装。在安装过程中,需注意合理设置磁盘分区、软件选择和网络配置,以确保系统的性能和功能满足需求。
189 0