Logitech Media Server - updated plugin, now supports upgrades


Recommended Posts

What sort of problems were you having?

 

Problems with connecting and stability of the Media Server running - had instances of it just not loading up properly so had to manually kill process and restart it.

 

So far so good on the nightly but will keep you posted if any issues arise!

 

Thanks

Link to comment
  • Replies 160
  • Created
  • Last Reply

Top Posters In This Topic

I imagine many of you are actually running this program off of your cache drive rather than the flash drive, but from the discussions it seems several are still running slimserver off their flash drive.  Because I'm trying to avoid wearing out my flash drive with the OS (I paid for the Pro version), I prefer to run all the programs on a cache drive as: /mnt/cache/.apps/program_name and to more easily remember the filesystem organization.

 

I tried installing slimserver with the following steps but it is not loading when I go into //Tower:9000 and is not accessible from the iOS "Squeezebox" app either:

 

1-download the file logitechmediaserver-7.7.2-plugin_v1.3.plg

      from http://lime-technology.com/forum/index.php?topic=18310.0

2-copy to flash drive into the /boot/config/plugins/ directory

3-telnet as root with Putty to install:

# installplg /boot/config/plugins/logitechmediaserver-7.7.2-plugin_v1.3.plg

# mkdir /mnt/cache/.apps/slimserver

# chown -R nobody:users /mnt/cache/.apps/slimserver

# ls -l /mnt/cache/.apps/slimserver

4-navigate with Firefox to unRAID webGUI:  http://Tower -> Settings -> Mylar

5-Configuration

  Enable slimserver: (switch to “Yes”)

  Install directory: /mnt/cache/.apps/slimserver

  Select “Apply”

  "Squeezebox Server is running"

6-Navigate into the squeezebox webgui: http://Tower:9000

 

At this point, nothing loads and it seems slimserver is not accessible??

Link to comment

It seems right. I'm also running from my cache disk.

 

Try investigating your syslog, especially look for the place where the squeezeCenter program is started. If you cannot find the culprit, then include the syslog here.

 

You can also start the squeezecenter from a shell by using '/etc/rc.d/rc.slimserver start' some error-messages are easier to see when starting it like that.

 

Cheers Alex

Link to comment

I hope someone can help me

I want to use lyrics so i have to install 2 plugins for logitech media server:

Song info and song lyrics.

I did buy it keeps saying i have to restart the server

Restarting logitech server doesnt help and completely restart unraid, doesnt either..

So how do i get these 2 plugins installed on lms?

Link to comment

Problems is that it looks like logitech squeezebox server is trying to restart but doesnt... and everytime i log back on into logitech squeezebox server, it says it needs to restart

 

Enabling/disabling the plugin doenst help, neither does restarting unraid

 

so i need to find a way to restart this plugin...

Link to comment

Thx ill try, but i also see this in unraid log

 

Media Server (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001

Oct 19 17:26:42 Unraid slimserver.pl: [12-10-19 17:26:42.2061] Slim::Utils::Misc::msg (1304) Warning: [17:26:42.2058] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongLyrics/install.xml: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

Oct 19 17:26:42 Unraid slimserver.pl: [12-10-19 17:26:42.2087] Slim::Utils::Misc::msg (1304) Warning: [17:26:42.2085] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongInfo/BaseSettings.pm: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

 

Link to comment

Restart it with: /etc/rc.d/rc.slimserver restart

 

No such file or directory

 

Then it's not installed properly. Try installplg /boot/config/plugins/logitechmediaserver-7.8.0NightlyBuild-plugin.plg

That's if you have the nightly version of the plugin.

If you have the version from the first post, try installplg /boot/config/plugins/logitechmediaserver-7.7.2-plugin_v1.3.plg

Link to comment

Restart it with: /etc/rc.d/rc.slimserver restart

 

No such file or directory

 

Then it's not installed properly. Try installplg /boot/config/plugins/logitechmediaserver-7.8.0NightlyBuild-plugin.plg

That's if you have the nightly version of the plugin.

If you have the version from the first post, try installplg /boot/config/plugins/logitechmediaserver-7.7.2-plugin_v1.3.plg

But. Its running ok, so ithinkit is installed properly

I just get the error see post above

Link to comment

 

Restarting worked as you can see below, but i still get the errors and thatshy why the plugins arent installed. Any help pls

 

 

Oct 19 19:10:40 Unraid rc.slimserver: Executing /etc/rc.d/rc.slimserver restart

Oct 19 19:10:41 Unraid rc.slimserver: Using locale: en_US.utf8

Oct 19 19:10:41 Unraid sudo:    root : TTY=pts/0 ; PWD=/boot/Slimserver ; USER=slimserver ; COMMAND=/usr/local/slimserver/program/slimserver.pl --daemon --pidfile /var/run/slimserver/slimserver.pid --cachedir /usr/local/slimserver/data/Cache --logdir /usr/local/slimserver/data/logs --prefsdir /usr/local/slimserver/data/prefs --logfile syslog | log

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.1725] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2084] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2082] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongLyrics/install.xml: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2110] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2109] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongInfo/BaseSettings.pm: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

 

