美文网首页
启动Cuttlefish模拟器遇到的问题

启动Cuttlefish模拟器遇到的问题

作者: 梧叶已秋声 | 来源:发表于2024-05-17 17:29 被阅读0次

    以下为参考搭建 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
    

    • 这表明系统中打开的文件句柄超出了限制。你可以通过增加文件描述符的限制来解决这个问题。

    以下是具体的检查步骤:

    1. 检查文件描述符限制:
    ulimit -a
    

    2.增加文件描述符限制:

    ulimit -n 4096
    

    这是临时的做法。

    相关文章

      网友评论

          本文标题:启动Cuttlefish模拟器遇到的问题

          本文链接:https://www.haomeiwen.com/subject/hyxwfjtx.html