'Failed to open video device /dev/video0: Permission denied'

Forum for questions and support relating to the 1.28.x releases only.
Post Reply
swulf
Posts: 15
Joined: Tue Jun 30, 2015 4:07 am

'Failed to open video device /dev/video0: Permission denied'

Post by swulf » Fri Aug 14, 2015 2:38 pm

Hello,

I have Zoneminder V1.28.1 installed under Ubuntu Server 14.04.3 LTS. I'm testing with a single Logitech USB camera. Zoneminder runs, I can access the web interface and I've set up a monitor with the camera, but I get no video from it. The Zoneminder console displays (under the Source column) '/dev/video0 (0)' in orange.

1) lsusb shows the camera:

Bus 001 Device 004: ID 046d:08dd Logitech, Inc. QuickCam for Notebooks

2) zmu -d /dev/video0 -q -v returns something odd:

Error, failed to enumerate standard 0: Success

3) Permissions on /dev/video0:

ls -al /dev/video0
crwxrwxrwx 1 root video 81, 0 Aug 14 07:02 /dev/video0

4) cat /etc/group contains this (amongst others):

video:x:44:www-data

5) v4l-info returns info about the camera:

### v4l2 device info [/dev/video0] ###
general info
VIDIOC_QUERYCAP
driver : "gspca_zc3xx"
card : "USB Camera (046d:08dd)"
bus_info : "usb-0000:00:14.0-3"
version : 3.19.8
capabilities : 0x85200001 [VIDEO_CAPTURE,?,READWRITE,STREAMING,(null)]

standards

inputs
VIDIOC_ENUMINPUT(0)
index : 0
name : "gspca_zc3xx"
type : CAMERA
audioset : 0
tuner : 0
std : 0x0 []
status : 0x0 []

video capture
VIDIOC_ENUM_FMT(0,VIDEO_CAPTURE)
index : 0
type : VIDEO_CAPTURE
flags : 1
description : "JPEG"
pixelformat : 0x4745504a [JPEG]
VIDIOC_G_FMT(VIDEO_CAPTURE)
type : VIDEO_CAPTURE
fmt.pix.width : 640
fmt.pix.height : 472
fmt.pix.pixelformat : 0x4745504a [JPEG]
fmt.pix.field : NONE
fmt.pix.bytesperline : 640
fmt.pix.sizeimage : 113870
fmt.pix.colorspace : JPEG
fmt.pix.priv : 4276996862

6) I turned on debugging and looked at the log files. One zm_debug log shows:

08/14/15 06:00:03.429537 zmc_dvideo0[15892].FAT-zm_local_camera.cpp/673 [Failed to open video device /dev/video0: Permission denied]

I'm at a loss. =( Could anyone offer some advice on how to proceed from here?

Thanks.

PacoLM
Posts: 967
Joined: Wed Dec 02, 2009 9:55 pm
Location: Spain

Re: 'Failed to open video device /dev/video0: Permission den

Post by PacoLM » Fri Aug 14, 2015 10:34 pm

Try to run this commands as root:

adduser www-data video
usermod -a -G video www-data

Post results

Hope it helps,

PacoLM

mini-ITX system (6 IPCams - Ubuntu14.04 - ZM1.31.1)

swulf
Posts: 15
Joined: Tue Jun 30, 2015 4:07 am

Re: 'Failed to open video device /dev/video0: Permission den

Post by swulf » Sat Aug 15, 2015 6:14 am

Here is what I did.

x@y:~$ adduser www-data video
adduser: Only root may add a user or group to the system.
x@y:~$ sudo adduser www-data video
[sudo] password for x:
The user `www-data' is already a member of `video'.
x@y:~$ usermod -a -G video www-data
usermod: Permission denied.
usermod: cannot lock /etc/passwd; try again later.
x@y:~$ sudo usermod -a -G video www-data
x@y:~$

Did not make any difference, even after restarting the Zoneminder service.

PacoLM
Posts: 967
Joined: Wed Dec 02, 2009 9:55 pm
Location: Spain

Re: 'Failed to open video device /dev/video0: Permission den

Post by PacoLM » Sat Aug 15, 2015 3:38 pm

Try to run also this other command:
sudo chmod 777 /dev/video0
and
sudo a2enmod cgi
Restart Zoneminder, good luck

PacoLM

mini-ITX system (6 IPCams - Ubuntu14.04 - ZM1.31.1)

swulf
Posts: 15
Joined: Tue Jun 30, 2015 4:07 am

Re: 'Failed to open video device /dev/video0: Permission den

Post by swulf » Sat Aug 15, 2015 11:25 pm

x@y:~$ sudo chmod 777 /dev/video0
[sudo] password for x:
x@y:~$ sudo a2enmod cgi
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Enabling module cgi.
To activate the new configuration, you need to run:
service apache2 restart
x@y:~$ service apache2 restart
* Restarting web server apache2 [fail]

Not sure why this failed.

Followed this restarting Zoneminder from the Zoneminder console page. No change.

Next, I rebooted the PC on which Zoneminder runs. When it came back, I restarted Zoneminder from the console (it didn't start automatically) and this time opening the Monitor-1 link on the console page shows me a video feed!

It looks like the missing link was enabling the Apache cgi module.

Fantastic, thanks very much for your help PacoLM!

PacoLM
Posts: 967
Joined: Wed Dec 02, 2009 9:55 pm
Location: Spain

Re: 'Failed to open video device /dev/video0: Permission den

Post by PacoLM » Sun Aug 16, 2015 5:48 pm

Congratulations!

mini-ITX system (6 IPCams - Ubuntu14.04 - ZM1.31.1)

bminty
Posts: 1
Joined: Sat Sep 30, 2017 12:40 pm

Re: 'Failed to open video device /dev/video0: Permission denied'

Post by bminty » Sat Sep 30, 2017 1:03 pm

Had the same problem I just ran sudo chmod 777 /dev/video0 and restarted the camera and it worked.

mikb
Posts: 397
Joined: Mon Mar 25, 2013 12:34 pm

Re: 'Failed to open video device /dev/video0: Permission denied'

Post by mikb » Sat Sep 30, 2017 4:55 pm

Directly setting permissions on /dev/anything can work short term, and fail as soon as you replug (for a USB device) or reboot (for PCI cards etc.)

If you find this fix is only temporary, then you may need to look at udev rules, or whatever your system uses, to enforce the correct permissions.

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests