以下为参考搭建 Cuttlefish 运行环境启动Cuttlefish模拟器遇到的一些问题。
1./usr/lib/cuttlefish-common/bin下缺少文件
Launching CVD using --config='phone'.
sh: 1: /usr/lib/cuttlefish-common/bin/capability_query.py: not found
VM manager crosvm is not supported on this machine.
Invalid vm_manager: crosvm
05-18 17:19:04.235 33644 33644 E launch_cvd: subprocess.cpp:219 Subprocess 33665 was interrupted by a signal 'Aborted' (6)
05-18 17:19:04.235 33644 33644 E launch_cvd: [main.cc:461](http://main.cc:461/) assemble_cvd returned -1
把android-cuttlefish/base/host/deploy下的capability_query.py ,unpack_boot_image.py放到/usr/lib/cuttlefish-common/bin/下
$ubuntu-server:~$ ls /usr/lib/cuttlefish-common/bin/
capability_query.py unpack_boot_image.py
2.ubuntu设备中,在使用VirtualBox(windows虚拟机)的情况下,启动android 模拟器会导致Device or resource busy (os error 16)。
Registered device: 'cvd-1'
[2024-05-18T09:21:45.205043618+00:00 ERROR crosvm] exiting with error 1: failed to create vm
Caused by:
Device or resource busy (os error 16)
Detected unexpected exit of monitored subprocess /F/android/out/host/linux-x86/bin/process_restarter
Subprocess /F/android/out/host/linux-x86/bin/process_restarter (33994) has exited with exit code 1
[2024-05-18T09:21:45.225041150+00:00 ERROR crosvm] exiting with error 1: failed to create vm
Caused by:
Device or resource busy (os error 16)
Detected unexpected exit of monitored subprocess /F/android/out/host/linux-x86/bin/process_restarter
Subprocess /F/android/out/host/linux-x86/bin/process_restarter (34023) has exited with exit code 1
Stopping all monitored processes due to unexpected exit of critical process
05-18 17:21:45.239 34322 34323 I stop_cvd: main.cc:124 Requesting stop
Received command to stop recording in main.cpp.
Unregistered device: 'cvd-1'
Detected unexpected exit of monitored subprocess /F/android/out/host/linux-x86/bin/webRTC
[2024/05/18 17:21:45:2658] N: lws_gate_accepts: on = 0
[2024/05/18 17:21:45:2658] N: localhost: __lws_lc_untag: -- [wsisrv|0|adopted] (0) 112.282ms
Subprocess /F/android/out/host/linux-x86/bin/webRTC (33998) was interrupted by a signal 'Killed' (9)
Exit request from parent process
先关闭windows虚拟机。
3.缺少cvdnetwork组
user@user:/F/cf$ sudo usermod -aG kvm,cvdnetwork,render $USER
[sudo] user 的密码:
usermod:“cvdnetwork”组不存在
user@user:/F/cf$ sudo addgroup cvdnetwork
正在添加组"cvdnetwork" (GID 1004)...
完成。
user@user:/F/cf$ sudo usermod -aG kvm,cvdnetwork,render $USER
4.缺少权限
Registered device: 'cvd-1'
[2024-05-18T07:42:48.775461408+00:00 INFO crosvm::crosvm::sys::linux::device_helpers] Trying to attach block device: /home/user/cuttlefish/instances/cvd-1/ap_overlay.img
[2024-05-18T07:42:48.775837323+00:00 INFO crosvm::crosvm::sys::linux::device_helpers] Trying to attach block device: /home/user/cuttlefish/instances/cvd-1/overlay.img
[2024-05-18T07:42:48.837210677+00:00 ERROR crosvm] exiting with error 1: failed to set up virtual socket device
Caused by:
0: failed to open virtual socket device /dev/vhost-vsock
1: Permission denied (os error 13)
Detected unexpected exit of monitored subprocess /F/android/out/host/linux-x86/bin/process_restarter
Subprocess /F/android/out/host/linux-x86/bin/process_restarter (18647) has exited with exit code 1
Stopping all monitored processes due to unexpected exit of critical process
05-18 15:42:48.850 18988 18990 I stop_cvd: [main.cc:124](http://main.cc:124/) Requesting stop
[2024-05-18T07:42:48.850328648+00:00 INFO devices::sys::linux::acpi] Listening on acpi_mc_group of acpi_event family
Received command to stop recording in main.cpp.
Unregistered device: 'cvd-1'
Detected unexpected exit of monitored subprocess /F/android/out/host/linux-x86/bin/webRTC
关键是/dev/vhost-vsock没有权限
0: failed to open virtual socket device /dev/vhost-vsock
1: Permission denied (os error 13)
修改/dev/vhost-vsock的权限。确保有读写权限
user@user:~$ ls -l /dev/vhost-vsock
crw-rw-rw- 1 root root 10, xxx /dev/vhost-vsock
5.打开的文件句柄超出了限制
starting Rust KeyMint TA implementation in a thread
starting C++ KeyMint implementation in a thread with FDs in=30, out=29
KeyMint Rust TA running with infile=36, outfile=35, security_level=Software
Secure deletion data file found. Parsing.
Metrics posted to ClearCut
GUEST_KERNEL_VERSION: 6.1.75-android14-11-g60534eef4739-ab11672365 (build-user@build-host) (Android (10087095, +pgo, +bolt, +lto, -mlgo, based on r487747c) clang version 17.0.2 (https://android.googlesource.com/toolchain/llvm-project d9f89f4d16663d5012e5c09495f3b30ece3d2362), LLD 17.0.2) #1 SMP PREEMPT Thu Apr 4 15:35:58 UTC 2024
] Linux version
Failed to connect:No such device
Metrics host received: VMStop
Failed to connect:Connection reset by peer
Metrics posted to ClearCut
Failed to connect:Connection reset by peer
Metrics host received: VMStart
Failed to connect:Connection reset by peer
Metrics posted to ClearCut
Failed to connect:Connection reset by peer
[2024-05-18T07:49:50.873822564+00:00 ERROR crosvm::sys::linux::panic_hook] failed to capture stderr during panic: Too many open files (os error 24)
Client closed the connection
Client closed the connection
Client closed the connection
Detected unexpected exit of monitored subprocess /F/cf/bin/process_restarter
Subprocess /F/cf/bin/process_restarter (21995) has exited with exit code 1
Stopping all monitored processes due to unexpected exit of critical process
05-18 15:49:51.466 22571 22572 I stop_cvd: [main.cc:124](http://main.cc:124/) Requesting stop
Received command to stop recording in main.cpp.
Detected unexpected exit of monitored subprocess /F/cf/bin/webRTC
Unregistered device: 'cvd-1'
Subprocess /F/cf/bin/webRTC (21970) was interrupted by a signal 'Killed' (9)
[2024-05-18T07:49:51.511192352+00:00 INFO crosvm] exiting with success
[2024-05-18T07:49:51.511133046+00:00 INFO crosvm::crosvm::sys::linux] control socket changed run mode to exiting
[2024-05-18T07:49:54.121454598+00:00 INFO crosvm] exiting with success
Exit request from parent process
• 这表明系统中打开的文件句柄超出了限制。你可以通过增加文件描述符的限制来解决这个问题。
以下是具体的检查步骤:
- 检查文件描述符限制:
ulimit -a
2.增加文件描述符限制:
ulimit -n 4096
这是临时的做法。
网友评论