我有一台 Windows 10 笔记本电脑。为了在上面安装 CentOS 7,我缩小了C盘(这是我看到的唯一驱动器)。这给了我 100+ GB未分配空间。我继续安装 CentOS。重启后,我没有在菜单中看到 Windows 10 作为启动选项。
我做错了什么?有没有办法恢复并查看 Windows 10?
答案1
看起来安装前未检测到 Windows。启动 CentOS 安装并运行以下两个命令:
sudo os-prober
sudo update-grub
如果显示“未找到命令”,请将 update-grub 替换为 grub-mkconfig。在执行此操作之前,您可能需要安装 os-prober
sudo yum install os-prober
如果其他方法都失败了,您可以添加一个自定义条目,/etc/grub.d/40_custom
内容如下:
在 BIOS 系统上:(将 n 替换为 Windows 分区号)
menuentry "Windows 10" {
insmod ntfs
set root=(hd0,n)
chainloader +1
}
在 UEFI 系统上(将 n 替换为 EFI 分区号)
menuentry "Windows 10" {
set root=(hd0,n)
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
根据引导加载程序在 EFI 分区中的位置,EFI 条目的位置可能会发生变化。
追上sudo grub-mkconfig
去,你就可以走了。
答案2
我不是经验丰富的 Linux 用户。我只是列出了我为实现此目的所做的事情。这主要是基于反复试验。我不会推荐这种方法或那种方法。可能有适当的方法可以解决问题。@Varun Narravula 的回复可能更合适。请注意,我使用的是 Legacy/BIOS。
我按以下顺序尝试了命令:
grub2-mkconfig -o /boot/grub2/grub.cfg
然后
os-prober
os-prober 没有返回任何内容。
然后我尝试看看是否可以安装 NTFS 系统。
为此,我需要安装 ntfs-3g。但对于 ntfs-3g,EPEL Repo 是先决条件。
请参阅以下内容:
https://www.tecmint.com/how-do-i-access-or-mount-windows-ntfs-partition-in-linux/
我在 CentOS 7.x 上安装了 EPEL Repo
yum search epel-release
yum info epel-release
yum install epel-release
(我实际上没有运行 yum update)
然后安装ntfs-3g
yum -y install ntfs-3g
然后
yum install fuse
modprobe fuse
我可以看到 NTFS 文件系统
fdisk -l
(我实际上没有安装 NTFS 系统。)之后,我运行
os-prober
这确实列出了 Windows 10。最后一步,我再次运行
grub2-mkconfig -o /boot/grub2/grub.cfg
不确定最后一步是否必要。当我重新启动计算机时,Windows 10 选项可用。我不确定我执行的与安装相关的步骤是否有任何不同。