关于 NVMe 固态安装 Linux 的疑问

2019-02-14 10:32:29 +08:00
 Belmode

问题是这样的。前段时间,发现自己的老固态太小了,装的 win10 都快不够了。所以就买了一块 Asguard 的 240/256G 的固态,来替换之前的小的 128G 的固态。一直使用 Linux 当生产力的,Win 辅助。以前的 Deepin 配置好了,开发使用了好久,但是在机械里,有时候还是有写卡顿,所以就准备在新固态里,腾 50G 出来安装下 Deepin 或者 Ubuntu。但是问题出来了,用 Deepin 官方的 U 盘制作工具将 Deepin 写入 U 盘,或者用 rufus 将 Ubuntu 写入 U 盘,都是可以进入临时的系统的,但是找不到固态盘,只有机械盘。原来电脑的固态是厂家送的奇葩的 m.2+SATA 通道的,安装系统和普通 SATA 机械没区别。这个是 m.2 PCIe NVMe 的,需要 NVMe 协议支持,我是明白的。win10 就是用原版镜像+Intel Rapid 驱动才能识别硬盘的( PE 注入 NVMe 协议搞很久没成功)。我在网上找了找,都说现在 Lniux 内核支持 NVMe 固态的,但是却没有找到,如何安装系统的。(或者是我不懂,没明白大神的意思)

我尝试过,改 BIOS 设置,将硬盘模式改成 ACHI,安装器可以找到固态硬盘,但是,开机后无法进入系统,我的电脑直接进入 BIOS 的内存测试去了。

对了,我的电脑是 Dell 游匣 G3 3579 GTX 1050。

请教 V 站的朋友们,能指导我一下,如何在 NVMe 固态中安装 Deepin 或者 Unbuntu,万分感谢!

