好的,我做了一些研究,终于能够编辑虚拟盒子图像。就是这样:
如果您在启动时查看 vmlite 映像的 grub 条目,内核条目(带有“kernel”关键字的条目)有一个参数--use-cmd-line
,这cmdline
是在第一个条目中定义的cmdline (hd0,2)/cmdline
,这是一个cmdline
位于引导硬盘第三分区内的文件。
该文件具有内核选项:
init=/init qemu=1 console=ttyS0 console=tty0 vga=788 verbose androidboot.hardware=vbox_x86 androidboot.console=ttyS0 android.qemud=ttyS1
现在您必须编辑这个名为 cmdline 的文件以将vga=788
选项更改为vga=ask
.
编辑:(在 Linux 机器上)
您需要安装vdfuse
.
sudo apt-get install virtualbox-fuse
在某处创建两个空文件夹。
sudo mkdir /mnt/image
sudo mkdir /mnt/partition
然后将虚拟盒映像(vdi、vmdk 或 vhd 等)安装到文件夹。(假设 virtualbox 磁盘映像文件是/tmp/vmlite.vmdk
,我们将其挂载到/mnt/image
文件夹)
vdfuse -w -f /tmp/vmlite.vmdk /mnt/image
将在名为EntireDisk、Partition1、Partition2、Partition3等的挂载文件夹中创建一些文件。
由于我们对第三个分区感兴趣,我们将相应的文件挂载到/mnt/partition
:
sudo mount -o loop /mnt/image/Partition3 /mnt/partition
见内容:
sudo ls -l /mnt/partition
会有 cmdline、ramdisk 和内核。
现在我们编辑 cmdline 文件(我们将使用 gedit 文本编辑器,你可以使用你喜欢的一个):
sudo gedit /mnt/partiton/cmdline
进行编辑,更改vga=788
为vga=ask
,保存并关闭。验证新文件内容:
sudo cat /mnt/partition/cmdline
卸载文件和图像:
sudo umount /mnt/partition
sudo umount /mnt/image
如果我们不需要这两个文件夹:
sudo rm /mnt/image
sudo rm /mnt/partition
完成,从虚拟机启动映像。它会说按 ENTER 查看可用的视频模式,在 Enter 时显示一个列表,键入选择的数字,或键入“扫描”以搜索更多显示模式。
注意:并非所有模式都有效,请使用颜色深度为 24 或 32 并支持纵横比的 VESA 模式。