You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04系统内置摄像头无法工作求助

Ubuntu 22.04系统内置摄像头无法工作求助

看起来你的内置摄像头在Ubuntu 22.04上遇到了识别问题,我帮你梳理下排查方向和可能的解决办法,咱们一步步来:

先把你提供的命令输出整理出来,方便后续参考:

iamjedi322@iamjedi322-Inspiron-5748:/$ uname -a
Linux iamjedi322-Inspiron-5748 6.5.0-28-generic #29~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Apr  4 14:39:20 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
iamjedi322@iamjedi322-Inspiron-5748:/$ locate video0
/dev/video0
iamjedi322@iamjedi322-Inspiron-5748:/$ ls -l /dev/video0
ls: cannot access '/dev/video0': No such file or directory
iamjedi322@iamjedi322-Inspiron-5748:~$ v4l2-ctl --list-devices
Synaptics RMI4 Touch Sensor (rmi4:rmi4-00.fn54):
    /dev/v4l-touch0

Cannot open device /dev/video0, exiting.

问题分析

从输出能看出几个关键点:

  • locate查到了/dev/video0的记录,但实际文件不存在,说明系统索引数据库里有旧记录,但当前内核并没有正确加载摄像头设备。
  • v4l2-ctl只识别出了触摸传感器,完全没找到摄像头设备,大概率是摄像头驱动未加载,或者硬件没被内核识别。

具体排查步骤

  1. 确认硬件是否被系统检测到
    打开终端运行以下两个命令,检查系统是否能识别到摄像头硬件:

    lspci | grep -i camera
    lsusb | grep -i camera
    
    • 如果两个命令都无输出,可能是硬件本身故障(比如摄像头排线松动),或者BIOS中禁用了摄像头,先去BIOS界面检查摄像头的开关状态。
    • 如果有输出,说明硬件能被检测到,继续排查驱动问题。
  2. 检查摄像头驱动模块
    大部分USB内置摄像头依赖uvcvideo驱动模块,先查看该模块是否已加载:

    lsmod | grep uvcvideo
    
    • 如果无输出,说明模块未加载,尝试手动加载:
      sudo modprobe uvcvideo
      
      加载完成后再运行ls -l /dev/video*,查看是否出现video0video1这类设备。
  3. 检查用户访问权限
    即使设备被正确加载,当前用户可能没有访问摄像头的权限,将自己加入video用户组:

    sudo usermod -aG video $USER
    

    执行后注销当前用户,重新登录再测试摄像头。

  4. 查看系统日志找错误线索
    运行以下命令,查看内核加载摄像头时的报错信息:

    dmesg | grep -i video
    dmesg | grep -i camera
    

    日志中的错误提示(比如驱动加载失败、设备初始化错误)能帮助定位具体问题。

  5. 尝试调整内核版本
    你当前使用的是6.5.0-28的HWE内核,可能对部分老型号摄像头兼容性不佳。可以尝试降级到Ubuntu 22.04默认的5.15系列内核,或者更新到最新的6.5系列内核,测试兼容性问题是否解决。

备注:内容来源于stack exchange,提问作者calmshell

火山引擎 最新活动