Need help configuring preservation of /dev/vidoe sys files across reboots

My webcam has worked in the past, I’ve fiddled with configurations, I don’t believe the hardware is at fault. I have had it working at times. I use cheese and other programs like that to check on its functioning. I have duckduckgo’d for information on what is wrong. I found that it is probably udev rules that are not properly set. I am not familiar with udev enough to know what I am doing. If that is my only recourse of action to remedy this problem, would someone please say so? I have been very busy lately, and just haven’t had the time to invest in learning more about udev. This is not a huge priority in my life, just a nuisance I would like to solve, to clear up. Thanks so much for listening. Awesome work, people!

Hi Snookers,

Welcome to our forums.

Please review the general guidelines on how to ask for help, and provide us some information about your setup.
You said the webcam worked in the past, so maybe the best approach would be following back the road of modifications until we find the working configuration. Can you share what and where did you modify? Also distribution information, as well as hardware could be useful.
If there are some error logs/messages, those could too provide us some additional information to help you.

Forgive me for my brevity and forgetfulness.

I am using an Intel i3 based laptop running Debian Jesse. I don’t really know the manufacturer of the built-in webcam. However, as I stated, the thing has worked in the past. I have had similar problems before, and was able to reconstruct my solutions. At the present time, it escapes me what I did before. I looked at the USB bus with lspci and it looks okay. I did come across some posts that suggested I needed to revise the udev rules for the device, but that is a mountain I haven’t climbed yet, and not sure I want to. I can live without the webcam functionality, but it would be a nice convenience if it were working. Thanks so much for any assistance or direction you could point out for me.

Hi Snookers,

Let’s start the investigation with the facts we have. When do you recall the webcam working? What happened after that? Regular updates on the OS, and after one of these it stopped functioning? Some sort of driver installation maybe? Configuration change? Repository changes before the last OS updates? Any of these can have impact on the issue.

Furthermore, let’s get some information on that device. If you don’t have it already, you can install v4l2-ctl by executing:

sudo apt-get install v4l-utils

When you have the utility, you can query for video devices. In my case, the output shows my integrated camera on my laptop:

$ v4l2-ctl --list-devices
Lenovo EasyCamera: Lenovo EasyC (usb-0000:00:14.0-6):

Do you get some meaningful output?

thank you sandmann for responding. This is what happens :

root@whirlpool:/home/stephen# /usr/bin/v4l2-ctl --list-devices
Failed to open /dev/video0: No such file or directory

I can create these /dev files, but they disappear when I reboot. Methinks

I have some missing configuration or misconfiguration. Any suggestions?

As to the history of my problem, I’m afraid I don’t recall the details, as this

has been an intermittant problem I have faced from time to time over several

years and I am too scatterbrained to remember exactly what I did to fix this

problem. Perhaps if I kept a record … like had a computer or something …


Hi Snookers,

So the OS doesn’t see the device. I’d suggest check dmesg for any error messages on boot.
On the topic of what happened in the past, maybe your bash history could give some clues?

This is what dmesg tells me :

root@whirlpool:~# dmesg -e | grep -i error
[ +0.003951] ACPI Error: No handler for Region [EC__] (ffff978edb1ba990) [EmbeddedControl] (20160831/evregion-166)
[ +0.000134] ACPI Error: Region EmbeddedControl (ID=3) has no handler (20160831/exfldio-299)
[ +0.000128] ACPI Error: Method parse/execution failed [_SB.PCI0.LPCB.EC._REG] (Node ffff978edb1bb640), AE_NOT_EXIST (20160831/psparse-543)
[ +0.000790] ACPI Error: [DSSP] Namespace lookup failure, AE_NOT_FOUND (20160831/psargs-359)
[ +0.000224] ACPI Error: Method parse/execution failed [_SB.PCI0.SAT0.SPT4._GTF] (Node ffff978edb1f2ca8), AE_NOT_FOUND (20160831/psparse-543)
[ +0.000986] ACPI Error: [DSSP] Namespace lookup failure, AE_NOT_FOUND (20160831/psargs-359)
[ +0.000226] ACPI Error: Method parse/execution failed [_SB.PCI0.SAT0.SPT4._GTF] (Node ffff978edb1f2ca8), AE_NOT_FOUND (20160831/psparse-543)
[ +0.391970] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[ +5.424678] usb 3-2: device descriptor read/64, error -110
[Jun 5 23:45] [drm:intel_pipe_update_end [i915]] ERROR Atomic update failure on pipe A (start=6840047 end=6840048) time 202 us, min 763, max 767, scanline start 760, end 766
[Jun 6 02:43] [drm:intel_pipe_update_end [i915]] ERROR Atomic update failure on pipe A (start=7479639 end=7479640) time 197 us, min 763, max 767, scanline start 760, end 769
[Jun 6 17:41] [drm:intel_pipe_update_end [i915]] ERROR Atomic update failure on pipe A (start=10713243 end=10713244) time 283 us, min 763, max 767, scanline start 761, end 769
[Jun 6 23:05] [drm:intel_pipe_update_end [i915]] ERROR Atomic update failure on pipe A (start=11878784 end=11878785) time 340 us, min 763, max 767, scanline start 761, end 773