Link to comment

 

Restarting worked as you can see below, but i still get the errors and thatshy why the plugins arent installed. Any help pls

 

 

Oct 19 19:10:40 Unraid rc.slimserver: Executing /etc/rc.d/rc.slimserver restart

Oct 19 19:10:41 Unraid rc.slimserver: Using locale: en_US.utf8

Oct 19 19:10:41 Unraid sudo:    root : TTY=pts/0 ; PWD=/boot/Slimserver ; USER=slimserver ; COMMAND=/usr/local/slimserver/program/slimserver.pl --daemon --pidfile /var/run/slimserver/slimserver.pid --cachedir /usr/local/slimserver/data/Cache --logdir /usr/local/slimserver/data/logs --prefsdir /usr/local/slimserver/data/prefs --logfile syslog | log

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.1725] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2084] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2082] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongLyrics/install.xml: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2110] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2109] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongInfo/BaseSettings.pm: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

 

Try chown -R slimserver:users /mnt/user/Apps/slimserver  (change the path to the directory you entered in the plugin settings page)

If that doesn't work, try chmod -R 777 /mnt/user/Apps/slimserver

 

Link to comment

 

Restarting worked as you can see below, but i still get the errors and thatshy why the plugins arent installed. Any help pls

 

 

Oct 19 19:10:40 Unraid rc.slimserver: Executing /etc/rc.d/rc.slimserver restart

Oct 19 19:10:41 Unraid rc.slimserver: Using locale: en_US.utf8

Oct 19 19:10:41 Unraid sudo:    root : TTY=pts/0 ; PWD=/boot/Slimserver ; USER=slimserver ; COMMAND=/usr/local/slimserver/program/slimserver.pl --daemon --pidfile /var/run/slimserver/slimserver.pid --cachedir /usr/local/slimserver/data/Cache --logdir /usr/local/slimserver/data/logs --prefsdir /usr/local/slimserver/data/prefs --logfile syslog | log

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.1725] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2084] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2082] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongLyrics/install.xml: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2110] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2109] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongInfo/BaseSettings.pm: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

 

Try chown -R slimserver:users /mnt/user/Apps/slimserver  (change the path to the directory you entered in the plugin settings page)

If that doesn't work, try chmod -R 777 /mnt/user/Apps/slimserver

 

The first says on all files, operation not permitted

The second works, but i still get the same error...

Link to comment

 

Restarting worked as you can see below, but i still get the errors and thatshy why the plugins arent installed. Any help pls

 

 

Oct 19 19:10:40 Unraid rc.slimserver: Executing /etc/rc.d/rc.slimserver restart

Oct 19 19:10:41 Unraid rc.slimserver: Using locale: en_US.utf8

Oct 19 19:10:41 Unraid sudo:    root : TTY=pts/0 ; PWD=/boot/Slimserver ; USER=slimserver ; COMMAND=/usr/local/slimserver/program/slimserver.pl --daemon --pidfile /var/run/slimserver/slimserver.pid --cachedir /usr/local/slimserver/data/Cache --logdir /usr/local/slimserver/data/logs --prefsdir /usr/local/slimserver/data/prefs --logfile syslog | log

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.1725] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2084] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2082] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongLyrics/install.xml: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

