升级3090 ti后装windows+ubuntu双系统装出来大问题

wildroy-avatar

wildroy

2022-08-14T07:34:32+00:00

这样的,我本来的电脑是一台两年前的msi三叉戟,带2070s,ssd是三星的MZVLB1T0HALR-00000(以下简写为MZ)
然后呢,我准备配一台深度学习工作站,计划配置是i7-12700k+3090ti+2070s(从旧的拆下来)+msi z690 force + 海盗船16g x2 +三星980pro +mz

其中3090ti一直在降价,就先购置了其他的配件,然后把2070装上去用着。这个时候我在980上装了windows和ubuntu双系统,MZ则给格式化了。(Ubuntu是Pop! OS 22.04 NV版,本身带有N家显卡的驱动)
然后前段时间3090ti降价到了1300刀,买了一张,然后给装上去。

结果windows没事儿,但是ubuntu挂了,打不开。
我怀疑是驱动问题,然后想着这个ubuntu反正还没装东西,就又做了个ubuntu安装盘,然后想着把980上面的ubuntu重装。
重装半天,不行,于是我想着试试在一张新的ssd上,就是那张空的MZ,做clean install。

在一番操作下,980上的windows似乎被ubuntu干掉,无法启动了[s:ac:委屈]

Bios甚至都找不到它。MZ的ubuntu也依旧运行不了,我就赶紧在MZ装了windows先用着。
然后刚刚,新买的970到了,准备把MZ的windows拷到970上,让970做系统盘。
结果拷完之后,开机按f11进入硬件选择时,MZ不见了,取而代之的是970和启动引导挂掉的980。

970会进入拷贝的这份系统,而980...它的引导服务启动了MZ的windows....[s:ac:喷]

同时,在bios界面里面,只能找到980。硬件选择界面还有的970,和硬件选择界面也找不到的mz,在bios里面都不见了。

就为了装个双系统,现在这三个盘就好似一团缠在一起的耳机线一样令我困惑[s:ac:呆]
Harukiii-avatar

Harukiii

可能是显卡原因吧 全球唯一3090TI
𝔹𝕝𝕚𝕟𝕕._.𝔹𝕝𝕒𝕜𝕖-avatar

𝔹𝕝𝕚𝕟𝕕._.𝔹𝕝𝕒𝕜𝕖

会不会是PCIE16通道数不够了?
wildroy-avatar

wildroy

[quote][pid=634545301,33190840,1]Reply[/pid] Post by [uid=1367483]掉了一只耳环[/uid] (2022-08-23 15:58):

会不会是PCIE16通道数不够了?[/quote]主板是可以改成两条x8的,而且我2070s都还没插上去就已经出错了
DelinquentCat-avatar

DelinquentCat

双系统的问题,一般就是efi和grub/win boot manager没弄好的问题,我个人感觉这两个玩意都挺屎的,grub已经有替代品了不说,windows自己升级有时候就把这些搞乱,或者有时候开个secure boot就会导致一些 linux 发行版起不来。
建议耐心按照 arch wiki 一点点排查,或者干脆备份好数据按照先 win 后 linux 的顺序重装。
ChaseBandz-avatar

ChaseBandz

应该是efi分区被弄乱了,linux就算显卡驱动炸了也可以进cli抢救一下,不会找不到系统的。不熟练的话建议两个系统分两个盘装,然后默认grub进linux和win。一个盘的话,后装的系统别创建efi分区,用已有分区

楼上提了arch,我也建议按照arch wiki的示例安排分区
wildroy-avatar

wildroy

[quote][pid=634548295,33190840,1]Reply[/pid] Post by [uid=38180259]kagami42[/uid] (2022-08-23 16:10):

双系统的问题,一般就是efi和grub/win boot manager没弄好的问题,我个人感觉这两个玩意都挺屎的,grub已经有替代品了不说,windows自己升级有时候就把这些搞乱,或者有时候开个secure boot就会导致一些 linux 发行版起不来。
建议耐心按照 arch wiki 一点点排查,或者干脆备份好数据按照先 win 后 linux 的顺序重装。[/quote]那现在有windows了,能不能直接划个区去装ubuntu,windows的环境也是设置了的,再设置一遍得要了老命了[s:ac:晕]
wildroy-avatar

