这很可能不会按照我预期的那样进行。
由于我的研究性质,有些事情在 Windows 上很容易,在 Linux 上很难,而有些事情在 Linux 上很容易,在 Windows 上很难。我想要做的是进行双启动设置,这样我可以从 Windows 7 中的 VirtualBox 访问我的 Ubuntu“VM”,或者在启动时选择它。
在我全力以赴并尝试运行它之前,我想与大家交流一些想法。我的第一个想法是从以下方面开始:
30G NTFS Windows 7 boot partition
500M ext2 Ubuntu /boot & /etc partition
190G NTFS "Applications & Program Data" Partition
然后我可以启动 30G NTFS 分区,将 c:/Users、c:/Program Files* 设置为指向 190G 分区上的子目录。然后我可以启动 500M Ubuntu 分区并使用 FUSE 从 190G 分区挂载 /。
现在我可以在 Windows 7 上设置 Ubuntu VirtualBox 客户机。我使用同样的技巧并从 190G 分区挂载 /。这样,虚拟磁盘的大小就很小,并且实际上只包含虚拟化特定的东西。
所以我的问题是:我需要在两个实例中将 / 下的哪个目录分开?我的假设是 /boot 和 /etc 以及其他目录?这能行得通吗?
干杯,
弥敦道
答案1
假设 VirtualBox 允许您使用真实机器分区作为虚拟机分区或磁盘,您可以在虚拟机或真实硬件上无差别地启动相同的 Linux 安装。Live CD 一直都在这样做,而且它并没有特别的限制。(据我所知,对于 Windows 来说,这要困难得多。)
如果分区布局不同,则必须有单独的引导加载程序,或者至少有单独的引导加载程序配置。您甚至不需要真正/boot
与主安装分开:保留它,正确设置它以进行直接引导,并在 VM 中使用不同的引导加载程序(例如独立的 Grub(虚拟)软盘)。
您可能希望某些设置(例如网络配置)根据您是在硬件上运行还是在虚拟机中运行而有所不同。您可以使用 测试系统是否在 VirtualBox 中运行VBoxControl
。
Linux 会自动加载大多数驱动程序。唯一常见的例外是专有视频驱动程序,这可能需要您(或自动安装程序)编写特定于品牌的。您可以使用其选项或环境变量/etc/X11/xorg.conf
让 X 服务器读取不同的配置文件。-config
XORGCONFIG
如果 VirtualBox 不允许在虚拟机内直接使用真实机器分区,您可能不得不通过 挂载根文件系统vboxvfs
。这需要一个包含 VirtualBox 内核模块的 initrd,您可以使用 构建它update-initramfs
。