Discussion:
Bug#789327: zoneminder: Zoneminder service fails to start
federico
2015-06-19 20:19:56 UTC
Permalink
Package: zoneminder
Version: 1.28.1-5
Severity: important

Dear Maintainer,

After installing Zoneminder (version 1.28.1-5) and executing the following
lines of the README.Debian file:

cat /usr/share/zoneminder/db/zm_create.sql | sudo mysql --defaults-
file=/etc/mysql/debian.cnf

echo 'grant lock tables, alter,select,insert,update,delete on zm.* to
'zmuser'@localhost identified by "zmpass";'\
| sudo mysql --defaults-file=/etc/mysql/debian.cnf mysql

sudo systemctl enable zoneminder.service

sudo a2enconf zoneminder

sudo a2enmod cgi
sudo service apache2 reload

The zoneminder service fails to start. Output from: sudo systemctl -l status
zoneminder.service:

● zoneminder.service - ZoneMinder CCTV recording and surveillance system
Loaded: loaded (/lib/systemd/system/zoneminder.service; enabled)
Active: failed (Result: exit-code) since vie 2015-06-19 17:03:25 ART; 39s
ago
Process: 8901 ExecStart=/usr/bin/zmpkg.pl start (code=exited, status=255)
Main PID: 1531 (code=killed, signal=SEGV)