gracias, spasibo, for all the support,


That does not tell much, but we may relate it with the devices present but unknown. What is the output of

# lsusb

On your system?

stephen@whirlpool:~$ lsusb
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 8087:07da Intel Corp.
Bus 003 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 003: ID 0bda:0138 Realtek Semiconductor Corp. RTS5138 Card Reader Controller
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

My laptop is not seeing the WebCam device. The problem I believe, is that the

/dev/video* files are not being created upon boot. Somewhere I read that I needed

to fix up some udev rules, but I know nothing about suchthings. I think I am missing some configuration

information somewhere. When I run a simple application like cheese and ask it to scan for

devices, it says there are none applicable. That is what led me to discover the missing

/dev/video* files. I think in the past I successfully created them manually and that fixed

things up, but I don’t recall now how to do that.

Does the following help?

stephen@whirlpool:~$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d5)
00:1c.5 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #6 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM86 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
03:00.0 Ethernet controller: Qualcomm Atheros AR8161 Gigabit Ethernet (rev 10)
04:00.0 Network controller: Intel Corporation Centrino Advanced-N 6235 (rev 24)

I think all that says is there are USB devices available, not which ones…

When I launch cheese there are no system logs affected other than Xorg.0.log

which just says that an Xwindows application was communicating with Xorg driver.

I found this script to create the /dev/video* files :

function makedev () {
for dev in 0 1 2 3; do
echo “/dev/$1$dev: char 81 $[ $2 + $dev ]”
rm -f /dev/$1$dev
mknod /dev/$1$dev c 81 $[ $2 + $dev ]
chmod 666 /dev/$1$dev

    # symlink for default device
    rm -f /dev/$1
    ln -s /dev/${1}0 /dev/$1

makedev video 0
makedev radio 64
makedev vtx 192
makedev vbi 224

makedev bttv 0 #makedev bttv-fm 64 #makedev bttv-vbi 224

and it does create the dev video files alright, but that makes no difference to cheese.
So I’m thinking this is a blind alley, not the real problem, OR that these files need to
be created and then initialized somehow in the boot process. OF which, this process
isn’t taking place. Any thoughts ?

I say let’s gather some more info.

What modules do you have loaded into the kernel?

# lsmod

Should list all loaded modules. Also, do you recall tweaking with kernel modules maybe? This could be a “simple” driver issue, which would justify not seeing the device at all (as a camera, that is).

Darn! I should have thought of lsmod. Attached, sorted, and listed below, unsorted, is the output from a non-priveleged account, and there was no differences between what they report.

I have not messed around with kernel modules since ancient days, around the year 1999 or 2000, and

of that, I was working with login stuff via ppp connections.

I am running Debian Jessie

stephen@whirlpool:~$ uname -a
Linux whirlpool 4.9.0-9-amd64 #1 SMP Debian 4.9.168-1+deb9u2 (2019-05-13) x86_64 GNU/Linux

Can’t think of what else to show you atm.


Module Size Used by
videodev 180224 0
media 40960 1 videodev
xt_tcpudp 16384 3
ip6table_filter 16384 1
ip6_tables 28672 1 ip6table_filter
iptable_filter 16384 1
rfcomm 77824 2
xt_nat 16384 1
iptable_nat 16384 1
nf_conntrack_ipv4 16384 1
nf_defrag_ipv4 16384 1 nf_conntrack_ipv4
nf_nat_ipv4 16384 1 iptable_nat
nf_nat 24576 2 xt_nat,nf_nat_ipv4
nf_conntrack 114688 3 nf_conntrack_ipv4,nf_nat_ipv4,nf_nat
tun 28672 2
cmac 16384 1
bnep 20480 2
intel_rapl 20480 0
x86_pkg_temp_thermal 16384 0
intel_powerclamp 16384 0
coretemp 16384 0
snd_hda_codec_hdmi 49152 1
kvm_intel 200704 0
kvm 598016 1 kvm_intel
snd_hda_codec_realtek 90112 1
snd_hda_codec_generic 69632 1 snd_hda_codec_realtek
i915 1257472 7
msi_wmi 16384 0
snd_hda_intel 36864 10
snd_hda_codec 135168 4 snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_soc_rt5640 118784 0
snd_soc_rl6231 16384 1 snd_soc_rt5640
snd_soc_core 212992 1 snd_soc_rt5640
irqbypass 16384 1 kvm
arc4 16384 2
iTCO_wdt 16384 0
sparse_keymap 16384 1 msi_wmi
btusb 45056 0
iTCO_vendor_support 16384 1 iTCO_wdt
btrtl 16384 1 btusb
btbcm 16384 1 btusb
crct10dif_pclmul 16384 0
btintel 16384 1 btusb
snd_hda_core 90112 5 snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
crc32_pclmul 16384 0
snd_hwdep 16384 1 snd_hda_codec
snd_compress 20480 1 snd_soc_core
bluetooth 552960 31 btrtl,btintel,bnep,btbcm,rfcomm,btusb
snd_pcm 110592 9 snd_hda_intel,snd_hda_codec,snd_hda_core,snd_soc_rt5640,snd_hda_codec_hdmi,snd_soc_core
ghash_clmulni_intel 16384 0
snd_timer 32768 1 snd_pcm

snd_timer 32768 1 snd_pcm
snd 86016 27 snd_compress,snd_hda_intel,snd_hwdep,snd_hda_codec,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek,snd_soc_core,snd_pcm
iwldvm 139264 0
drm_kms_helper 155648 1 i915
soundcore 16384 1 snd
evdev 24576 15
mac80211 671744 1 iwldvm
iwlwifi 151552 1 iwldvm
intel_cstate 16384 0
intel_uncore 118784 0
intel_rapl_perf 16384 0
cfg80211 589824 3 iwlwifi,mac80211,iwldvm
drm 360448 6 i915,drm_kms_helper
joydev 20480 0
sg 32768 0
serio_raw 16384 0
pcspkr 16384 0
rfkill 24576 5 bluetooth,cfg80211
wmi 16384 1 msi_wmi
ac 16384 0
mei_me 36864 0
mei 102400 1 mei_me
video 40960 2 msi_wmi,i915
button 16384 1 i915
battery 20480 0
lpc_ich 24576 0
mfd_core 16384 1 lpc_ich
shpchp 36864 0
ie31200_edac 16384 0
i2c_algo_bit 16384 1 i915
edac_core 57344 1 ie31200_edac
parport_pc 28672 0
ppdev 20480 0

lp 20480 0
parport 49152 3 lp,parport_pc,ppdev
ip_tables 24576 2 iptable_filter,iptable_nat
x_tables 36864 6 xt_nat,ip_tables,iptable_filter,xt_tcpudp,ip6table_filter,ip6_tables
autofs4 40960 2
ext4 589824 4
crc16 16384 2 bluetooth,ext4
jbd2 106496 1 ext4
crc32c_generic 16384 0
fscrypto 28672 1 ext4
ecb 16384 0
glue_helper 16384 0
lrw 16384 0
gf128mul 16384 1 lrw
ablk_helper 16384 0
cryptd 24576 2 ablk_helper,ghash_clmulni_intel
aes_x86_64 20480 2
mbcache 16384 5 ext4
hid_logitech_hidpp 28672 0
hid_logitech_dj 20480 0
usbhid 53248 0
hid 122880 4 usbhid,hid_logitech_dj,hid_logitech_hidpp
ums_realtek 20480 0
uas 24576 0
usb_storage 73728 2 uas,ums_realtek
sr_mod 24576 0
cdrom 61440 1 sr_mod
sd_mod 49152 6
crc32c_intel 24576 8
ahci 40960 5
libahci 32768 1 ahci
libata 249856 2 ahci,libahci
psmouse 135168 0
scsi_mod 225280 6 sd_mod,usb_storage,libata,uas,sr_mod,sg
xhci_pci 16384 0
i2c_i801 24576 0
ehci_pci 16384 0
i2c_smbus 16384 1 i2c_i801
xhci_hcd 188416 1 xhci_pci
ehci_hcd 81920 1 ehci_pci
alx 45056 0
mdio 16384 1 alx
usbcore 253952 12 usbhid,usb_storage,ehci_hcd,xhci_pci,btusb,uas,ums_realtek,xhci_hcd,ehci_pci
usb_common 16384 1 usbcore
thermal 20480 0

(Attachment sort-list-modules is missing)

sandmann, OOPS,apparently these forums won’t let you post an article via email sending a txt filetype as an attachement. Unbelievable that that combination of email attachments would be missed. They only

allow jpg, gif, that kind of image file.

Yes, e-mail replies does have some shortcomings, you are better off pasting outputs trough a browser. So your kernel is pretty up-to-date (which is generally a good thing), and updates may change drivers (or pretty much anything).

It seems that there is the driver needed, and there is the associaton (used by):

A maybe trivial question: is your camera enabled? On some laptops there is a “camera” button, and with it you can effectively “disconnect” your integrated camera, so it disappears from the site of the OS. This may persist on reboot, and may be toggled by a system crash or by mistake.

Other than that, what vendor & brand is your computer? That may help identify hardware parts.

OMG SANDMANN. COLOR me the most intense disgusting color combination you can imagine! There

is indeed a function switch keyboard key for enabling/disabling the damn webcam. AND you know what?

I have found that out before too!!! Just to show you the holes that are in my memory and the leaks I have.

As my need for a webcam comes and goes, so does the knowledge of how to use the cursed thing. If ONLY

there was some kind of hardware configuration to enable/disable the function switch, and enable/disable the

cam separately, then I would be happy and I would never never never see this again.

I must owe you about a hundred brewskis. :slight_smile:

Thanks again for sticking with me 'til now.

your forgetful wanna-be-hacker fiend,


Hi Snookers,

I’m happy the issue is solved. And you don’t have to tell the tale of corrupted memory to me, I can hardly tell what stuff I’ve been gone trough last week, or what was the solution to the problem I solved on Monday, for that matter. Too much information of our always-running world, I guess…