【已解决】如何解决双硬盘双系统的引导问题

起因:目前的本机使用的是 1T 的硬盘,安装的是 Win 7 系统。忽然想起淘汰的老爷机还有一个 160G 的硬盘正在闲置,就想安装个 openSUSE 来用。

希望:因为打算双硬盘双系统,且尽量不想修改 Win 7 所在硬盘的文件,我想做到如果需要的话,拔掉 160G 的硬盘后 Win 7 系统还能正常工作。

问题:怎么修改 openSUSE 的 GRUB2 引导。

本机配置:AMD APU A8-3870K;8G 内存(显存占用 512M,实际使用内存 7.5G);技嘉 GA-A75M-DS2(rev. 2.0);HD 6550D 显卡。现有 1T 硬盘安装的 Win 7 系统,还有个 160G 硬盘打算安装 openSUSE 42.1 系统。

在网上找了半天没找到类似的解决办法,有一些写的太乱的,着实看不明白。。。希望诸位能多多帮忙。。。

2015/12/1 已经安装完成

过程:拔掉 1T 硬盘,然后接上 160G 硬盘。清除 160 硬盘的 MBR。然后 U 盘启动安装(我制作了 USB 启动盘,使用的 USBWriter 软件,开源的,使用极其简单,强烈推荐)。安装过程与正常安装一样,不过在选择时区的时候取消了 UTC,使用了本地时间(因为双系统)。分区四个,都是主分区。第一个分区 sda1,/boot Ext4 格式,1G 空间;第二个分区 sda2,/ BtrFS 格式,35G 空间;第三个分区 sda3,/home BtrFS 格式,90G 空间;第四个分区 swap,10G 空间。我的 160G 硬盘在 openSUSE 42.1 里可用空间为 140.02G,由于个人习惯原因尽量取整,所以还剩 4G 空间未分配。。。我的所有硬盘基本都这样。。。在最后一步确认配置的时候,我没有选择把引导程序安装到 MBR。因为想了一下,似乎没必要,开机 F12 选择系统也挺好的。。。安装完成后,第一次开机进 openSUSE 的时候,登入后只有鼠标没有桌面,我等了五分钟都出来,然后按了一下电源键,出现了选择重启、关机和注销,选择了关机,然后重启后一切正常。安装了更新后,关机断电。把 160G 硬盘插在我主板上的 SATA0 接口,把 1T 硬盘插在我主板上的 SATA1 接口,然后开机,默认进入 1T 硬盘上的 Win 7 系统,然后系统自动安装了个 160G 硬盘的驱动,然后一切正常。再关机,开机的时候按 F12,进入开机启动选单,选择 160G 硬盘,然后正常进入 openSUSE。

结果:已达到我的预期目标。双硬盘双系统,互相之间没有什么联系,也没有互相干扰,运行使用一切正常。

PS1:由于这个帐号的信箱总是被异地登录,所以放弃这个账号。。。但是,用正式信箱注册了,用户名为 shy_sunhongyi。。。

PS2:可能感觉开机按 F12 比较麻烦,但是实际使用起来,挺省事的。。。正常开机,默认进入 Win 7 系统,此时一切跟以前一样,没有什么区别;开机时按 F12,就可以选择进入 openSUSE 系统,用起来也都挺好。。。而且尝试了下,拔掉了其中任何一个,都可以正常启动运行。。。估计着互相之间升级系统啥的也不会有什么影响(升级系统版本)。。。

PS3:感觉这种模式可以推广下,想要尝试使用 openSUSE 的时候,找找淘汰的老电脑里的硬盘,或者买一块小硬盘,也不贵,某宝上几十块钱就能搞定。安装起来也没啥难题,正常安装就行,记得选择时区的时候取消掉 UTC,其他一切都跟正常安装一样。。。虽然可以用虚拟机,但是实机安装跟虚拟机完全不是一回事,体验好了很多。。。

PS4:给老本子安装了 openSUSE 13.2 系统,32 位版。。。运行起来挺不错。。。

把 grub 2 安裝在 160 GB 硬盤的 MBR 上
假設 /dev/sdb 是 160 GB 硬盤
安裝時 選擇 /dev/sdb

sudo grub-install /dev/sdb
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
開機時 選擇 /dev/sdb 為最優先開機

這樣 就不會影響 1T 的硬盘

1赞

我的主板有四个 SATA 接口,SATA0—SATA3. 能不能先拔掉现有的 1T Win7 硬盘,然后把 160G 硬盘接在 SATA0 接口上并安装 openSUSE 系统,这样的话,就跟单系统一样安装。等 openSUSE 安装完成后,我再把 1T Win7 硬盘接在 SATA1 接口上。这样应该就相当于 160G openSUSE 是主硬盘,1T Win7 是副硬盘。那这种情况下,openSUSE 能检测并引导 Win7 系统吗?

如果按照上面我想的这种方法,Win7 硬盘应该是不会有任何的数据改变吧?那以后两个系统应该是可以互不干涉,并且都可以正常运行的吗?

:question:

拔掉 grub 2 開機選單 不包含 Windows 開機選項
不拔掉 grub 2 開機選單 包含 Windows 開機選項


從 Bios 設定 哪個是最優先開機裝置 就進入哪個開機選單

仔细想了下,似乎我的想法应该没啥大问题。。。如果是拔掉 1T 硬盘,单独用 160G 硬盘插在 SATA0 接口上安装 openSUSE 42.1,然后在 SATA1 接口上插上 1T 硬盘的话,不知道 Grub2 能否扫描到 Win7。。。如果扫描不到的话,能否用 sudo update-grub2 命令来更新引导记录呢?

如果 sudo update-grub2 命令也不好用的话,那就干脆开机按 F12 吧。。。虽然笨了点,但是估计能行。。。

感觉我这个想法不错呢。。。增加一块硬盘就能增加一个系统,出了问题拔掉了也不耽误以前系统的正常运行,互相之间也理论上没啥干扰。。。

等下继续谷歌下,希望能找到更好更省事的办法。。。如果找到更好的办法,或者我的想法直接可行,那就最好了。。。

今天先进行下准备工作,明天给老本子安装 openSUSE 13.2 系统。CPU P-M 725,内存 1G,硬盘 40G。还有一个 320G 移动硬盘外接。找了半天也就 openSUSE 13.2 才有 32 位系统了。。。

一个建议:通过切换 bios 切换引导的系统。

1赞

就是拔掉 1T 硬盘,直接用 160G 硬盘安装 openSUSE,然后插上 1T 硬盘。也不用 GRUB2 啥的,直接用开机 F12 选择硬盘启动呗?不过说起来,感觉这种更纯净一些。。。而且互相之间也没有啥联系了。。。

安裝 OpenSUSE 或 執行 sudo grub2-mkconfig 時才會掃描
同一台電腦 所有可以辨識的分割區 所有的可開機檔案 都會包含進同一個 grub 2 開機選單
跟你從 bios 選擇 效果一樣

平時使用時 不會掃描

根据楼上朋友提供的 sudo grub2-mkconfig 命令,又谷歌了下,似乎手动执行 grub2-mkconfig -o /boot/grub2/grub.cfg 命令就可以手动更新了。。。

到这里的话,基本需要知道的资料就差不多啦,具体哪个命令好用,用了就知道了。。。嗯,现在就差实践了。。。各位等我的反馈吧。。。

补充一点吧,在 yast 进入 boot loader 再退出就会重新安装 grub 非常方便。