wildroy

[quote][pid=634548636,33190840,1]Reply[/pid] Post by [uid=37711079]Scarecrow928[/uid] (2022-08-23 16:11):

应该是efi分区被弄乱了,linux就算显卡驱动炸了也可以进cli抢救一下,不会找不到系统的。不熟练的话建议两个系统分两个盘装,然后默认grub进linux和win。一个盘的话,后装的系统别创建efi分区,用已有分区[/quote]之前装ubuntu的时候,甚至boot不了,一直卡在Journal Service的加载过程中[s:ac:晕]现在再装我都不确定该咋装
Faudaaa-avatar

Faudaaa

多大点事情啊,你都用linux了,还怕出问题?

你说了一堆,说白了就是启动项出问题了嘛,搞个arch的live CD,进系统,找到esp分区,用grub-mkconfig -o 命令,指向你的grub.cfg,重新建立下分区信息就行了,要用grub引导双系统,应该需要开启probe-os,这个你在archwiki查一查就能找到,ubuntu和arch应该差不了多少。

我大概能猜到问题所在,linux启动丢失是因为windows这个系统很流氓,大版本更新后,windows会修改你的启动项,搞成它自己windows boot manager,显然,wbm是引导不了linux的,为了避免windows乱搞,最好在windows下用bcdedit设置下启动项,查考[url]https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface#Windows_changes_boot_order[/url]。

我今年arch滚更挂了三次,每次都通过live CD救活,linux系统好就好在,除非你把/直接删了,不然大多数情况搞个live CD都能解决问题。
wildroy-avatar

wildroy

[quote][pid=634556472,33190840,1]Reply[/pid] Post by [uid=63974971]Coooooooooolboy[/uid] (2022-08-23 16:41):

多大点事情啊,你都用linux了,还怕出问题?

你说了一堆,说白了就是启动项出问题了嘛,搞个arch的live CD,进系统,找到esp分区,用grub-mkconfig -o 命令,指向你的grub.cfg,重新建立下分区信息就行了,要用grub引导双系统,应该需要开启probe-os,这个你在archwiki查一查就能找到,ubuntu和arch应该差不了多少。

我大概能猜到问题所在,linux启动丢失是因为windows这个系统很流氓,大版本更新后,windows会修改你的启动项,搞成[/quote]那后来windows被ubuntu干掉是什么情况[s:ac:哭]之前没咋碰过ubuntu,就只用过一次,而且还用的是自带许多驱动的pop os
Nashipants-avatar

Nashipants

建议双系统,分别独立安装在两个硬盘上,通过在bois里切换启动硬盘来切换系统。
虽然麻烦了点,但是避免了启动项的问题
ℳ𝒸𝒟𝒶𝒹𝒹𝓎;)-avatar

ℳ𝒸𝒟𝒶𝒹𝒹𝓎;)

这个时候必须要要来一句了
So nv fxxx you
Faudaaa-avatar

Faudaaa

Reply to [pid=634561138,33190840,1]Reply[/pid] Post by [uid=61473278]Azir黄道星图[/uid] (2022-08-23 16:58)

如果你的意思是,你已经配置好了双系统引导,grub正常引导两个系统,但是突然有一天,ubuntu更新后,把grub里面的win的引导干掉了,或者grub找不到win的启动项。这种情况,极小概率发生吧,linux下权限高于一切,你只要清楚你在做什么,没有乱动esp分区(或者EFI分区)的东西,基本不会出问题。当然,我知道的,前几个月grub更新,好像默认关闭了os-prober选项,或者你的os-prober 本身出问题了,确实有可能导致grub识别不了双系统。

一般情况下,如果你要安装linux的话,一个硬盘只有一个EFI分区,你应该通过fdisk -l查看,然后进入这个分区,查看里面的东西,正常情况,里面有个BOOT文件,里面是BOOT64.EFI,这一般是linux的启动项,如果双系统,应该还有个 Microsoft,里面装的win的启动项。某种意义上说,你可以直接再其他电脑上找一个win的启动项,整体拷贝EFI分区下,这要grub也能识别,也可以启动双系统。

