Browser können meine Webcam nicht erkennen, aber in Cheese funktioniert sie

Browser können meine Webcam nicht erkennen, aber in Cheese funktioniert sie

Plötzlich funktionierte meine Webcam in meinen Browsern nicht mehr, obwohl sie funktionierte, wenn ich die cheeseAnwendung im Terminal ausführe. Ich teste es mitDiese Internetseite(und viele andere) in Google Chrome (Inkognito-Modus und Firefox) und ich erhalte diese Fehlermeldung:

NotFoundError: Angefordertes Gerät nicht gefunden; Objekt

lsusbgibt:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0bda:57f2 Realtek Semiconductor Corp. HD WebCam
Bus 001 Device 003: ID 04ca:3015 Lite-On Technology Corp. Qualcomm Atheros QCA9377 Bluetooth
Bus 001 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Wenn ich eine externe Webcam verwende, wird diese immer noch nicht erkannt. Ich habe versucht, Chrome neu zu installieren, den Benutzer zu ändern und meinen Computer neu zu starten, aber es funktioniert immer noch nicht. Das Mikrofon wird stattdessen korrekt erkannt.

Meine Systeminformationen:

Distributor ID: Ubuntu
Description:    Ubuntu 21.10
Release:        21.10
Codename:       impish
Kernel:         5.13.0-23-generic

ls -l /dev/video*druckt

crw-rw----+ 1 root video 81, 0 gen  6 18:06 /dev/video0
crw-rw----+ 1 root video 81, 1 gen  6 18:06 /dev/video1

groups $USERdruckt

alex : alex adm cdrom sudo dip video plugdev lpadmin lxd sambashare

bash ./pathlld /dev/video*druckt

drwxr-xr-x 21 root root 4096 gen  6 12:46 /
/dev/sdb2 on / type ext4 (rw,relatime,errors=remount-ro)
drwxr-xr-x 22 root root 4960 gen  6 19:14 /dev
udev on /dev type devtmpfs (rw,nosuid,relatime,size=6036388k,nr_inodes=1509097,mode=755,inode64)
crw-rw----+ 1 root video 81, 0 gen  6 19:12 /dev/video0
drwxr-xr-x 21 root root 4096 gen  6 12:46 /
/dev/sdb2 on / type ext4 (rw,relatime,errors=remount-ro)
drwxr-xr-x 22 root root 4960 gen  6 19:14 /dev
udev on /dev type devtmpfs (rw,nosuid,relatime,size=6036388k,nr_inodes=1509097,mode=755,inode64)
crw-rw----+ 1 root video 81, 1 gen  6 19:12 /dev/video1

getfacl /dev/video*druckt

getfacl: Removing leading '/' from absolute path names
# file: dev/video0
# owner: root
# group: video
user::rw-
user:alex:rw-
group::rw-
mask::rw-
other::---

# file: dev/video1
# owner: root
# group: video
user::rw-
user:alex:rw-
group::rw-
mask::rw-
other::---

Antwort1

Viele Gerätezugriffsprobleme können durch Änderungen der Gruppenmitgliedschaft gelöst werden.

Sie können den Gerätenamen herausfinden, indem sudo journalctl --followSie beim Verbinden Ihres Geräts zuschauen. ODER ls -1 /dev >dev.before, verbinden Sie das Gerät, warten Sie 10 Sekunden, ls -1 /dev >dev.after;diff dev.{before,after}. Ihre Kamera ist wahrscheinlich /dev/video.

Insbesondere wenn ls -l angezeigt wird, dass die Gruppenberechtigungen (das zweite " rwx"-Triplett) " rw" lauten (z. B. " -rw-rw----"), dann wird der Zugriff gewährt, wenn man sich selbst zu der Gruppe hinzufügt, der das Gerät gehört rw.

Hier ist wie:

device="/dev/whatever"
sudo adduser $USER $(stat -c "%G" $device)

Damit können Sie Mitglied der Gruppe werden, die rwdas Gerät verwenden kann.aber es gibt noch einen weiteren Schritt.

Um alle Ihre Prozesse zu Mitgliedern der neuen Gruppe zu machen, melden Sie sich ab und wieder an. Gruppenmitgliedschaften werden bei der Einrichtung festgelegt login.

So erstellen Sie einen einzelnen Prozess in der neuen Gruppe (zum Testen, vor dem Abmelden/Anmelden):

newgrp $(stat -c "%G" $device)  

oder geben Sie einfach den Gruppennamen ein. Siehe man newgrp.

verwandte Informationen