我有一台双启动机器(Windows 10 和 Arch Linux),其中有一个仅由 Arch 使用的 NTFS 分区。
不幸的是,正常关闭 Windows 10 后,Arch 不会因为混合关机而挂载该分区。有什么方法可以防止该分区被 Windows 弄乱吗?
我不想禁用混合关机,因为这样可以快速切换操作系统。我也不想更改该分区的文件系统。
答案1
您可以通过两种方式解决此问题。问题归结为 Windows 即使在关机后仍将分区标记为活动分区并处于使用状态。解决此问题的方法如下:
选项 1. 使用此命令强制挂载分区sudo mount -t ntfs-3g -o remove_hiberfile /dev/sda2 /media/mountdrvlive
这将允许您即使在休眠时也能挂载分区。
选项 2. 禁用在 Windows 中安装驱动器。
Disk Management
从设置或按键打开Win + X
。现在右键单击驱动器分区并通过删除挂载点来禁用挂载。
您可以通过以下方式禁用任何内部驱动器的安装
diskpart SAN POLICY=OfflineInternal
答案2
0x83
您可以通过将相应的分区类型更改为(如果是 MBR)或0x8300
(如果是 GPT)来隐藏 NTFS。它会欺骗 Windows 它是一个 Linux 分区。在 Linux 上使用fdisk
或来执行此操作。gdisk
它之所以有效,是因为 Windows 会查看分区类型并发现它很重要,而 Linux 则不然。在 Linux 中,您可以明确指定文件系统(例如使用mount -t
或/etc/fstab
),如果有任何自动魔法,它会通过其标题等识别文件系统(类似地,Linux 不关心文件扩展名,而是通过文件内容识别文件)。
我使用 Windows 7 和 Kubuntu 16.04.2 LTS 确认了我的解决方案(两种情况:MBR 和 GPT)。目前我无法访问 Windows 10,希望它能以相同的方式运行。结论:
- Windows 不会挂载 Linux 分区类型的分区,即使里面有 NTFS。您根本无法分配驱动器号。这样的分区似乎表现得就像是纯 Linux 分区。我预计Windows 不会干扰它。
- Linux 可以挂载 NTFS,而不管相应的分区类型是什么。
琐事:在 Linux 中,您可以在常规文件内安装任何文件系统并挂载它。在这种情况下,没有分区表保存分区类型。这清楚地表明 Linux 在挂载时并不关心分区类型。