18426 次点击
所在节点    Linux
26 条回复
HYisen
2019-02-14 11:17:19 +08:00
我的 Win10 是怎么装在 SM961 上的?只要使用较新的镜像,Windows 能自己解决几乎所有的驱动问题。
Linux 支持 NVMe 接口,与 SATA 的区别在于文件名不一样了(还记得吗?万物皆文件的哲学)。
像是我的就有一个是 /dev/nvme0n1p1 ,一个是 /dev/sda1。如果系统的安装精灵不适配的话,前者就很有可能不被识别为硬盘而不能被使用。
最好的解决方案是自己改安装精灵的代码,并提交 PR 给其开发者帮助它改进产品。
其次就是不用这个安装精灵了,你可以试试其他 destro 的,或是干脆像 Arch, Gentoo 或是 LFS 一样自己完成安装精灵的工作。实际上就我自己的手动安装经历来看,无非是正确编写 fstab 处理自动 mount 的问题。如果你愿意学习的话,去研究完一个手动安装教程( e.g., [Arch 的]( https://wiki.archlinux.org/index.php/Installation_guide))就知道问题出在哪里,应该怎么做了。如果是小白的话,大概在乎的只是 DE,那么可以试一下 manjaro 的 deepin edition,它会比较像 Deepin,或者是 Gnome edition,会有一点像 Unbuntu。现在我去试一下前者的 live CD 能否识别我的 SM961,过会儿(也许 1hr )给结果。
或者你也可以考虑使用 LVM 绕过这个问题,假如安装精灵的 LVM 配置和 fstab 配置不是一个过程的话,也许也行。
podel
2019-02-14 11:17:24 +08:00
nvme 设备文件不再是 /dev/sda,b,c 了 而是 /dev/nvme0,1,2 然后还要对 nvme 设备创建命名空间啥的。然后才可以分区当做硬盘设备使用。 相应的教程网上都有。可以自己搜一下。
kokutou
2019-02-14 11:44:16 +08:00
/dev 下面的名字不一样。

你 win10 也要额外驱动是因为 Dell 默认磁盘控制器模式是 raid,这个比较新的电脑确实不自带。。。

改了后进不去系统,这个要分情况讨论,有 2 种情况,处理方法不一样。
反正新电脑,改了 AHCI 后重装一下就行了。
kokutou
2019-02-14 11:46:20 +08:00
没仔细看。。如果是 m2 sata 盘,那名字还是 sdx

保险点把磁盘控制器模式改成 AHCI,然后用内核比较新的装就没问题。
HYisen
2019-02-14 11:54:35 +08:00
我试了一下,manjaro deepin edition 可以识别出我的 SM961,不折腾的话,换用这个版本就可以获得和 Deepin 一致的体验并解决问题。
https://manjaro.org/download/deepin/
Osk
2019-02-14 11:57:08 +08:00
如楼上所说, NVMe 的盘设备路径是: /dev/nvme${X}p${Y}.

我是 ArchLinux + Intel 的傲腾盘(就是一个 PCIe x2 的 NVMe 设备), 直接安装.

但我的主板不支持从 nvme 启动, 所以我把内核和 initrd 放 SATA 盘里启动的.
hymzhek
2019-02-14 12:13:50 +08:00
boss 把 intel rst 关了 Windows 要处理一下才行 或者 重装
hymzhek
2019-02-14 12:14:28 +08:00
boss >bios
niceshell
2019-02-14 12:54:20 +08:00
sm961 opensuse 和 fedora 貌似都能识别
styx
2019-02-14 13:52:49 +08:00
主流发行版的内核应该都有 NVMe 驱动的,听起来好像是你从 U 盘进入安装步骤后识别不到 NVMe 的硬盘?如楼上所说,你可以在安装系统的时候手动进入 Rescue Shell,看看 /dev/ 下 有没有 nvmeX 的设备。

如果确实没有这个设备,应该有几点可能
1. AHCI 模式对应的就是 SATA 模式,你应该去找 /dev/sdX ; NVMe 模式对应的是 /dev/nvmeX
2. 不确定你的笔记本的启动模式是 EFI 还是 Legacy,有可能你是用 Legacy 模式启动了 U 盘——但是你的 BIOS 没有支持 Legacy 模式下的 NVMe。因此可以把启动模式改成 EFI 试试(拷安装盘的时候也注意一下 rufus 的启动模式)
bmos
2019-02-14 13:58:25 +08:00
ubuntu 18.04 金士顿 nvme,直接装。
styx
2019-02-14 14:01:11 +08:00
还有就是看起来你先装了 windows 再装 Linux。emmm,这样经常会出现 windows 的 bootloader 和 grub 冲突的情况。Windows 用的是 Legacy 模式下的 CSM 来支持 EFI 启动,通常不会分一个 EFI 分区;而 grub 往往需要一个 EFI 分区来启动 EFI。当然你全都改回 Legacy BIOS + AHCI/SATA 的模式按理说应该是可以的。。。
yuzh
2019-02-14 14:18:50 +08:00
我的西部数据 nvme 固态安装 deepin Ubuntu 需要加上 nvme_core.default_ps_max_latency_us=5500 启动参数才行
IdontWanToBeBan
2019-02-14 21:20:18 +08:00
楼主你真是....
Lniux 内核支持 NVMe 固态的.... ---------> Linux 内核支持 NVMe 固态的....
安装 Deepin 或者 Unbuntu,万分.... ----------------> 安装 Deepin 或者 Ubuntu,万分....
Belmode
2019-02-14 23:38:48 +08:00
@HYisen 感谢回复,问题已解决。你说的这些,我也略懂。只是,我的问题结症是在于“安装器”无法识别 NVMe 硬盘,不是后续的安装。要是真的自己搞,还得手动加载 NVMe 驱动,然后才是引导安装。
@podel @Osk @hymzhek @niceshell 感谢回复,问题已解决。
@kokutou 感谢回复,新型电脑没有 Rapid ON 这种模式了吗,我不是很清楚。Dell 游匣 G3 也是 2018 年出的。
@styx Dell 的 BIOS 需要关闭 Rapid,linux 安装器才能检测出硬盘
@yuzh 这个我知道,不过这个参数不是休眠策略吗,是为了避免系统假死和卡顿设置的
@IdontWanToBeBan 不明白,你重复这个的意思,还望明说。
JxQg597
2019-02-14 23:49:00 +08:00
@Belmode #15 单词拼错了
@IdontWanToBeBan #14 这么长看的都这么细致,佩服
Belmode
2019-02-15 00:00:07 +08:00
@JxQg597 还有 ACHI -> AHCI。我确实不少敲错的,,,手冷。。。
ZhaoXiRui
2019-03-30 12:23:16 +08:00
兄弟,我有台机器跟你是一样的 Dell G3-3579.自己换了个浦科特 512Nvme 固态,一直想安装 Linux 总是不成功,求指点一下,能详细介绍下吗?或者发我一份教程到我邮箱 2753769043@qq.com 谢谢你了
Belmode
2019-03-31 13:30:50 +08:00
@ZhaoXiRui 没有难度。就是在 BIOS 里把硬盘模式改成 AHCI,就可以了。然后 win10 让他自动修复一下,就好。
ZhaoXiRui
2019-03-31 18:38:54 +08:00
装了 linux 启动的时候直接就跳 Windows 了,都不进入修复引导了,怎么解决请指点

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/534791

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX