虚拟机、双启动和 SSD 上的数据磁盘

虚拟机、双启动和 SSD 上的数据磁盘

这是在计划中,所以如果我的策略有误,请告诉我。这里有多个问题,但我认为它们都归结为相同的答案。

硬件是一台配备单个 SSD 的笔记本电脑。我试图不损失 SSD 的性能。

我计划使用一台原生双启动 Windows(加上 cygwin)和 Linux 机器,这是我的 BYOD,代表开发环境。我将代码库保存在共享分区上(尽管有时这是一个外部雷电 SSD),无论哪个操作系统正在运行,它都可以原生“安装”。我根据手头的任务启动一个或另一个环境。有时我必须使用 Windows 工具进行开发,但通常,Linux 是我首选的开发环境。

如果我能将另一个操作系统虚拟机化并在其中运行,那就太理想了。由于我还没有找到合理的基于虚拟机的解决方案,所以我假设我已经让 Samba 参与到虚拟机之间共享代码分区。这会降低虚拟机中 SSD 的性能吗?

客户还为我提供了目标环境的虚拟机,通常是 Linux。这通常不适合开发,仅用于测试。我通常会保留两个副本,一个作为沙箱,另一个我使用客户首选的方法部署到其中。我将这些虚拟机快照保存在共享分区上。

后者通过网络进行交互,因此没有磁盘共享要求。但是,沙盒能够从本机运行的操作系统“安装”代码库将很有用。这又是 samba 还是 nfs,取决于本机操作系统?

我是否忽略了一个技巧,可以让这一切在同时运行所有四个环境的情况下顺利运行,而不会损失 SSD 性能?

答案1

我不确定您为什么排除虚拟机解决方案。虚拟机具有以下优势:(我正在复制我自己对类似问题的回答):

  1. 两台机器可同时工作,无需关闭一台机器即可启动另一台;

  2. 访问时间更短:即使您关闭了虚拟机,在主机内部打开它也比关闭/启动要快得多;

  3. 轻松共享数据。例如,在 VirtualBox 中,文件夹共享非常简单,因此您的所有数据都可以同时提供给两个同时运行的系统。无需担心不同的文件系统,也无需担心 SAMBA 配置;

  4. 轻松调整客户机的大小。如果在初始安装后,您决定需要更多磁盘空间,那么与调整非空分区大小的实际任务相比,调整虚拟磁盘大小的任务就很简单了;

  5. 规避 LAN 中的访问限制,例如启用了 MAC 过滤;在这种情况下,您无需注册一台新电脑(双启动的解决方案),您只需通过 NAT 启用虚拟机的连接即可;

  6. 通过 CLI 轻松控制虚拟机。基本上,整个过程可以轻松编写脚本,甚至可以从远程执行。尝试使用双启动。

  7. 易于迁移。使用 ova 格式,您的虚拟机可以轻松转移到完全不同的 PC,运行不同的操作系统和不同的虚拟机管理程序。

当然,这也会使客户端提供的虚拟机的使用变得简单。

相关内容