我从这里下载了最新的Android x86(android-x86-6.0_20160129.iso),并尝试将其安装到VMware Workstation和Virtualbox中的VM上的HDD中。

安装似乎可以正常进行(使用EXT4和EFI Grub),并且我收到一条消息,说明已成功安装。但是,当我重新启动时,它会通过GRUB,选择正确的Android安装,但不会启动。我在下面的屏幕截图中看到了结果,然后在空白屏幕上显示了闪烁的光标。



我在Android-SE上也遇到了类似的问题(此处和此处),但它们使用的是较旧版本的Android x86,并且似乎没有适用于我的解决方案。

VMware和Virtualbox中的VM均具有:HDD = 4GB(IDE),RAM = 2GB,2个CPU,它们通过EFI引导。我已经在Grub引导参数中尝试过nomodeset和xforcevesa,但是似乎没有任何作用。

.iso确实可以通过Live模式(LiveCD)一直引导到GUI。
任何帮助将不胜感激。我觉得解决方案可能是与图形设置有关的,但我不确定。

评论

我与您分享您的感受(此处是同一问题)。由于一些提示,我什至将图形内存增加到32MB(没有改善)。有些帖子谈到需要2个分区(1 = grub的主要100MB,2 =扩展了Android的剩余空间),对我而言没有帮助。另一个来源建议手动编辑/创建grub.cfg作为menu.lst不起作用(尚未尝试过)。我对Android 5.1的另一次尝试挂在启动动画(“ android”文本)中,因此15分钟后我放弃了。您的安装基于什么操作系统设置?我曾经使用过“ other Linux”,就像过去那样。

到目前为止,我已经尝试过“ Ubuntu”和“ FreeBSD” ...让我在其他地方搞乱,看看是否有帮助。

我看到一个YouTube视频,其中有人使用Windows7,这确实让我感到困惑。

顺便说一句:我刚刚再试一次,对我来说,它甚至都没有启动进入实时模式(然后在同一位置结束)。我已经提到过的姐妹网站上的相关问题:VirtualBox中的Android-x86 6.0棉花糖:安装卡在GRUB

@Izzy:实际上,根据我所读的内容,您上一篇文章中的链接上的解决方案(并经过一些实验)并不完全正确,但它可以工作。据我了解,实际上是GPT引导扇区的创建,它允许Grub继续处理,而不是存在2个分区。我在某处读到,如果首先未完成“创建/修改分区”,则Android x86分区格式化会无声地失败,这导致grub安装程序挂起,因为磁盘甚至没有被格式化。 (我还将在该链接中添加此“脚注”)

#1 楼

找到了解决方案!

您必须编辑menu.lst file。操作方法如下:


在调试模式下启动(通常是启动菜单中的第二个选项)
当启动停止时(对我而言,它只是用闪烁的光标而挂在那里,没有任何提示) )输入mount -o remount,rw /mnt

输入cd /mnt/grub
输入vi menu.lst

在第一个引导项下按Shift + a
,找到以kernel initrd=/in开头的行(您的行可能看起来有所不同;具体取决于Android版本;通常只需找到以kernel开头的行)
在行末尾键入vga=834 nomodeset xforcevesa

按ESC,然后按:wq-这些命令将保存文件并退出vi
cd /

ent umount /mnt

ent reboot -f


现在系统应该重新启动您选择的VESA模式。

这将强制使用VESA驱动程序X。

您可以将vga=xxx替换为屏幕分辨率所需的任何数字。
还测试了832是否可以正常工作(分辨率为800x600)。

使用iso文件时,您可以找到所有VESA模式,并选择启动选项以VESA模式启动。显示所有模式的列表(数字以十六进制表示,某些模式前面还有一个多余的字母-忽略它),您可以立即在此处进行测试以查看其是否有效,并且可以在此menu.lst修复程序中很好地使用,但是您必须先使用任何hex-> dec转换器将其从hex转换为dec。

评论


+1,确认可在VMware Workstation上用于android-x86-6.0-r3.iso。