Oct 19 19:10:42 Unraid slimserver.pl: [12-10-19 19:10:42.2110] Slim::Utils::Misc::msg (1304) Warning: [19:10:42.2109] error: Can't chmod() /usr/local/slimserver/data/Cache/InstalledPlugins/Plugins/SongInfo/BaseSettings.pm: Operation not permitted  at /boot/Slimserver/program/Slim/Utils/PluginManager.pm line 805

 

Try chown -R slimserver:users /mnt/user/Apps/slimserver  (change the path to the directory you entered in the plugin settings page)

If that doesn't work, try chmod -R 777 /mnt/user/Apps/slimserver

 

The first says on all files, operation not permitted

The second works, but i still get the same error...

 

Ar you logged on as root? If not, use sudo in front of the command: sudo chown -R slimserver:users /mnt/user/Apps/slimserver

 

Link to comment

Few questions / comments for Alex and those familiar with the development and design of this plugin...

 

Is there a reason why symlink /usr/local/slimserver gets created pointing to the target install location?  From experiments this end, it seems there's no problem running the daemon directly specifying the path to slimserver.pl. 

eg.

sudo -u squeezeboxserver /mnt/disk1/Services/lms/program/slimserver.pl --daemon --pidfile /var/run/lms/lms.pid --cachedir /mnt/disk1/Services/lms/data/Cache  --prefsdir /mnt/disk1/Services/lms/data/prefs

Is it a legacy thing perhaps?

 

Does anyone else get the problem where the Log dir is never created or used to store logs?  Even though it's explicitly set as /installdir/data/Logs on the start-up line in the rc script, it never seems to get created.  Oddly, I found removing --logdir meant it created it, albeit at /installdir/program/Logs.  But at least it created it and then I could see and access server.log / scanner.log. 

 

What's the reason behind file structure /installdir/program & /installdir/data?  Is there a functional reason for this or is it just for clarity?  I saw something in the plugin which accounts for older installs where the directory structure was flat, so I thought perhaps it was because the directory structure of the application had changed over time, but checking the latest nightly, it still looks the same as old 7.7.x and lower?

 

The daemon doesn't want to run as root which is fair enough.  But is there a reason for user "slimserver" to be used over another?  Reason for asking is that I'm thinking of baking my own plugin and started experimenting with other usernames and noticed in fact that when you attempt to run as root, it defaults to looking for a user called squeezeboxserver, not slimserver.

 

Lastly, why the default location of /mnt/user/something?  Is this is conscious decision and is everyone installing the application directly to an array drive?  How about /mnt/disk{x} or /mnt/cache instead, though I realise not everyone will have a cache disk.

 

If anyone can help answer the above I'd be grateful.  I used to run this as a plugin a while ago but then later chose to hack it onto my cache disk with a simple start/stop script and left it at that.  Now I'd like to start using a plugin for it again, but I'd also like to understand some of the things being done 'under the hood'.

 

 

Regards,

overbyrn

Link to comment

Hi Overbyrn,

 

Actually I think some of your questions are answered by my top-level post, where I describe some of the technical changes I made. But since I didn't notice that till after I answered your questions, you got lucky to get direct answers :)

 

Is there a reason why symlink /usr/local/slimserver gets created pointing to the target install location?  From experiments this end, it seems there's no problem running the daemon directly specifying the path to slimserver.pl.

 

I don't know. I 'took over' from Tom, who originally created the slimserver script as an example of how to write plugins. I do not know if he had a good reason to keep it at /usr/local/slimserver, though I'm guessing that's just the most linux-like behaviour to install stuff at /usr/local. So if it causes trouble having the symlink, we could remove it, and it would certainly make the script simpler.

 

Does anyone else get the problem where the Log dir is never created or used to store logs?

 

I have noticed the same problem. I do get slimserver logs into syslog, and I figured that was good enough, to not bother investigating it. For instance restarting my slimserver I get the following into my syslog

 