jun 19 17:03:25 vonBergen-ZM sudo[8910]: pam_unix(sudo:session): session closed
for user www-data
jun 19 17:03:25 vonBergen-ZM sudo[8912]: root : TTY=unknown ;
PWD=/usr/share/zoneminder/www ; USER=www-data ; COMMAND=/usr/bin/zmdc.pl check
jun 19 17:03:25 vonBergen-ZM sudo[8912]: pam_unix(sudo:session): session opened
for user www-data by (uid=0)
jun 19 17:03:25 vonBergen-ZM zmpkg.pl[8901]: Can't open config file
'/etc/zm/zm.conf': Permiso denegado at /usr/share/perl5/ZoneMinder/Config.pm
line 100.
jun 19 17:03:25 vonBergen-ZM zmpkg.pl[8901]: BEGIN failed--compilation aborted
at /usr/share/perl5/ZoneMinder/Config.pm line 100.
jun 19 17:03:25 vonBergen-ZM zmpkg.pl[8901]: Compilation failed in require at
/usr/share/perl5/ZoneMinder.pm line 33.
jun 19 17:03:25 vonBergen-ZM zmpkg.pl[8901]: BEGIN failed--compilation aborted
at /usr/share/perl5/ZoneMinder.pm line 33.
jun 19 17:03:25 vonBergen-ZM zmpkg.pl[8901]: Compilation failed in require at
/usr/bin/zmdc.pl line 48.
jun 19 17:03:25 vonBergen-ZM zmpkg.pl[8901]: BEGIN failed--compilation aborted
at /usr/bin/zmdc.pl line 48.
jun 19 17:03:25 vonBergen-ZM zmpkg[8901]: ERR [Unable to run "sudo -u www-data
/usr/bin/zmdc.pl check", output is ""]
jun 19 17:03:25 vonBergen-ZM systemd[1]: zoneminder.service: control process
exited, code=exited status=255
jun 19 17:03:25 vonBergen-ZM systemd[1]: Failed to start ZoneMinder CCTV
recording and surveillance system.
jun 19 17:03:25 vonBergen-ZM systemd[1]: Unit zoneminder.service entered failed
state.


I followed the error and think that the file /etc/zm/zm.conf is the culprit.
The owner for this file is root:root and I suspect it should be root:www-data.

After running:
chown root:www-data /etc/zm/zm.conf

The service started without troubles.

Regards for your time.



-- System Information:
Debian Release: stretch/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 3.16.0-4-686-pae (SMP w/2 CPU cores)
Locale: LANG=es_AR.utf8, LC_CTYPE=es_AR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages zoneminder depends on:
ii cakephp 2.6.4-1
ii init-system-helpers 1.23
ii javascript-common 11
ii libarchive-zip-perl 1.39-1
ii libav-tools 6:11.4-2
ii libavcodec56 6:11.4-2
ii libavformat56 6:11.4-2
ii libavutil54 6:11.4-2
ii libc6 2.19-18
ii libcurl3-gnutls 7.42.1-3
ii libdate-manip-perl 6.47-1
ii libdbd-mysql-perl 4.028-2+b1
ii libdevice-serialport-perl 1.04-3+b1
ii libgcc1 1:5.1.1-9
ii libgcrypt20 1.6.3-2
ii libgnutls-openssl27 3.3.15-6
ii libimage-info-perl 1.28-1
ii libjpeg62-turbo 1:1.4.0-7
ii libjs-jquery 1.7.2+dfsg-3.2
ii libjs-mootools 1.4.5~debian1-2.1
ii libjson-any-perl 1.38-1
ii libmime-lite-perl 3.030-2
ii libmime-tools-perl 5.505-1
ii libmysqlclient18 5.5.43-0+deb8u1
ii libnet-sftp-foreign-perl 1.77+dfsg-1
ii libpcre3 2:8.35-5
ii libphp-serialization-perl 0.34-1
ii libstdc++6 5.1.1-9
ii libswscale3 6:11.4-2
ii libsys-mmap-perl 0.17-1
ii liburi-encode-perl 1.0.1-1
ii libvlc5 2.2.1-2+b1
ii libwww-perl 6.08-1
ii mysql-client 5.5.43-0+deb8u1
ii mysql-client-5.5 [virtual-mysql-client] 5.5.43-0+deb8u1
ii perl 5.20.2-6
ii perl-modules [libmodule-load-conditional-perl] 5.20.2-6
ii php5-mysql 5.6.9+dfsg-1
ii policykit-1 0.105-8
ii rsyslog [system-log-daemon] 8.9.0-3
ii zip 3.0-10
ii zlib1g 1:1.2.8.dfsg-2+b1

Versions of packages zoneminder recommends:
ii apache2 [httpd] 2.4.10-11
ii libapache2-mod-php5 5.6.9+dfsg-1
ii mysql-server 5.5.43-0+deb8u1
ii mysql-server-5.5 [virtual-mysql-server] 5.5.43-0+deb8u1

Versions of packages zoneminder suggests:
pn fcgiwrap <none>
ii logrotate 3.8.7-2

-- Configuration Files:
/etc/zm/zm.conf [Errno 13] Permiso denegado: u'/etc/zm/zm.conf'

-- no debconf information
--
To UNSUBSCRIBE, email to debian-bugs-dist-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Dmitry Smirnov
2015-06-20 05:10:02 UTC
Permalink
Post by federico
Severity: important
I'm not sure how this problem could possibly qualify for severity "important".
Post by federico
I followed the error and think that the file /etc/zm/zm.conf is the culprit.
The owner for this file is root:root and I suspect it should be root:www-data.
chown root:www-data /etc/zm/zm.conf
The service started without troubles.
Thank you. I see two ways to fix this problem:

A) "chgrp www-data /etc/zm/zm.conf" from postinst.

B) Add corresponding note to setup instructions in README.Debian.

The first approach "A" is easier but the second idea "B" encourage systems
administrator to review permission and ownership of the config file.

I presume that sysadmin should always verify access of the config file after
initial setup so perhaps that's why I forgot to mention that in the setup
instructions...

Federico, what do you prefer?
--
Regards,
Dmitry Smirnov.

---

It is a mistake to try to look too far ahead. The chain of destiny can only
be grasped one link at a time.
-- Winston Churchill
federico
2015-06-20 17:21:58 UTC
Permalink
Package: zoneminder
Version: 1.28.1-5
Followup-For: Bug #789327

Dear Dmitry Smirnov,
Post by Dmitry Smirnov
I'm not sure how this problem could possibly qualify for severity
"important".