– David Refoua
18年1月14日在1:48

是否有一个非繁琐的替代方案,它也不允许由1个错字引起的错误?

–neverMind9
18年8月19日在23:09

非常感谢❗️它仍然可以在Android 8上运行😊

– Yasine ElBadaoui
19年1月13日在4:42

非常感谢❗️它仍然可以在Android 8.1上运行😊

–井上智文
19年2月21日在11:46

在步骤10中,我得到:'无法卸载/ mnt:设备或资源繁忙'

–柯伊
19年6月10日在17:12



#2 楼

我想根据个人经验来扩展和改进@Jay Smith答案。
他认为问题的根源在于Android使用的VGA分辨率是正确的,但他认为这是错误的一次性修复,应在每次启动时键入。
可以使它持久化,应该做到!然后,我向您展示如何:)


首先,通过向导步骤从iso映像正确安装Android。
在安装过程中请勿使用EFI GRUB。
请勿使用立即运行Android_x86选项,而是选择“重新启动”并弹出iso。 @Jay Smith提到的错误


这种方法的最大缺点是,下次尝试从硬盘驱动器
引导时,GRUB将无法找到图像


与VGA问题无关,应分开处理。我也遇到了此错误,并且完全重新安装得到了帮助,所以我认为此错误与“运行”选项有关,“因为当我选择“重新启动”时,我没有遇到该错误。


之后您将启动安装,并将卡在Android命令提示符下。好吧那继续
现在您应该尝试选择正确的分辨率。
不一定是788或794,正如他们在这里所说,这完全取决于您的硬件设置。对我来说,796、794和792分别适用于KitKat,Lollipop和棉花糖图像,但是您的值可能不同。
这里是将GRUB VGA值链接到分辨率的表。
要检查您使用的匹配项反复试验方法

然后在引导至GRUB屏幕时,选择e键来编辑选项



您应该在其中添加VGA选项的字符串,如nomodeset vga=794



编辑后,按Enter和b键启动所需的引导记录。


将这些步骤重复N次以找到合适的分辨率。您将通过启动Android来认识到这一点:)
哦啦,太好了!我们取得了理想的结果,并一次启动了Android。但这只是工作的50%。我想您不想每次都输入VGA废话吗?好的,让我们继续保留结果。
现在我们需要编辑GRUB config以添加所需的分辨率。虽然有多种方法可以在GRUB本身中执行此操作(即调试模式,grub cmd),但我无法使其工作并提出另一种100%解决方案。

我们需要有效的Linux安装(物理或虚拟都无所谓)。这里的问题是,由于受保护,无法从Android内部访问GRUB文件夹,因此应从外部进行访问。而不是Windows,因为它不能识别ext3/ext4分区,只能从* nix操作系统识别。
因此,将此磁盘(VHD,VDI,VMDK或其他任何磁盘)添加到Linux安装中,以便它可以访问android文件系统。 />

访问/grub/menu.lst。通常它位于根文件夹中。
在那里,您会发现像



一样的东西,就像我们之前所做的那样,将所需的VGA选项添加到引导记录中。


保存文件。

我们完成了!现在,您可以将android磁盘重新连接到虚拟机并愉快地使用它。

评论


您可以按照以下步骤访问grub文件夹:1.打开终端仿真器2.通过执行“ su”命令获得root用户访问权限,并允许它进行访问3.通过以下方式为硬盘创建目录:mkdir / mnt / sda 4.安装硬盘通过:mount / dev / block / sda1 / mnt / sda 5.浏览到grub文件夹,通过:cd / mnt / sda

–Nightcap79
20 Sep 7'15:15



谢谢你的建议

–防晒
20/09/11'4:02

#3 楼

我还遇到了Windows 7 Pro x64 AMD机器上的Android x86虚拟框的问题。我想根据我们的体系结构/硬件,我们每个人都会遇到稍有不同的问题,但是它们似乎都是相似的根本原因。我认为应该比主机OS更加注重体系结构/硬件。尝试在系统中设置了EFI或不设置EFI的情况下尝试32位,将硬件加速保留为默认设置,确保在您的BIOS中启用了虚拟化。不要启用3D图形加速,如果启用2D加速,则应收到警告,因此不要启用它,如果在初始设置过程中出现黑屏,请尝试将视频内存增加到64mb。最后,您可以在此处下载预构建的VM映像:

http://www.osboxes.org/android-x86/

所有这些小调整都帮助我成功安装了Android Windows 7 x64 Pro计算机上的x86 4.4。

#4 楼

这里有些进步,但不是真实的。以下内容使我可以在VirtualBox下正确引导Android x86 6.0,但只能引导一次:

1)引导安装映像时,初始屏幕为您提供四个选项。将光标移至最后一个光标:安装-将Android-x86安装到硬盘上。”

2)按[Tab]键以选择编辑选项。

3) INSTALL=1 DEBUG=类型vga=788

(确保DEBUG=vga=788之间存在空格。)


5)继续

6)在提供选项Run Android x86Reboot时,选择Run Android x86,您应该会看到ANDROID以大字母跳动了几分钟,然后Android欢迎屏幕将出现。

这种方法的最大缺点是,下次尝试从硬盘启动时,GRUB将无法找到该图像:-(任何帮助修复的问题这将不胜感激。

评论


不幸的是,这是一次性解决方法:(...

–防晒
17年2月18日在18:19

#5 楼

这是一个YouTube视频,显示了如何在Grub中设置VESA模式。

https://www.youtube.com/watch?v=JoMs-4bsygs

我的其他文章已因某种原因被删除,但是如果您想确定VESA / VIDEO是否是您的GUI在安装后无法显示的原因,请从Android x86 ISO引导并选择VESA模式(实时引导),如果gui,然后查看该youtube视频。它完美地说明了如何设置您的grub以启动正确的VESA模式。

评论


不支持按[esc]

– Micha93
19年8月18日在18:15

我的问题是从ISO引导。

– Quidam
20年6月12日在14:12

#6 楼

当系统询问“是否要安装引导加载程序GRUB”时,选择“是”。



现在您可以启动Android了。 (甚至重新启动的作品)

参考:https://shellzero.wordpress.com/2015/10/27/how-to-install-android-on-vmware-fusion-mac-os-x /

#7 楼

完全陌生,但我只是尝试在Workstation 12 Pro上安装Android 6.0,并在启动时卡在命令提示符处,偶尔闪烁。从头开始尝试了一些建议,但无济于事。最后进入虚拟机设置,并在3D图形上打钩,警告它不支持该图形。然后,这使我可以选择32mb的图形内存。重新启动,它工作了。尝试多次启动只是为了证明它,它仍然可以正常工作。希望这会有所帮助。

评论


我尝试了Spider5445提供的解决方案,它也适用于牛轧糖...感谢吨伴侣! :)

–卡皮尔·维亚斯(Kapil Vyas)
17 Mar 18 '17 at 10:01

#8 楼

在grub引导加载程序中时,按Tab键,然后将androidboot.hardware = android_x86更改为androidboot.hardware = x86。

#9 楼

您的ISO已损坏,请尝试从Android官方网站链接重新下载

评论


您怎么知道,ISO损坏的唯一原因是什么?

– Quidam
20年6月12日在14:12

#10 楼

我在硬盘上安装时遇到了同样的问题,对我来说,以下步骤对我有帮助:


像上面提到的Jay:在安装介质上,按下[Tab]键。
我记下了所有
自变量,如
androidboot.hardware=android_x86_64DEBUG=2等,这些参数现在显示在安装介质引导菜单项中。
我在自定义grub配置中添加了所有这些参数,并更新了grub 。
启动时,我必须在控制台提示符下输入两次“退出”。

启动此Android并启动了窗口管理器。

PS:如果审阅者弄乱了答案的格式,甚至没有获得内容就将您投了反对票,那就太不酷了。