Thank you for your donation!


Instruction Guide moOde and Pi-Hole on Nginx
#11
(02-21-2021, 10:20 PM)felichas Wrote: Hi,
Installing pi-hole works fine for me, but breaks Moode Audio.

I was running moode v6.7.1. Followed instructions and ended with a working pi-hole and a broken moode.
I didn't investigate much, to be hones, because I had to update to moode v7.0.1.
I have flashed my RPi Zero with HiFiBerry DAC and upgraded to v7.0.1. moode worked great again.
I have followed this intructions again... and moode is now broken, just like v6.7.1 was.

Configuration pages System, Network and Audio seem to work.
But the configuration page for the Library is now broken
This is the error I get:
Code:
lib-config: Connection to MPD failed

But most importantly, the main player is broken

I see the same error in /var/log/moode.log
Code:
20210221 223036 lib-config: Connection to MPD failed
20210221 223036 moode.php: MPD connect failed: cmd=(playlist)
20210221 223040 moode.php: MPD connect failed: cmd=(playlist)
20210221 223044 moode.php: MPD connect failed: cmd=(lsinfo)
20210221 223044 moode.php: MPD connect failed: cmd=(loadlib)

And no errors in /var/log/php_errors.log


Any advice on how to fix this? I like the idea of having both services in the same device.

I did some more investigation, based on this post.

I think I missed the Integrity check bit from my /var/log/moode.log
Code:
20210222 084056 worker: -- Start
20210222 084057 worker: Successfully daemonized
20210222 084058 worker: Integrity check (failed:1)
20210222 084058 worker: Exited

I guess failed:1 referes to the 1st line of the cfg_hash table

Code:
$ md5sum /etc/nginx/nginx.conf
d0d1e0705a10974f26271f6623d87215  /etc/nginx/nginx.conf

$ sudo sqlite3 "/var/local/www/db/moode-sqlite3.db" "SELECT * FROM cfg_hash where id=1"
1|/etc/nginx/nginx.conf|390ed3c2876a41cbe45479a709470410|warning

I have indeed, following the instructions above, modified nginx.conf. And now the md5sum in the database does not match the actual hash of the file. But this should not be a problem, because the record has been now updated to warning   Huh

I can still try to udate the record (1st time I deal with sqlite in my life).

Code:
$ sudo sqlite3 "/var/local/www/db/moode-sqlite3.db"
SQLite version 3.27.2 2019-02-25 16:06:06
Enter ".help" for usage hints.
sqlite> .header on
sqlite> SELECT * FROM cfg_hash where id=1;
id|param|value|action
1|/etc/nginx/nginx.conf|390ed3c2876a41cbe45479a709470410|warning
sqlite> UPDATE cfg_hash SET VALUE = 'd0d1e0705a10974f26271f6623d87215' WHERE ID = 1 ;
sqlite> SELECT * FROM cfg_hash WHERE ID = 1;
id|param|value|action
1|/etc/nginx/nginx.conf|d0d1e0705a10974f26271f6623d87215|warning
sqlite> .quit

And finally, I can confirm everything else is now aligned database and file system

Code:
$ sudo sqlite3 "/var/local/www/db/moode-sqlite3.db" "select value,param from cfg_hash" |awk -F'|' '{print $1,$2}' |md5sum --check
/etc/nginx/nginx.conf: OK
/etc/nginx/fastcgi_params: OK
/etc/php/7.3/cli/php.ini: OK
/etc/php/7.3/fpm/php-fpm.conf: OK
/etc/php/7.3/fpm/php.ini: OK
/etc/php/7.3/fpm/pool.d/www.conf: OK
/etc/php/7.3/mods-available/opcache.ini: OK
/tmp/cfg_audiodev.sql: OK
/var/www/command/worker.php: OK
/var/www/inc/playerlib.php: OK
/var/www/css/main.min.css: OK
/var/www/js/config.min.js: OK
/var/www/js/lib.min.js: OK
/var/www/js/main.min.js: OK
/etc/rc.local: OK

But after restarting, I continue getting the same error. Any further help would be much appreciated.
Reply
#12
https://moodeaudio.org/forum/showthread....6#pid30806

Quote:I guess failed:1 referes to the 1st line of the cfg_hash table
1 means the table is not RO, so the last command from database procedure was not apply.

Quote:But this should not be a problem, because the record has been now updated to warning  
Doing that can trigger the verification check (error code: 2), so revert to exit for nginx.conf, and follow only the database procedure.

After that, if that still don't work, check again in moode log the error code for Integrity check line.
Reply
#13
(02-22-2021, 08:45 AM)TookaFace Wrote: https://moodeaudio.org/forum/showthread....6#pid30806

Quote:I guess failed:1 referes to the 1st line of the cfg_hash table
1 means the table is not RO, so the last command from database procedure was not apply.

Quote:But this should not be a problem, because the record has been now updated to warning  
Doing that can trigger the verification check (error code: 2), so revert to exit for nginx.conf, and follow only the database procedure.

After that, if that still don't work, check again in moode log the error code for Integrity check line.

Thanks for the tip. I solved it now.

The database was locked and would not let me do the UPDATE nor the CREATE TRIGGER.
A little googling showed me how to back up the db. Apply the changes in the back up and swap them was easy. 

Regards,
Reply
#14
Hi everyone, I can confirm that this works for MoOde 7.1.0 too! Smile
Reply


Forum Jump: