MPD / Lighttpd ...wasted 12 hours...hope this help Topic is solved

Have some feedback, questions, suggestions, or just fancy a chat? Pop it in here.
multiblitz
Posts: 3
Joined: Sun May 03, 2020 9:27 am

MPD / Lighttpd ...wasted 12 hours...hope this help

Post by multiblitz »

I wanted to use Dietpi to simply have a lightweight MPD server with cover art. Files on a Nas, Raspberry as a player, Ipad with Irok as a remote.

Pretty straight forward. I thought. But it took me many hours and readings from many different forums to get it running and I thought, lets at least share notes, so that others can save their time...any maybe at some day the dietpi creators even can change some setting so it becomes nearly plug and play.

So...that is what I did:

- I used the Dietpi config menu to create a mounted NAS drive. That work like a charme, BUT you have to go into /etc/fstab and change the permissions which the Dietpi is setting initially. Other wise lighttpd does not work. There are two settings file_mode and dir_mode and the inital setting will not allow lighttpd to open the mounted directory to fetch the coverart. So I changed it to 0777 both and now we are in business. chmod and chown did not work as it is a mounted drive....many hours to figure that out.

- I installed MPD and lighttpd from the software menu

- In lighttpd, change the source to your mount and enable directory listing, so you easily should be able to browse now your mounted directory with the IP of your dietpi player

- In MPD, # the localhost setting or your mpd server is not known in the network and look carefully on the output setting, it resamples everything to 44k and mane your dac can do more

In theory I guess one could make the inital setting of the mounting permissions, with this the lighttpd settings and finally the Mpd defoult settings in a way that it is install and play....but currently you really need to dig into the conf files much more than I would like.
User avatar
Joulinar
Posts: 2287
Joined: Sat Nov 16, 2019 12:49 am

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by Joulinar »

Hi,

many thanks for your message and sharing your solution.

Well DietPi can not foreseen each and every use case, as there are quite a lot of software title available. So yes, sometimes it's needed to have some manual steps done.

Regarding the mount point from your NAS. You could have placed the lighttpd user (www-data) into the dietpi user group. This should have enabled lighttpd to access the share. In general dietpi user group is used for cross application access. It's a more secure way than enabling r/w access for each and everybody on your system ;)
Pls let us know if a solution is working. This could help others if they hit by similar situation. Your DietPi Team
elevader
Posts: 14
Joined: Thu Dec 06, 2018 6:44 pm

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by elevader »

Joulinar wrote: Thu Sep 24, 2020 3:23 pm Regarding the mount point from your NAS. You could have placed the lighttpd user (www-data) into the dietpi user group. This should have enabled lighttpd to access the share. In general dietpi user group is used for cross application access. It's a more secure way than enabling r/w access for each and everybody on your system ;)
Not sure if i understood you correctly but

Code: Select all

usermod -a -G www-data dietpi
does not have the desired outcome on current DietPi_RPi-ARMv7-Buster_AlloGUI.7z
I did restart lighttpd service but still getting access error.
Update error!

Failed to open directory:
/mnt/audio/

Check media_dir value in the config.inc.php file
Check file permission
Yes, ls /mnt/audio/ shows subfolders
User avatar
Joulinar
Posts: 2287
Joined: Sat Nov 16, 2019 12:49 am

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by Joulinar »

pls can you post output of ls -la /mnt/audio/
Pls let us know if a solution is working. This could help others if they hit by similar situation. Your DietPi Team
elevader
Posts: 14
Joined: Thu Dec 06, 2018 6:44 pm

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by elevader »

Thanks for the reply, got it working now but not sure if i should like full 0777
works with,

Code: Select all

//nas/audio /mnt/audio cifs credentials=/root/.smbcreds,iocharset=utf8,sec=ntlmv2,vers=3,file_mode=0777,dir_mode=0777
Going to look into it deeper tomorrow, if it would work also with vers=3.1.1 and i need to grasp a bit of understanding for uid and gid.
Would you say that 0770 as dietpi drive-manager sets, would work with ompd?
User avatar
Joulinar
Posts: 2287
Joined: Sat Nov 16, 2019 12:49 am

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by Joulinar »

Hi,

Code: Select all

uid = User who mounts the samba share
gid = User Group who mounts the share
Using drive manager will always have user/group dietpi to mount the drive with 770 permission. Means you would need to add application users to group dietpi.

I guess you mixed it on your command usermod -a -G www-data dietpi because you added user dietpi to group www-data. But it should be the other way around ;)

Code: Select all

usermod -a -G examplegroup exampleusername
means in your case

Code: Select all