Oct 24 16:05:57 Tower rc.slimserver: Executing /etc/rc.d/rc.slimserver restart
Oct 24 16:05:58 Tower rc.slimserver: Using locale: en_US.utf8
Oct 24 16:05:58 Tower sudo:     root : TTY=pts/0 ; PWD=/mnt/cache/.app/slimserver/data ; USER=slimserver ; COMMAND=/usr/local/slimserver/program/slimserver.pl --daemon --pidfile /var/run/slimserver/slimserver.pid --cachedir /usr/local/slimserver/data/Cache --logdir /usr/local/slimserver/data/logs --prefsdir /usr/local/slimserver/data/prefs --logfile syslog | log
Oct 24 16:05:59 Tower slimserver.pl: [12-10-24 16:05:59.1375] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001 
Oct 24 16:05:59 Tower slimserver.pl: [12-10-24 16:05:59.7342] main::checkDataSource (1072) Warning: Schema updated or no media found in the database, initiating scan.  (Minor Issues)
Oct 24 16:06:00 Tower scanner.pl: [12-10-24 16:06:00.0166] main::main (200) Starting Logitech Media Server scanner (v7.7.2, r33893, Wed Mar 14 06:37:22 MDT 2012) perl 5.010001 
Oct 24 16:06:00 Tower scanner.pl: [12-10-24 16:06:00.3058] Slim::Schema::forceCommit (2118) Warning: Trying to commit transactions before DB is initialized!  (Minor Issues)
Oct 24 16:06:00 Tower slimserver.pl: [12-10-24 16:06:00.3116] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable! 
Oct 24 16:06:00 Tower scanner.pl: [12-10-24 16:06:00.3733] Slim::Music::Import::runImporter (485) Starting Slim::Media::MediaFolderScan scan 
Oct 24 16:06:00 Tower scanner.pl: [12-10-24 16:06:00.3738] Slim::Utils::Scanner::Local::rescan (171) Discovering audio files in /mnt/user/media/Musik/SqueezeLibrary 
Oct 24 16:06:03 Tower scanner.pl: [12-10-24 16:06:03.2994] Slim::Utils::Scanner::Local::__ANON__ (254) Removing deleted audio files (0) 
Oct 24 16:06:03 Tower scanner.pl: [12-10-24 16:06:03.2997] Slim::Utils::Scanner::Local::__ANON__ (332) Scanning new audio files (9695) 

 

The first couple of lines is the rc.d/rc.slimserver script logging the start, the rest is the slimserver program logging.

 

What's the reason behind file structure /installdir/program & /installdir/data?

 

Now this is my blame / invention :) The program folder contains the program which can be updated by to a newer slimserver version in the future. The data folder contains the slimserver data which should not be lost when updating the slimserver program. Actually I later learned that the 'unRaid' style is to probably keep the slimserver program in /usr/local (that is in memory) and install it on each reboot. However I still kind of prefer this version where the program does not have to be unpacked on each reboot, as it slows the boot time.

 

I saw something in the plugin which accounts for older installs where the directory structure was flat, so I thought perhaps it was because the directory structure of the application had changed over time, but checking the latest nightly, it still looks the same as old 7.7.x and lower?

 

The original script from tom placed data inside program dir, and hence data was lost either on each reboot, or when slimserver program was updated. I implemented stuff in script which carefully moves separates the data and program dir, if the user started from Toms original script.

 

Some newer plugin-scripts like Influencers make the program dir and data dir destination configurable in settings, which is better than what I did.

 

The daemon doesn't want to run as root which is fair enough.  But is there a reason for user "slimserver" to be used over another?  Reason for asking is that I'm thinking of baking my own plugin and started experimenting with other usernames and noticed in fact that when you attempt to run as root, it defaults to looking for a user called squeezeboxserver, not slimserver.

 

I think one username is as good as the other. Though I personally prefer the shorter slimserver, than squeezeboxserver. Anyway I cannot really answer the question, as the slimserver user was in Toms original version, I just kept it. Another good option would be to use nobody. Again, Influences method of making it selectable in settings, would probably be preferable.

 

Lastly, why the default location of /mnt/user/something?  Is this is conscious decision and is everyone installing the application directly to an array drive?  How about /mnt/disk{x} or /mnt/cache instead, though I realise not everyone will have a cache disk.

 

This is my decision. Tom originally had the default to /usr/local, which meant that by default settings would be lost on reboot. I wanted the default to be something every unRaid user has, and also which avoid data loss. Everybody has /mnt/user. When I did it I probably did not understand the consequences it has with creating a Share. Anyway its just a default location, so unless it screws something, I think it is not too bad.

 

If you have improvements don't hesitate and change the script. I can put it in the top-level post to keep a common list of versions.

 

Cheers Alex

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.