在数据中心分配我的系统(Ubuntu 16.04)后,我的 Genymotion 突然因以下错误停止工作:
Logging activities to file: /home/*/.Genymobile/genymotion.log (noting logged here)
Segmentation fault (core dumped)
所以我重新安装了它,但问题仍然存在......所以我通过以下步骤检查了 Virtualbox:
$ sudo /etc/init.d/vboxdrv status
sudo: /etc/init.d/vboxdrv: command not found
所以我想出卸载它们并重新安装。但问题仍然存在
以下是我所做的:
安装Virtualbox及相关软件包:
$ sudo dpkg -i virtualbox-5.1_5.1.16-1138411~Ubuntu~xenial_amd64.deb (downloaded from virtualbox.org)
Selecting previously unselected package virtualbox-5.1.
(Reading database ... 246386 files and directories currently installed.)
Preparing to unpack virtualbox-5.1_5.1.16-113841~Ubuntu~xenial_amd64.deb ...
Unpacking virtualbox-5.1 (5.1.16-113841~Ubuntu~xenial) ...
Setting up virtualbox-5.1 (5.1.16-113841~Ubuntu~xenial) ...
addgroup: The group `vboxusers' already exists as a system group. Exiting.
Processing triggers for systemd (229-4ubuntu17) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for hicolor-icon-theme (0.15-0ubuntu1) ...
Processing triggers for shared-mime-info (1.5-2ubuntu0.1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5.1) ...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160824-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for mime-support (3.59ubuntu1) ...
$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 162 not upgraded.
$ sudo apt-get install dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
dkms
0 upgraded, 1 newly installed, 0 to remove and 162 not upgraded.
Need to get 0 B/66.1 kB of archives.
After this operation, 265 kB of additional disk space will be used.
Selecting previously unselected package dkms.
(Reading database ... 247164 files and directories currently installed.)
Preparing to unpack .../dkms_2.2.0.3-2ubuntu11.3_all.deb ...
Unpacking dkms (2.2.0.3-2ubuntu11.3) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up dkms (2.2.0.3-2ubuntu11.3) ...
$ sudo /usr/src/linux-headers-$(uname -r)/s
scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
$ sudo /etc/init.d/vboxdrv status
sudo: /etc/init.d/vboxdrv: command not found
$ sudo apt-get install linux-headers-`uname -r`
Reading package lists... Done
Building dependency tree
Reading state information... Done
linux-headers-4.10.0-30-generic is already the newest version (4.10.0-30.34~16.04.1).
0 upgraded, 0 newly installed, 0 to remove and 162 not upgraded.
安装并运行 Genymotion:
$ ./genymotion-2.8.1_x64.bin -d /opt/
Installing for all users.
Installing to folder [/opt/genymotion]. Are you sure [y/n] ? y
- Trying to find VirtualBox toolset .................... OK (Valid version of VirtualBox found: 5.1.16r113841)
- Extracting files ..................................... OK (Extract into: [/opt/genymotion])
- Installing launcher icon ............................. OK
Installation done successfully.
You can now use these tools from [/opt/genymotion]:
- genymotion
- genymotion-shell
- gmtool
$ /opt/genymotion/genymotion
Logging activities to file: /home/*/.Genymobile/genymotion.log
Segmentation fault (core dumped)
我已尝试按照以下方法操作,但错误仍然存在:
$ sudo apt-get install build-essential module-assistant
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.1ubuntu2).
module-assistant is already the newest version (0.11.8).
0 upgraded, 0 newly installed, 0 to remove and 162 not upgraded.
$ sudo m-a prepare
Getting source for kernel version: 4.10.0-30-generic
Kernel headers available in /usr/src/linux-headers-4.10.0-30-generic
Creating symlink...
apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.1ubuntu2).
0 upgraded, 0 newly installed, 0 to remove and 162 not upgraded.
Done!
$ sudo /etc/init.d/vboxdrv setup
sudo: /etc/init.d/vboxdrv: command not found
结果如下/etc/init.d/virtualbox status
:
virtualbox.service - LSB: VirtualBox Linux kernel module
Loaded: loaded (/etc/init.d/virtualbox; bad; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2017-08-09 23:51:09 IRDT; 12h ago
Docs: man:systemd-sysv-generator(8)
Aug 09 23:51:09 *-G31M-ES2C virtualbox[31835]: * Loading VirtualBox kern...
Aug 09 23:51:09 *-G31M-ES2C virtualbox[31835]: * No suitable module for ...
Aug 09 23:51:09 *-G31M-ES2C virtualbox[31835]: ...fail!
Aug 09 23:51:09 *-G31M-ES2C systemd[1]: virtualbox.service: Control proc...1
Aug 09 23:51:09 *-G31M-ES2C systemd[1]: Failed to start LSB: VirtualBox ....
Aug 09 23:51:09 *-G31M-ES2C systemd[1]: virtualbox.service: Unit entered....
Aug 09 23:51:09 *-G31M-ES2C systemd[1]: virtualbox.service: Failed with ....
Aug 10 00:04:22 *-G31M-ES2C systemd[1]: Stopped LSB: VirtualBox Linux ke....
Aug 10 00:08:51 *-G31M-ES2C systemd[1]: Stopped LSB: VirtualBox Linux ke....
Aug 10 00:23:30 *-G31M-ES2C systemd[1]: Stopped LSB: VirtualBox Linux ke....
Hint: Some lines were ellipsized, use -l to show in full.
我刚刚重新启动了系统,以下是结果:
$ sudo /etc/init.d/virtualbox status
● virtualbox.service - LSB: VirtualBox Linux kernel module
Loaded: loaded (/etc/init.d/virtualbox; bad; vendor preset: enabled)
Active: active (exited) since Thu 2017-08-10 12:15:37 IRDT; 4min 14s ago
Docs: man:systemd-sysv-generator(8)
Process: 1107 ExecStart=/etc/init.d/virtualbox start (code=exited, status=0/SUCCESS)
Aug 10 12:15:37 *-G31M-ES2C systemd[1]: Starting LSB: VirtualBox Linux k....
Aug 10 12:15:37 *-G31M-ES2C systemd[1]: Started LSB: VirtualBox Linux ke....
Hint: Some lines were ellipsized, use -l to show in full.
$ opt/genymotion/genymotion
Logging activities to file: /home/*/.Genymobile/genymotion.log (still empty)
Segmentation fault (core dumped)
我发现以下命令与/etc/init.d/vboxdrv setup|status
(相同参考)
/sbin/rcvboxdrv setup|status
结果如下:
VirtualBox kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) are loaded
我也尝试解决方案在 KDE 桌面上运行 genymotion 时出现问题但我收到以下错误:
Logging activities to file: /home/*/.Genymobile/genymotion.log (noting logged here)
Aborted (core dumped)
这是 *.log 文件:
Aug 11 01:40:08 [genymotion] [fatal] This application failed to start because it could not find or load the Qt platform plugin "xcb".
Reinstalling the application may fix this problem.
我还检查了 Qt 所需的库,如这里,但结果中未列出,因此所有必要的库都可用。
编辑1
我寻找该系统已systemd
转储核心,/var/lib/systemd/coredump/
因此我首先安装coredumpctl
,然后运行Genymotion
以创建核心转储。按照说明操作这里创建dump.core,结果如下:
$ coredumpctl dump 9808 --output /home/*/genymotion.core
PID: 9808(genymotion)
UID: 1000 (*)
GID: 1000 (*)
Signal: 6 (ABRT)
Timestamp: Fri 2017-08-11 12:37:29 IRDT (4min 58s ago)
Command Line: /opt/genymotion/genymotion
Executable: /opt/genymotion/genymotion
Control Group: /user.slice/user-1000.slice/session-c2.scope
Unit: session-c2.scope
Slice: user-1000.slice
Session: c2
Owner UID: 1000 (*)
Boot ID: f572250f03be48d9aa9facf22d0ffd0a
Machine ID: *******
Hostname: *-G31M-ES2C
Coredump: /var/lib/systemd/coredump/core.genymotion.1000.f572250f03be48d9aa9facf22d0ffd0a.9808.1502438849000000000000.xz
Message: Process 9808 (genymotion) of user 1000 dumped core.
Stack trace of thread 9808:
#0 0x00007f86f96c2428 __GI_raise (libc.so.6)
#1 0x00007f86f96c402a __GI_abort (libc.so.6)
#2 0x00000000004b6fb7 n/a (genymotion)
#3 0x00007f86fa74f468 n/a (libQt5Core.so.5)
#4 0x00007f86fa750f69 _ZNK14QMessageLogger5fatalEPKcz (libQt5Core.so.5)
#5 0x00007f86fac80e99 _ZN22QGuiApplicationPrivate25createPlatformIntegrationEv (libQt5Gui.so.5)
#6 0x00007f86fac80ecd _ZN22QGuiApplicationPrivate21createEventDispatcherEv (libQt5Gui.so.5)
#7 0x00007f86fa9487e6 _ZN16QCoreApplication4initEv (libQt5Core.so.5)
#8 0x00007f86fa948856 _ZN16QCoreApplicationC1ER23QCoreApplicationPrivate (libQt5Core.so.5)
#9 0x00007f86fac82cc9 _ZN15QGuiApplicationC1ER22QGuiApplicationPrivate (libQt5Gui.so.5)
#10 0x00007f86fa18ebcd _ZN12QApplicationC2ERiPPci (libQt5Widgets.so.5)
#11 0x0000000000438c53 n/a (genymotion)
#12 0x000000000042373e n/a (genymotion)
#13 0x00007f86f96ad830 __libc_start_main (libc.so.6)
#14 0x0000000000429739 n/a (genymotion)
More than one entry matches, ignoring rest.
然后按照@kenorb 所说的操作运行:
$ gdb -c genymotion.core
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
[New LWP 9808]
Core was generated by `/opt/genymotion/genymotion'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f86f96c2428 in ?? ()
(gdb) bt
#0 0x00007f86f96c2428 in ?? ()
#1 0x00007f86f96c402a in ?? ()
#2 0x0000000000000020 in ?? ()
#3 0x0000000000000000 in ?? ()
(gdb) bt full
#0 0x00007f86f96c2428 in ?? ()
No symbol table info available.
#1 0x00007f86f96c402a in ?? ()
No symbol table info available.
#2 0x0000000000000020 in ?? ()
No symbol table info available.
#3 0x0000000000000000 in ?? ()
No symbol table info available.
编辑2
我已经删除了 Genymotion 中的内置 qt,并检查了系统中可用的 qt:
$ qtchooser -list-versions
4
5
default
qt4-x86_64-linux-gnu
qt4
qt5-x86_64-linux-gnu
qt5
但仍然无法启动Genymotion。
qt-unified-linux-x64-3.0.0-online
我还通过从以下网址下载安装了 qt-5.9.1这里但是当我运行的时候它没有列出qtchooser -list-versions
。(没有可用的新版本),我应该如何强制 Genymotion 与此一起工作?
编辑3
这个解决方案对我不起作用,我决定重新安装操作系统。现在一切都正常了。但重启系统后,Genymotion 再次失败。
答案1
您的崩溃似乎与Qt 框架(libQt5Gui.so.5
)。相关诗句如下:
Stack trace of thread 9808:
#0 0x00007f86f96c2428 __GI_raise (libc.so.6)
#1 0x00007f86f96c402a __GI_abort (libc.so.6)
#2 0x00000000004b6fb7 n/a (genymotion)
#3 0x00007f86fa74f468 n/a (libQt5Core.so.5)
#4 0x00007f86fa750f69 _ZNK14QMessageLogger5fatalEPKcz (libQt5Core.so.5)
#5 0x00007f86fac80e99 _ZN22QGuiApplicationPrivate25createPlatformIntegrationEv (libQt5Gui.so.5)
#6 0x00007f86fac80ecd _ZN22QGuiApplicationPrivate21createEventDispatcherEv (libQt5Gui.so.5)
#7 0x00007f86fa9487e6 _ZN16QCoreApplication4initEv (libQt5Core.so.5)
#8 0x00007f86fa948856 _ZN16QCoreApplicationC1ER23QCoreApplicationPrivate (libQt5Core.so.5)
#9 0x00007f86fac82cc9 _ZN15QGuiApplicationC1ER22QGuiApplicationPrivate (libQt5Gui.so.5)
#10 0x00007f86fa18ebcd _ZN12QApplicationC2ERiPPci (libQt5Widgets.so.5)
搜寻_ZNK14QMessageLogger5fatalEPKcz
给出了与该库类似的一些问题。
请查看以下错误:
这表明该问题发生在 Qt 5.5.1-9 中,但不发生在 5.5.1-7(或 -8)中。因此,您可以尝试升级或降级您的 Qt。
/var/lib/sddm/.cache
另一个可以尝试的解决方法是按照此方法删除文件评论。
理想情况下,如果你能将你的 Qt 升级到最新可用版本,否则请尝试手动安装(5.9.2 或更高版本)以替换有故障的libQt5Gui.so.5
文件库,或者从源代码。