Hi - I am trying to install/upgrade and start ZoneMinder v1.36.32 on my OpenSuSE 15.4 x64 system and am running into a bit of trouble that I don't know how to fix. I don't know whether it is an error caused by something I did or a mis-configuration, or something that the OpenSuSE community repos where I got my ZoneMinder package from didn't address. Google has simply not been helpful either, to find a resolution. So I am in need of a warm hearted guru to help get me out of these woods.
Below is what I captured, (sorry it is a bit excessive) from the messages log file, that pertains to what the zm daemon reports when I tried to start the ZoneMinder service. Seems to be something to do with the environment variable ZM_PATH_SOCKS which is reported as being uninitialized and I suspect is causing a cascade of errors. I made a few attempts to try and fix this but not joy, so my guesses didn't work either. I did run the utility zmupdate.pl again, no joy.
Much appreciate, and thanks in advance for any ideas, help, offered! Marc
>> nova:/var/log # cat messages | grep zm
> 2022-12-21T12:31:46.429124-08:00 nova zm_database_init[9448]: INFO: when db is correctly installed and you just reinstalled rpm, then answer all questions with 'n'
> 2022-12-21T12:31:46.429209-08:00 nova zm_database_init[9448]: no lockfile found, proceed anyway? [y/N]: N
> 2022-12-21T12:31:46.504126-08:00 nova zmpkg[9449]: INF [Sanity checking States table...]
> 2022-12-21T12:31:46.504428-08:00 nova zmpkg[9449]: INF [Command: start]
> 2022-12-21T12:31:46.761423-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl check
> 2022-12-21T12:31:46.838058-08:00 nova zmpkg.pl[9466]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:46.854241-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl startup
> 2022-12-21T12:31:46.929005-08:00 nova zmpkg.pl[9471]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:46.933837-08:00 nova zmpkg.pl[9471]: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.26.1/ZoneMinder/Logger.pm line 188.
> 2022-12-21T12:31:46.933910-08:00 nova zmpkg.pl[9471]: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.26.1/ZoneMinder/Logger.pm line 235.
> 2022-12-21T12:31:46.936790-08:00 nova zmdc[9473]: INF [Server starting at 22/12/21 12:31:46]
> 2022-12-21T12:31:47.988288-08:00 nova zmdc[9473]: INF [Socket should be open at /zmdc.sock]
> 2022-12-21T12:31:47.988388-08:00 nova zmdc[9473]: FAT [Can't bind to /zmdc.sock: Permission denied]
> 2022-12-21T12:31:54.939828-08:00 nova zmdc[9471]: FAT [Can't connect to zmdc.pl server process at /zmdc.sock: No such file or directory]
> 2022-12-21T12:31:54.944086-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl startup", output is "Starting server", status is 255]
> 2022-12-21T12:31:54.944130-08:00 nova zmpkg[9449]: INF [Single server configuration detected. Starting up services.]
> 2022-12-21T12:31:54.950591-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 1
> 2022-12-21T12:31:55.025189-08:00 nova zmpkg.pl[9501]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.033505-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 1", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.039530-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 2
> 2022-12-21T12:31:55.114195-08:00 nova zmpkg.pl[9505]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.122684-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 2", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.128526-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 3
> 2022-12-21T12:31:55.201766-08:00 nova zmpkg.pl[9508]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.210183-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 3", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.216290-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 4
> 2022-12-21T12:31:55.290288-08:00 nova zmpkg.pl[9511]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.298857-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 4", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.305184-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 5
> 2022-12-21T12:31:55.379000-08:00 nova zmpkg.pl[9515]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.387274-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 5", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.393864-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 6
> 2022-12-21T12:31:55.466535-08:00 nova zmpkg.pl[9518]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.474871-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 6", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.481233-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 7
> 2022-12-21T12:31:55.553863-08:00 nova zmpkg.pl[9521]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.562058-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 7", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.568059-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 8
> 2022-12-21T12:31:55.641158-08:00 nova zmpkg.pl[9524]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.649507-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 8", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.655973-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 9
> 2022-12-21T12:31:55.730599-08:00 nova zmpkg.pl[9527]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.738795-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 9", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.745088-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 10
> 2022-12-21T12:31:55.817973-08:00 nova zmpkg.pl[9530]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.826119-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 10", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.832546-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 11
> 2022-12-21T12:31:55.904528-08:00 nova zmpkg.pl[9533]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:55.912765-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 11", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:55.918934-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmc -m 12
> 2022-12-21T12:31:55.992252-08:00 nova zmpkg.pl[9536]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.000640-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmc -m 12", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.006785-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmfilter.pl --filter_id=1--daemon
> 2022-12-21T12:31:56.080336-08:00 nova zmpkg.pl[9539]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.088577-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmfilter.pl --filter_id=1 --daemon", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.094728-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmfilter.pl --filter_id=2--daemon
> 2022-12-21T12:31:56.168110-08:00 nova zmpkg.pl[9542]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.176451-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmfilter.pl --filter_id=2 --daemon", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.182834-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmfilter.pl --filter_id=3--daemon
> 2022-12-21T12:31:56.257565-08:00 nova zmpkg.pl[9545]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.265763-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmfilter.pl --filter_id=3 --daemon", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.271794-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmaudit.pl -c
> 2022-12-21T12:31:56.344644-08:00 nova zmpkg.pl[9548]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.352840-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmaudit.pl -c", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.359215-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmwatch.pl
> 2022-12-21T12:31:56.435256-08:00 nova zmpkg.pl[9551]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.443865-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmwatch.pl", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.449584-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmupdate.pl -c
> 2022-12-21T12:31:56.524076-08:00 nova zmpkg.pl[9554]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.532168-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmupdate.pl -c", output is "Unable to connect toserver using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.538078-08:00 nova sudo: root : PWD=/usr/share/zoneminder/www ; USER=wwwrun ; COMMAND=/usr/bin/zmdc.pl start zmstats.pl
> 2022-12-21T12:31:56.610207-08:00 nova zmpkg.pl[9557]: Use of uninitialized value $Config{"ZM_PATH_SOCKS"} in concatenation (.) or string at /usr/bin/zmdc.pl line 76.
> 2022-12-21T12:31:56.619073-08:00 nova zmpkg[9449]: ERR [Unable to run "sudo -u wwwrun /usr/bin/zmdc.pl start zmstats.pl", output is "Unable to connect to server using socket at /zmdc.sock", status is 255]
> 2022-12-21T12:31:56.622065-08:00 nova systemd[1]: zm.service: New main PID 9473 does not exist or is a zombie.
> 2022-12-21T12:31:56.622273-08:00 nova systemd[1]: zm.service: Failed with result 'protocol'.
ZM_PATH_SOCKS??
Re: ZM_PATH_SOCKS??
The opensuse package maintainers have screwed something up.
While we wait for a fix, simply add a line to /etc/zm/zm.conf for ZM_PATH_SOCKS=something...
where something should probably be a tmpfs system, which could be something like /tmp/zm any writeable area will do, but a ramdisk is preferable..
While we wait for a fix, simply add a line to /etc/zm/zm.conf for ZM_PATH_SOCKS=something...
where something should probably be a tmpfs system, which could be something like /tmp/zm any writeable area will do, but a ramdisk is preferable..
-
- Posts: 19
- Joined: Tue Sep 10, 2019 11:08 pm
Re: ZM_PATH_SOCKS??
Hi Iconnor, Thanks for your reply! Ok I added the following to zm.conf -
ZM_PATH_SOCKS=/var/run/zm
but no joy, nor any change in the error messages I am seeing. Marc....
ZM_PATH_SOCKS=/var/run/zm
but no joy, nor any change in the error messages I am seeing. Marc....
-
- Posts: 19
- Joined: Tue Sep 10, 2019 11:08 pm
Re: ZM_PATH_SOCKS??
Oops, ignore my last post! In my testing/trials I had changed /etc/zoneminder/zm.conf to a symlink. Apparently ZoneMinder does not like or follow symlinks (that should be fixed IMHO). I changed it back to a regular file and things change rather dramatically and I got a whole lot more different errors! Too tired to analyze tonight, will look at tomorrow and get back here if I need more help.
Marc...
Marc...
Re: ZM_PATH_SOCKS??
There is nothing in our code to prevent following symlinks...
-
- Posts: 19
- Joined: Tue Sep 10, 2019 11:08 pm
Re: ZM_PATH_SOCKS??
Hi - I have been poking at why I am unable to get Zoneminder to start and I have a few questions that I need addressed....
1. I do believe Zoneminder is handling symlinks OK but I have an un-explainable situation then that I cannot explain if symlinks do indeed work OK. I set up a custom config file at /etc/conf.d which is actually a symlink to another location on my system. Here is the contents of this custom config file -
cat /etc/conf.d/03-custom.conf
# ZoneMinder database user
ZM_DB_USER=zm_adminXXX
# ZoneMinder database password
ZM_DB_PASS=xxxxxxxx
# ZoneMinder config file path
ZM_PATH_CONF=/etc/zoneminder
ZM_PATH_SOCKS=/var/run/zm
As you can see, I purposely broke the database user and password but there is no error message in any of the log files saying that the user name or password is wrong! The default settings in zm.conf are also wrong. This makes me wonder if my custom configuration file is getting read/loaded, which is why I questioned ZoneMinder and symlinks. I removed the symlink and placed 03-custom.conf back as a real file in /etc/conf.d and it made no difference.
2. The ZoneMinder service is failing to start up and there are no beneficial error messages in any of the log files, including /var/log/messages, that provide any insight as the why it is failing. While I am not a Perl literate programmer, I managed to instrument the code in zmpkg.pl enough to gain some insight. It appears that ZoneMinder is not honoring a systemctl restart zm command properly. I do not see it stopping and then restarting, it appears to be simply "starting" again. There is a state variable called "status" which always has a value of "running". This is causing the failure of the zm process, to successfully start, because of the returned value given in the exit statement is returned under the condition that ZoneMinder thinks it is already running. This causes the daemon calling zmpkg.pl to treat this return value as a generic error and simply tells the user that an error occurred, not helpful!. As a retired career computer scientist I find this kind of programming (where errors and other valuable state information get dropped into a bit bucket) very poor practice, but sigh I see it far to often!
I have simply tried stopping the zm service first, but that too is being ignored, because as near as I can tell, zmpkg thinks zm was never started. Again no status or other state information is reported in the log files explaining why the stop command appears to have been ignored. Also, when zm is started it spawns off a lot of other processes that monitor and collect data for each of my cameras. ZoneMinder "knows" about my cameras because I am trying to upgrade it, not install it from scratch. What the systemctl stop zm.service command doesn't do is to stop all these "child" processes, that were spun off to monitor and log data from the cameras! I don't know if this is the intended model, I just know Zm doesn't clean up and kill all the child processes that it spun off, when the zm daemon itself is stopped! And I have not found a way to tell zm to stop all it's spin off child processes and put it back into a non-running state. IMHO this should be a user controllable feature, to stop all child processes or to leave them running and it should be configured in one of ZoneMinder's main config files. (if it is I was not able to find it) Stopping these processes by simply doing a killall processes with zm as part of their name doesn't work either, so I suspect some sort of a watchdog process is keeping these camera processes going and it will have to be killed first. Bottom line however is attempting to stop zm did not change its startup behavior/failure either.
3. Is there some way to set the debug level, via either a command or config file, to configure the code to display DEBUG, FATAL etc instrumentation messages? All I can get are the INFO messages to show up in the log files. Google says it is possible to change the debug level via the web/gui interface but that is useless if one cannot get zm to startup and run in the first place.
4. When I tried to run zmupdate.ph -f I get an access denied error that I don't grok. I checked the user table in the mysql database and there is indeed a user with the name of zm_admin and a host of localhost. zm_admin has been granted all privileges on the zm database. Here is what the output is when I try to run this command.
nova:/var/log/zm # zmupdate.pl -f
Freshening configuration in database
Migratings passwords, if any...
Loading config from DB 227 entries
Saving config to DB 227 entries
DBD::mysql::db do failed: Access denied for user 'zm_admin'@'localhost' to database 'zm' at /usr/lib/perl5/vendor_perl/5.26.1/ZoneMinder/Config.pm line 198.
Can't lock Config table: Access denied for user 'zm_admin'@'localhost' to database 'zm' at /usr/bin/zmupdate.pl line 333.
n
1. I do believe Zoneminder is handling symlinks OK but I have an un-explainable situation then that I cannot explain if symlinks do indeed work OK. I set up a custom config file at /etc/conf.d which is actually a symlink to another location on my system. Here is the contents of this custom config file -
cat /etc/conf.d/03-custom.conf
# ZoneMinder database user
ZM_DB_USER=zm_adminXXX
# ZoneMinder database password
ZM_DB_PASS=xxxxxxxx
# ZoneMinder config file path
ZM_PATH_CONF=/etc/zoneminder
ZM_PATH_SOCKS=/var/run/zm
As you can see, I purposely broke the database user and password but there is no error message in any of the log files saying that the user name or password is wrong! The default settings in zm.conf are also wrong. This makes me wonder if my custom configuration file is getting read/loaded, which is why I questioned ZoneMinder and symlinks. I removed the symlink and placed 03-custom.conf back as a real file in /etc/conf.d and it made no difference.
2. The ZoneMinder service is failing to start up and there are no beneficial error messages in any of the log files, including /var/log/messages, that provide any insight as the why it is failing. While I am not a Perl literate programmer, I managed to instrument the code in zmpkg.pl enough to gain some insight. It appears that ZoneMinder is not honoring a systemctl restart zm command properly. I do not see it stopping and then restarting, it appears to be simply "starting" again. There is a state variable called "status" which always has a value of "running". This is causing the failure of the zm process, to successfully start, because of the returned value given in the exit statement is returned under the condition that ZoneMinder thinks it is already running. This causes the daemon calling zmpkg.pl to treat this return value as a generic error and simply tells the user that an error occurred, not helpful!. As a retired career computer scientist I find this kind of programming (where errors and other valuable state information get dropped into a bit bucket) very poor practice, but sigh I see it far to often!
I have simply tried stopping the zm service first, but that too is being ignored, because as near as I can tell, zmpkg thinks zm was never started. Again no status or other state information is reported in the log files explaining why the stop command appears to have been ignored. Also, when zm is started it spawns off a lot of other processes that monitor and collect data for each of my cameras. ZoneMinder "knows" about my cameras because I am trying to upgrade it, not install it from scratch. What the systemctl stop zm.service command doesn't do is to stop all these "child" processes, that were spun off to monitor and log data from the cameras! I don't know if this is the intended model, I just know Zm doesn't clean up and kill all the child processes that it spun off, when the zm daemon itself is stopped! And I have not found a way to tell zm to stop all it's spin off child processes and put it back into a non-running state. IMHO this should be a user controllable feature, to stop all child processes or to leave them running and it should be configured in one of ZoneMinder's main config files. (if it is I was not able to find it) Stopping these processes by simply doing a killall processes with zm as part of their name doesn't work either, so I suspect some sort of a watchdog process is keeping these camera processes going and it will have to be killed first. Bottom line however is attempting to stop zm did not change its startup behavior/failure either.
3. Is there some way to set the debug level, via either a command or config file, to configure the code to display DEBUG, FATAL etc instrumentation messages? All I can get are the INFO messages to show up in the log files. Google says it is possible to change the debug level via the web/gui interface but that is useless if one cannot get zm to startup and run in the first place.
4. When I tried to run zmupdate.ph -f I get an access denied error that I don't grok. I checked the user table in the mysql database and there is indeed a user with the name of zm_admin and a host of localhost. zm_admin has been granted all privileges on the zm database. Here is what the output is when I try to run this command.
nova:/var/log/zm # zmupdate.pl -f
Freshening configuration in database
Migratings passwords, if any...
Loading config from DB 227 entries
Saving config to DB 227 entries
DBD::mysql::db do failed: Access denied for user 'zm_admin'@'localhost' to database 'zm' at /usr/lib/perl5/vendor_perl/5.26.1/ZoneMinder/Config.pm line 198.
Can't lock Config table: Access denied for user 'zm_admin'@'localhost' to database 'zm' at /usr/bin/zmupdate.pl line 333.
n
Re: ZM_PATH_SOCKS??
Given that the build config for the package is broken, perhaps the config subdir loading is also broken... so it may not be reading the files in /etc/zm/conf.d... So maybe just make your changes in zm.conf.
You should be able to add ZM_LOG_DEBUG=1 in zm.conf to turn on debug logging everywhere..
You should be able to add ZM_LOG_DEBUG=1 in zm.conf to turn on debug logging everywhere..
Re: ZM_PATH_SOCKS??
Perhaps I will install OpenSUSE and see what I can see.