usermod -a -G dietpi www-data
Intention is to have group dietpi as cross application group to be able to exchange data between different applications. This will be implemented with upcoming release 6.33 https://github.com/MichaIng/DietPi/blob ... OG.txt#L11
Pls let us know if a solution is working. This could help others if they hit by similar situation. Your DietPi Team
elevader
Posts: 14
Joined: Thu Dec 06, 2018 6:44 pm

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by elevader »

Thanks, i'll revert and make changes later today.

Curious though why most of the /var/www/ files in 6.32 AlloBoss are all root:root and not www-data.
Would i brake things if i run a chown -R www-data:www-data on the /var/www/ folder?
User avatar
Joulinar
Posts: 2287
Joined: Sat Nov 16, 2019 12:49 am

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by Joulinar »

not sure if there is anything special on the Allo version. Maybe @MichaIng knows :)
Pls let us know if a solution is working. This could help others if they hit by similar situation. Your DietPi Team
elevader
Posts: 14
Joined: Thu Dec 06, 2018 6:44 pm

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by elevader »

followed your advice, corrected groups and everything works nicely now.

About the /var/www/ folder, this is how it looks after a fresh install.

Code: Select all

root@hifi:~# ll /var/www/
total 88K
drwxr-xr-x  4 root     root     4.0K Sep 10 19:46 .
drwxr-xr-x 12 root     root     4.0K Oct  8 09:21 ..
drwxrwx--- 12 www-data www-data 4.0K Mar 31  2020 allo
-rw-r--r--  1 root     root      38K Sep 10 19:16 apc.php
-rw-r--r--  1 root     root      217 Sep 10 19:46 index.php
drwxrwxr-x 18 root     root     4.0K Oct  7 23:12 ompd
-rw-r--r--  1 root     root      23K Sep 10 19:16 opcache.php
-rw-r--r--  1 root     root       20 Sep 10 19:16 phpinfo.php

Code: Select all

root@hifi:~# ll /var/www/ompd/                                                                                         
total 1.2M                                                                                                             
drwxrwxr-x 18 root     root     4.0K Oct  7 23:12 .     
drwxr-xr-x  4 root     root     4.0K Sep 10 19:46 ..      
-rw-rw-r--  1 root     root      217 Sep  6 21:09 .gitignore 
drwxrwxr-x  4 root     root     4.0K Sep  6 21:09 PHPsimpleHTMLDomParser
-rw-rw-r--  1 root     root     1.8K Sep  6 21:09 README.md    
-rw-rw-r--  1 root     root      51K Sep  6 21:09 about.php           
-rw-rw-r--  1 root     root      13K Sep  6 21:09 ajax-album-playlist.php
-rw-rw-r--  1 root     root     6.3K Sep  6 21:09 ajax-blacklist.php
-rw-rw-r--  1 root     root     2.2K Sep  6 21:09 ajax-change-player.php
-rw-rw-r--  1 root     root     2.5K Sep  6 21:09 ajax-evaluate-status.php
-rw-rw-r--  1 root     root     6.5K Sep  6 21:09 ajax-favorite-arrange-MPD.php
-rw-rw-r--  1 root     root     5.8K Sep  6 21:09 ajax-favorite-arrange-Tidal.php
-rw-rw-r--  1 root     root      14K Sep  6 21:09 ajax-favorite-arrange.php
-rw-rw-r--  1 root     root     1.9K Sep  6 21:09 ajax-favorite-list.php
-rw-rw-r--  1 root     root     5.6K Sep  6 21:09 ajax-favorite.php
-rw-rw-r--  1 root     root     2.1K Sep  6 21:09 ajax-get-hra-audio-format.php
-rw-rw-r--  1 root     root     2.4K Sep  6 21:09 ajax-hra-search.php
-rw-rw-r--  1 root     root     3.6K Sep  6 21:09 ajax-last-played.php
-rw-rw-r--  1 root     root     7.3K Sep  6 21:09 ajax-playlist-mini.php
-rw-rw-r--  1 root     root     7.5K Sep  6 21:09 ajax-playlist-save.php
-rw-rw-r--  1 root     root     5.2K Sep  6 21:09 ajax-playlist-sync.php
-rw-rw-r--  1 root     root     4.2K Sep  6 21:09 ajax-random-files.php
-rw-rw-r--  1 root     root     2.2K Sep  6 21:09 ajax-suggested.php
-rw-rw-r--  1 root     root     2.2K Sep  6 21:09 ajax-tidal-search.php
-rw-rw-r--  1 root     root     4.1K Sep  6 21:09 ajax-track-version.php
-rw-rw-r--  1 root     root     1.9K Sep  6 21:09 ajax-update-progress.php
-rw-rw-r--  1 root     root     8.3K Sep  6 21:09 ajax-yt-search.php
-rw-rw-r--  1 root     root     2.0K Sep  6 21:09 ajax.php
drwxrwxr-x  4 root     root     4.0K Sep  6 21:09 api
-rw-rw-r--  1 root     root      17K Sep  6 21:09 browser.php
drwxrwxr-x  2 www-data www-data 4.0K Sep  6 21:09 cache
-rw-rw-r--  1 root     root     3.4K Sep  6 21:09 cache.php
drwxrwxr-x 12 root     root     4.0K Sep  6 21:09 codemirror
-rw-rw-r--  1 root     root     5.1K Sep  6 21:09 config-update-select.php
-rw-rw-r--  1 root     root      50K Sep  6 21:09 config.php
-rw-rw-r--  1 root     root     9.4K Sep  6 21:09 cover.php
drwxrwxr-x  2 root     root     4.0K Sep  6 21:09 covers
-rw-rw-r--  1 root     root      40K Sep  6 21:09 download.php
-rw-rw-r--  1 root     root      35K Sep  6 21:09 favorite.php
drwxrwxr-x  6 root     root     4.0K Sep  6 21:09 fonts
-rw-rw-r--  1 root     root      24K Sep  6 21:09 genre.php
drwxrwxr-x  6 root     root     4.0K Sep  6 21:09 getid3
drwxrwxr-x  2 root     root     4.0K Sep  6 21:09 image
-rw-rw-r--  1 root     root      15K Sep  6 21:09 image.php
-rw-rw-r--  1 root     root     1.9K Sep  6 21:09 image_crop.php
drwxrwxr-x  2 root     root     4.0K Oct  8 08:14 include
-rw-rw-r--  1 root     root      63K Sep  6 21:09 index-view2.php
-rw-rw-r--  1 root     root      33K Sep  6 21:09 index-view3.php
-rw-rw-r--  1 root     root      87K Sep  6 21:09 index.php
drwxrwxr-x  2 root     root     4.0K Sep  6 21:09 javascript-src
drwxrwxr-x  2 root     root     4.0K Sep  6 21:09 jquery
-rw-rw-r--  1 root     root     7.9K Sep  6 21:09 json.php
-rw-rw-r--  1 root     root      35K Sep  6 21:09 license.txt
-rw-rw-r--  1 root     root     3.9K Sep  6 21:09 login.php
-rw-rw-r--  1 root     root      130 Sep  6 21:09 manifest.json
-rw-rw-r--  1 root     root      325 Sep  6 21:09 manifest.webmanifest
-rw-rw-r--  1 root     root     4.7K Sep  6 21:09 message.php
-rw-rw-r--  1 root     root      640 Sep  6 21:09 offline.html
-rw-rw-r--  1 root     root     9.2K Sep  6 21:09 opensearch.php
-rw-rw-r--  1 root     root     2.3K Sep  6 21:09 phpinfo.php
-rw-rw-r--  1 root     root      81K Sep  6 21:09 play.php
-rw-rw-r--  1 root     root      14K Sep  6 21:09 playlist-mini.php
-rw-rw-r--  1 root     root      52K Sep  6 21:09 playlist.php
-rw-rw-r--  1 root     root      15K Sep  6 21:09 playlistDel.php
-rw-rw-r--  1 root     root     7.9K Sep  6 21:09 record.php
-rw-rw-r--  1 root     root     6.4K Sep  6 21:09 ridirect.php
-rw-rw-r--  1 root     root      55K Sep  6 21:09 search.php
-rw-rw-r--  1 root     root     3.1K Sep  6 21:09 service-worker.js
drwxrwxr-x  8 root     root     4.0K Sep  6 21:09 skin
drwxrwxr-x  2 root     root     4.0K Sep  6 21:09 sql
-rw-rw-r--  1 root     root      38K Sep  6 21:09 statistics.php
drwxrwxr-x  2 www-data www-data 4.0K Sep  6 21:09 stream
-rw-rw-r--  1 root     root      30K Sep  6 21:09 stream.php
drwxrwxr-x  2 www-data www-data 4.0K Oct  7 23:16 tmp
drwxrwxr-x  2 root     root     4.0K Sep  6 21:09 tools
-rw-rw-r--  1 root     root      84K Sep  6 21:09 update.php
-rw-rw-r--  1 root     root      39K Sep  6 21:09 users.php
User avatar
Joulinar
Posts: 2287
Joined: Sat Nov 16, 2019 12:49 am

Re: MPD / Lighttpd ...wasted 12 hours...hope this help

Post by Joulinar »

Ok good that it is fixed for you now.

Regrading Allo, I need to say, I'm not an expert as I don't use it. There we need @MichaIng as developer.
Pls let us know if a solution is working. This could help others if they hit by similar situation. Your DietPi Team
Post Reply