当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 内部 SSD/SATA 驱动器在 Windows 中显示为可移动

作者:精品下载站 日期:2024-12-14 20:06:36 浏览:17 分类:玩电脑

内部 SSD/SATA 驱动器在 Windows 中显示为可移动


在某些情况下,Windows 10、8.1 和 7 可能会将内部 SSD 或 SATA 驱动器识别为可移动设备(介质)。因此,系统托盘中会出现该磁盘的安全删除图标(就好像它是普通 USB 闪存驱动器一样)。

[玩转系统] 内部 SSD/SATA 驱动器在 Windows 中显示为可移动

当然,您无法即时弹出安装了 Windows 的 SATA 驱动器,但您可能会意外删除额外的 SATA 磁盘。这种“可移动”驱动器的另一个缺点是,在 Windows 7 和 8.1 中,您无法在其上创建多个分区(这仅在 Windows 10 1703 或更高版本中可行)。

此问题与 Windows 中使用内部 SATA 和外部 eSATA 硬盘驱动器的通用驱动程序 — 标准 SATA AHCI 控制器有关。连接这些驱动器时,操作系统会检查是否支持热插拔模式(热驱动器移除)。如果控制器工作在 AHCI 模式,则始终支持此功能。理论上,工作在该模式下的 SATA 驱动器将显示在任务栏上的“安全删除硬件”图标中。然而,大多数芯片组供应商都在其驱动程序或附加软件中集成了自动隐藏内部 SATA 驱动器的功能。

安装SATA控制器驱动程序

如果您的内部 SATA/SSD 显示在安全删除硬件列表中,您应该尝试安装更合适的控制器驱动程序。尝试在主板或计算机制造商的网站上查找最新版本的硬盘控制器驱动程序。还要安装主板芯片组的本机驱动程序(Intel Rapid、RST 和 AHCI 驱动程序、Intel Matrix Storage Manager 等)。

BIOS 中的 SATA 控制器设置

在某些BIOS/UEFI版本的高级设置中,您可以禁用控制器的HotSwapHotPlug模式。确保您的计算机是否可以使用此功能。另外,您可以将控制器模式从 AHCI 更改为 IDE,但这样您将失去所有 AHCI 优势。

TreatAsInternalPort:如何通过注册表配置SATA模式?

您可以通过注册表禁用 NVidia 控制器上内部驱动器的安全删除。运行 regedit.exe 并转到注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services vata。 创建一个名为 DisableRemovable 和值 1 的 DWORD 参数(请注意,nvata 可能是 nvatabus reg 键)。

此外,还有一种通用方法可以在注册表中为特定控制器端口设置“内部端口”磁盘属性。

首先,您必须检测使用您的硬盘的控制器的总线号。为此,请打开设备管理器 (devmgmt.msc),在磁盘驱动器列表中找到您的驱动器,然后打开其属性。记住磁盘的总线号和端口号(目标 ID)。在我的示例中,总线和端口号为 0。

[玩转系统] 内部 SSD/SATA 驱动器在 Windows 中显示为可移动

Windows 7中,您可以使用 TreatAsInternalPort 注册表参数将控制器端口标记为内部端口。为此,请运行 regedit.exe 并转到注册表项 HKLM\SYSTEM\CurrentControlSet\Services\msahci\Controller(n)\Channel(N),其中 (n) 是驱动器连接的控制器的编号,(N) 是控制器通道(端口)的编号。

在此注册表项中,创建一个名为 TreatAsInternalPort 和值 1 的 DWORD 参数。

应对所有要标记为内部驱动器的 SATA 驱动器执行此操作。例如,您的计算机中有 2 个驱动器控制器。第一个控制器连接了两个 SATA 驱动器,第二个控制器还连接了一个 SATA 驱动器。要将它们标记为内部驱动器,请运行以下命令:

reg add "HKLM\SYSTEM\CurrentControlSet\Services\msahci\Controller0\Channel0" /f /v TreatAsInternalPort /t REG_DWORD /d 0x00000001
reg add "HKLM\SYSTEM\CurrentControlSet\Services\msahci\Controller0\Channel1" /f /v TreatAsInternalPort /t REG_DWORD /d 0x00000001
reg add "HKLM\SYSTEM\CurrentControlSet\Services\msahci\Controller1\Channel0" /f /v TreatAsInternalPort /t REG_DWORD /d 0x00000001

进行更改后,您需要重新启动计算机。

请注意,分配给磁盘的编号(您在 diskpart 或 diskmgmt.msc 中看到的)并不总是与 SATA 或 RAID 通道编号相对应。

Windows 10/8.1中,使用StorAHCI驱动程序而不是MSAHCI,因此TreatAsInternalPort参数在注册表中的位置不同。转到键 HKLM\SYSTEM\CurrentControlSet\Services\storahci\Parameters\Device,创建一个多字符串参数 (REG_MULTI_SZ) TreatAsInternalPort,并在每个字符串中指定要标记为内部的 SATA 控制器的端口号。例如,要将所有驱动器从 0 到 3 标记为内部驱动器,请设置 TreatAsInternalPort 参数的以下值:

0
1
2
3

[玩转系统] 内部 SSD/SATA 驱动器在 Windows 中显示为可移动

然后重新启动计算机,端口号从 0 到 3 的所有 SATA/SSD 驱动器将从安全删除列表中隐藏,并且不再显示为可移动。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