安装似乎可以正常进行(使用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。
任何帮助将不胜感激。我觉得解决方案可能是与图形设置有关的,但我不确定。
#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 x86
和Reboot
时,选择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_64
和DEBUG=2
等,这些参数现在显示在安装介质引导菜单项中。我在自定义grub配置中添加了所有这些参数,并更新了grub 。
启动时,我必须在控制台提示符下输入两次“退出”。
启动此Android并启动了窗口管理器。
PS:如果审阅者弄乱了答案的格式,甚至没有获得内容就将您投了反对票,那就太不酷了。
评论
我与您分享您的感受(此处是同一问题)。由于一些提示,我什至将图形内存增加到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安装程序挂起,因为磁盘甚至没有被格式化。 (我还将在该链接中添加此“脚注”)