I'm new on reporting bugs, I'm sorry if it was wrongly classified.
Post by Dmitry Smirnov
A) "chgrp www-data /etc/zm/zm.conf" from postinst.
B) Add corresponding note to setup instructions in README.Debian.
The first approach "A" is easier but the second idea "B" encourage systems
administrator to review permission and ownership of the config file.
I presume that sysadmin should always verify access of the config file after
initial setup so perhaps that's why I forgot to mention that in the setup
instructions...
As I have written previously I'm new on analyzing bugs. Actually this is my
first bug report in which I have track a solution, so take my response as the
one from a newbie.

I understand your concern but I think that the permission should be on the
postinst. Taking into account that this is a precompiled package the user
should not be handling permissions from files he doesn't know what they do. The
python scripts installed in the system also try to open a file with those
permissions, so they expect that file with that owner group.

I also encourage to put a note somewhere in the installatin to refer the user
to read the README.Debian file to make it easier to configure it for the first
time. I think this will make it easier for newer ZoneMinder users to use this
package.


Thank you for your time.



-- System Information:
Debian Release: stretch/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 3.16.0-4-686-pae (SMP w/2 CPU cores)
Locale: LANG=es_AR.utf8, LC_CTYPE=es_AR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages zoneminder depends on:
ii cakephp 2.6.4-1
ii init-system-helpers 1.23
ii javascript-common 11
ii libarchive-zip-perl 1.39-1
ii libav-tools 6:11.4-2
ii libavcodec56 6:11.4-2
ii libavformat56 6:11.4-2
ii libavutil54 6:11.4-2
ii libc6 2.19-18
ii libcurl3-gnutls 7.42.1-3
ii libdate-manip-perl 6.47-1
ii libdbd-mysql-perl 4.028-2+b1
ii libdevice-serialport-perl 1.04-3+b1
ii libgcc1 1:5.1.1-9
ii libgcrypt20 1.6.3-2
ii libgnutls-openssl27 3.3.15-6
ii libimage-info-perl 1.28-1
ii libjpeg62-turbo 1:1.4.0-7
ii libjs-jquery 1.7.2+dfsg-3.2
ii libjs-mootools 1.4.5~debian1-2.1
ii libjson-any-perl 1.38-1
ii libmime-lite-perl 3.030-2
ii libmime-tools-perl 5.505-1
ii libmysqlclient18 5.5.43-0+deb8u1
ii libnet-sftp-foreign-perl 1.77+dfsg-1
ii libpcre3 2:8.35-5
ii libphp-serialization-perl 0.34-1
ii libstdc++6 5.1.1-9
ii libswscale3 6:11.4-2
ii libsys-mmap-perl 0.17-1
ii liburi-encode-perl 1.0.1-1
ii libvlc5 2.2.1-2+b1
ii libwww-perl 6.08-1
ii mysql-client 5.5.43-0+deb8u1
ii mysql-client-5.5 [virtual-mysql-client] 5.5.43-0+deb8u1
ii perl 5.20.2-6
ii perl-modules [libmodule-load-conditional-perl] 5.20.2-6
ii php5-mysql 5.6.9+dfsg-1
ii policykit-1 0.105-8
ii rsyslog [system-log-daemon] 8.9.0-3
ii zip 3.0-10
ii zlib1g 1:1.2.8.dfsg-2+b1

Versions of packages zoneminder recommends:
ii apache2 [httpd] 2.4.10-11
ii libapache2-mod-php5 5.6.9+dfsg-1
ii mysql-server 5.5.43-0+deb8u1
ii mysql-server-5.5 [virtual-mysql-server] 5.5.43-0+deb8u1

Versions of packages zoneminder suggests:
pn fcgiwrap <none>
ii logrotate 3.8.7-2

-- Configuration Files:
/etc/zm/zm.conf [Errno 13] Permiso denegado: u'/etc/zm/zm.conf'

-- no debconf information
--
To UNSUBSCRIBE, email to debian-bugs-dist-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Loading...