我使用 Windows 已有很长时间,但我发现很容易破坏注册表并破坏 EFI 系统分区。当然,我希望在双启动系统中保护它,而无需在 Linux 内虚拟化 Windows。我想出了一个方案,如下所示:
我的驱动器分为几个分区:
ESP
Linux 交换分区
Windows 和 Linux 之间共享 NTFS 分区 + 增长缓冲区
恢复 Linux 分区
Linux 根文件系统 + 增长缓冲区
Windows 根文件系统 + 增长缓冲区(及相关文件)
我想要做的是将 rEFInd 放在 ESP 上,并将其链式加载到 Linux 或 Windows。我并不完全信任 Windows,所以我想限制其对 ESP 的访问权限,可能通过第二个伪造的 ESP 或其他方法。我想到了一些想法:
是否可以仅将 Windows 分区作为一组虚拟磁盘公开,而对其他分区进行非法访问会导致内核崩溃?
是否可以将 Linux 分区安装为只读或将其标记为 Windows 的私有/隐藏,但允许 Linux 在启动时访问整个驱动器?即我们可以为 Linux 分区设置一些属性,然后在实际启动 Linux 时取消设置它们吗?
我已经看到可以使用 Linux 作为 Windows 的链式加载器,这可能是实现我想要的最佳方式,但这是一个非常新的领域,甚至可以说是研究。
显然,我可以将 Windows 安装在单独的硬盘上,但此时,这与将 Windows 安装到现有硬盘的特定区域(减去所有扇区偏移)并没有太大区别。如何才能最好地将硬盘的精确区域虚拟化为 Windows,同时删除其他地方的访问权限和范围?