现代计算机的uefi启动引导其实已经非常简单和灵活了。你可以根据我之前发的链接,去看archwiki,基本上能解决你大部分问题。
DelinquentCat-avatar

DelinquentCat

[quote][pid=634553396,33190840,1]Reply[/pid] Post by [uid=61473278]Azir黄道星图[/uid] (2022-08-23 16:29):

那现在有windows了,能不能直接划个区去装ubuntu,windows的环境也是设置了的,再设置一遍得要了老命了[s:ac:晕][/quote]Win还能启动就问题不大,修/ 重新搞 linux 即可
Ykclev-avatar

Ykclev

搞个虚拟机不香吗?现在显卡都可以直通了。[img]https://img.nga.178.com/attachments/mon_201209/14/-47218_5052bc4cc6331.png[/img]
Cleric-avatar

Cleric

都3090ti了,直接可以全虚拟化了,宿主机啥都不干就开个kvm,然后做一个linux炼丹环境还有win10娱乐环境不香吗
Pollenus-avatar

Pollenus

最好装一个系统的时候把另一块硬盘拔了,最后通过选择启动硬盘选择系统。之前我也遇到过类似问题,给新硬盘装windows,结果efi写到旧硬盘上去了,最后是把旧盘拔了装的
wildroy-avatar

wildroy

[quote][pid=634579794,33190840,1]Reply[/pid] Post by [uid=63974971]Coooooooooolboy[/uid] (2022-08-23 18:13):

如果你的意思是,你已经配置好了双系统引导,grub正常引导两个系统,但是突然有一天,ubuntu更新后,把grub里面的win的引导干掉了,或者grub找不到win的启动项。这种情况,极小概率发生吧,linux下权限高于一切,你只要清楚你在做什么,没有乱动esp分区(或者EFI分区)的东西,基本不会出问题。当然,我知道的,前几个月grub更新,好像默认关闭了os-prober选项,或者你的os-prober 本身出问题了,确实有可能导致grub识别不了双系统。

一般情况下,如果你要安装lin[/quote]当时比较奇怪的是,我在第二块空的ssd上clean install ubuntu,然后装完了后第一块ssd上的的windows挂掉了[s:ac:喷]
Faudaaa-avatar

Faudaaa

Reply to [pid=634669601,33190840,1]Reply[/pid] Post by [uid=61473278]Azir黄道星图[/uid] (2022-08-24 03:11)

理想情况是,一块硬盘装win,并包含自己的efi分区,一块装linux,也包含自己的efi分区,这样就能互不干预

但是,大多数情况时,用户压根不清楚硬盘上的efi分区是怎样的

两块硬盘,也有可能出现,一块没有efi分区,并且这块硬盘的启动项直接在另一块硬盘上了,这种情况,只要保证第二块硬盘安装grub,依然可以正常引导双系统,但是你把第二块硬盘格式化了,删了,显然第一块硬盘也gg

启动项出问题没有必要重新安装系统,直接搞个efi分区,拷贝个对应的EFI启动项进去就可以了,

大多情况下的“我认为”,“我以为”,其实都是不对的
wildroy-avatar

wildroy

[quote][pid=634699874,33190840,1]Reply[/pid] Post by [uid=63974971]Coooooooooolboy[/uid] (2022-08-24 09:21):

理想情况是,一块硬盘装win,并包含自己的efi分区,一块装linux,也包含自己的efi分区,这样就能互不干预

但是,大多数情况时,用户压根不清楚硬盘上的efi分区是怎样的

两块硬盘,也有可能出现,一块没有efi分区,并且这块硬盘的启动项直接在另一块硬盘上了,这种情况,只要保证第二块硬盘安装grub,依然可以正常引导双系统,但是你把第二块硬盘格式化了,删了,显然第一块硬盘也gg

启动项出问题没有必要重新安装系统,直接搞个efi分区,拷贝个对应的EFI启动项进去就可以了,

大多情况下的“[/quote]谢谢,懂了
那我现在应该是可以把970当作win系统盘,先把另外俩拔掉看看能不能启动?不能启动的话然后就在上面搞一个efi分区。
确认可以启动后再把第二第三块盘的系统删了,然后装个ubuntu的样子?