我是一个初学者,我知道 NVMe 是新的,并且对于 SSD 来说比 AHCI 有优势。但是,我有一个小问题?
SATA SSD 可以与 AHCI 和 NVMe 通信,并且操作系统也具有适用于 NVMe 和 AHCI 的驱动程序。
AHCI和NVMe如何选其一?我们如何从一种协议切换到另一种协议?如何从 NVMe 切换到 AHCI?我不确定,但我不认为有任何 BIOS 设置。0
答案1
不可以,SATA SSD 无法同时支持 AHCI 和 NVMe。
AHCI 只是最常见的 SATA 控制器规范和/或该控制器的本机工作模式。通常,可能存在一种或两种其他模式:传统IDE兼容模式和/或支持软件/固件RAID的模式。在所有这些情况下,控制器明确使用 SATA 连接技术与 SSD(或 HDD)进行通信。
为了与 NVMe 进行通信,SSD 需要直接 PCIe 连接,这可以通过 PCIe SSD 卡(如果作为服务器选项出售,有时称为“I/O 加速器”)或 M.2 外形规格 SSD 来实现。
M.2 插槽可以同时具有 SATA 和 PCIe 连接 - 但某些 M.2 插槽实际上可能只有其中之一,具体取决于系统芯片组中可用 PCIe 通道和/或 SATA 连接的数量。
我见过的大多数 M.2 SSD 要么是 SATA 要么是 NVMe,而不是两者兼而有之 - 因此,如果您想从一种类型切换到另一种类型,通常必须用不同型号替换 SSD,并安排复制内容从一个到另一个。
NVMe SSD 应显示在lspci
Linux 的列表中,如下所示:
07:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
在 Linux 中,NVMe 设备不会显示为/dev/sdX
,而是显示为/dev/nvmeXnY
,其中 Y 是 NVMe命名空间ID(通常在消费级 NVMe SSD 中始终为 1)。 NVMe 设备的分区将被命名为/dev/nvmeXnYpZ
。因此,第一个 NVMe 设备将是/dev/nvme0n1
其第一个分区/dev/nvme0n1p1
。
至少一些系统制造商仅针对本机 UEFI 启动方式实现了 NVMe 启动支持,因此,如果您的操作系统是使用旧版 MBR/BIOS 启动方式安装的,则在将当前系统转移到 NVMe SSD 之前,您可能必须安装 UEFI 启动加载程序。
如果您不熟悉 UEFI 和 NVMe,我建议您在系统中引入 NVMe SSD,方法是暂时断开所有其他 HDD 和 SSD,插入新的 NVMe SSD,将 BIOS 设置切换为仅 UEFI 启动(或“禁用 CSM”,正如有时所表达的那样),并全新安装您选择的操作系统。这些步骤将确保操作系统安装程序以 UEFI 模式启动,这通常意味着它将自动安装与 UEFI 兼容的引导加载程序,而不是传统的 MBR/BIOS 版本。断开所有其他存储介质可以防止错误(您的错误和安装程序的错误)。
完全安装新操作系统后,您可以重新连接其他磁盘。