LG N2R1 Installing Squeezebox server manual
For those interested: Squeezebox server installation on LG N2R1 manual.
... means shortened to save space.
Used: firmware Firmware 2569t Rev 1.0.0 van http://lg.threnor.de/
Based on post: http://forum.nas-portal.org/showthread.php?9035-SqueezeBox-installieren&highlight=squeeze
where I added these steps as well.
Enable MySQL database, MySQL is required for Squeezeboxserver
In the LG ADMIN WEBINTERFACE you select Service -> Web service click edit.
Enable Mysql, select a password or leave it as root select apply.
Admin interface becomes a bit unresponsive, after 30 seconds you can reload the webpage. Mysql is now running.
To test:
LG-NAS:~$ sudo /etc/init.d/mysql start [sudo] password for admin:To see the MySQL version:* Starting MySQL database server: mysqld already running. LG-NAS:~$
LG-NAS:~$ mysqladmin -u root -p version Enter password:mysqladmin Ver 8.41 Distrib 5.0.51a, for debian-linux-gnu on arm Copyright (C) 2000-2006 MySQL AB ... Server version 5.0.51a-24+lenny2+spu1
Install required packages
SSH to the LG NAS, with user: adminLG-NAS:~$ sudo apt-get update LG-NAS:~$ sudo apt-get install nano LG-NAS:~$ sudo apt-get install gcc make perl libperl-dev mysql-server libdbd-mysql-perl libexpat1-dev ... The following packages will be upgraded: libc6 libexpat1 perl-base 3 upgraded, 30 newly installed, 0 to remove and 35 not upgraded. Need to get 47.9MB/63.6MB of archives. After this operation, 175MB of additional disk space will be used. Do you want to continue [Y/n]? YMysql password question popups: I entered the same password as in the previous step.
The libc6 installation fails. After a long wait I press CTRL+C and see:
Setting up libc6 (2.7-18lenny1) ... BusyBox v1.12.4 (2009-01-02 13:15:21 KST) multi-call binary Usage: init Init is the parent of all processes dpkg: error processing libc6 (--configure): subprocess post-installation script killed by signal (Interrupt) Errors were encountered while processing: libc6 E: Sub-process /usr/bin/dpkg returned an error code (1)The solution based on:
http://forum.nas-portal.org/showthread.php?9282-Performance-Problem-mit-ntfs-3g-Treiber-neue-Version-2010.1.16/page2&s=705a53b2b2dd8f2e9b97368f35beb254
LG-NAS:~$ sudo mv /sbin/init /sbin/init.mv LG-NAS:~$ sudo touch /sbin/init LG-NAS:~$ sudo chmod 755 /sbin/init LG-NAS:~$ sudo /sbin/init LG-NAS:~$ sudo dpkg --configure libc6 Setting up libc6 (2.7-18lenny1) ... LG-NAS:~$ sudo rm /sbin/init LG-NAS:~$ sudo mv /sbin/init.mv /sbin/initNow you can continue the installation
LG-NAS:~$ sudo apt-get install perl
LG-NAS:~$ sudo apt-get install gcc
LG-NAS:~$ sudo apt-get install make
LG-NAS:~$ sudo apt-get install libperl-dev mysql-server
...
Setting up mysql-server-5.0 (5.0.51a-24+lenny4) ...
Configuration file `/etc/logrotate.d/mysql-server'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : background this process to examine the situation
The default action is to keep your current version.
*** mysql-server (Y/I/N/O/D/Z) [default=N] ? N
* Stopping MySQL database server: mysqld.
* Starting MySQL database server: mysqld.
...
Everything is now installed, although probably the mysql step was not required because it was already installed and running..
Add new squeezeboxserver user
LG-NAS:~$ sudo adduser squeezeboxserver
Adding user `squeezeboxserver' ...
Adding new group `squeezeboxserver' (1001) ...
Adding new user `squeezeboxserver' (1002) with group `squeezeboxserver' ...
Creating home directory `/home/squeezeboxserver' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for squeezeboxserver
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
Change user:group of a directory and all subdirectories to squeezeboxserver:users
LG-NAS:~$ sudo chown -R squeezeboxserver:users /home/squeezeboxserver
Download and install squeezeboxserver
Software can be found at: http://downloads.slimdevices.com/You will download the code for arm: http://downloads.slimdevices.com/SqueezeboxServer_v7.5.2/squeezeboxserver-7.5.2-arm-linux.tgz
Why arm? Because the LG runs on a ARM processor.
LG-NAS:~$ cat /proc/cpuinfo Processor : ARM926EJ-S rev 1 (v5l) ...Login as squeezeboxserver:
$ ssh squeezeboxserver@192.168.1.10 squeezeboxserver@LG-NAS:~$ wget http://downloads.slimdevices.com/SqueezeboxServer_v7.5.2/squeezeboxserver-7.5.2-arm-linux.tgz squeezeboxserver@LG-NAS:~$ tar -xvf squeezeboxserver-7.5.2-arm-linux.tgz squeezeboxserver@LG-NAS:~$ cd squeezeboxserver-7.5.2-31632-arm-linux/
Create squeezebox database in MySQL
See: http://wiki.slimdevices.com/index.php/Using_an_existing_MySQL_instance#Creating_the_SlimServer_Database_and_Usersqueezeboxserver@LG-NAS:~$ mysql -u root -p Enter password:mysql> create database slimserver; Query OK, 1 row affected (0.03 sec) mysql> grant all on slimserver.* to slimserver identified by 'slimserver_password'; Query OK, 0 rows affected (0.63 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> quit Bye
Run squeezeboxserver (it will fail)
squeezeboxserver@LG-NAS:~/squeezeboxserver-7.5.2-31632-arm-linux$./slimserver.pl Your locale was detected as C, you may have problems with non-Latin filenames. Consider changing your LANG variable to the correct locale, i.e. en_US.utf8 NOTE: Class::XSAccessor 1.05+ not found, install it for better performance [11-01-15 20:15:47.3312] main::init (323) Starting Squeezebox Server (v7.5.2, r31632, Sat Jan 15 03:10:50 MST 2011) perl 5.010000 110115 20:15:54 [ERROR] Error message file '/home/squeezeboxserver/squeezeboxserver-7.5.2-31632-arm-linux/MySQL/errmsg.sys' had only 463 error messages, but it should contain at least 475 error messages. Check that the above file is the right version for this program! 110115 20:15:54 [ERROR] Abortingpress CTRL+C to stop it
~/squeezeboxserver-7.5.2-31632-arm-linux/prefs/server.conf is now generated, change it:
squeezeboxserver@LG-NAS:~/squeezeboxserver-7.5.2-31632-arm-linux$ nano ./prefs/server.prefsChange the following lines, "slimserver_password" depends on what you entered in the mysql table setup in a previous step:
dbpassword: slimserver_password dbsource: dbi:mysql:hostname=127.0.0.1;port=3306;database=%s dbusername: slimserver
Start squeezebox server
This should now succeed:squeezeboxserver@LG-NAS:~/squeezeboxserver-7.5.2-31632-arm-linux$ ./slimserver.pl Your locale was detected as C, you may have problems with non-Latin filenames. Consider changing your LANG variable to the correct locale, i.e. en_US.utf8 NOTE: Class::XSAccessor 1.05+ not found, install it for better performance [11-01-14 14:09:38.5915] main::init (323) Starting Squeezebox Server (v7.5.2, r31632, Mon Dec 13 14:08:58 MST 2010) perl 5.010000 [11-01-14 14:09:46.2654] Slim::Plugin::CLI::Plugin::cli_socket_open (166) Can't setup the listening port 9090: Address already in use [11-01-14 14:09:46.2715] Slim::Utils::PluginManager::load (330) Warning: Couldn't call Slim::Plugin::CLI::Plugin->initPlugin: Can't setup the listening port 9090: Address already in use at /home/squeezeboxserver/squeezeboxserver-7.5.2-31632-arm-linux/lib/Log/Log4perl/Logger.pmline 900
Test squeezebox server
Create a mysqueezebox account:http://www.mysqueezebox.com
Open url to your nas:
http://192.168.1.10:9000/
Enter the new user email address and password as entered on mysqueezebox.com. Click next button.
Time to configure your music collection.
Tip: add it on /mnt/disk/volume1/service/
because of hard disk sizes.
Create directory for squeezebox
As admin create a folder on the large file shareLG-NAS:~$ cd /mnt/disk/volume1/service/ LG-NAS:service$ sudo mkdir squeezebox [sudo] password for admin: LG-NAS:service$ sudo chown -R squeezeboxserver:users ./squeezebox/ LG-NAS:service$ cd squeezebox LG-NAS:service$ sudo chmod 777 .The last step I did to ease adding files via a windows share, this should be more restricted.
In Squeezecenter:
Set music folder
Set playlist folder
Finished. Squeezecenter now analyzes all your tracks.
For the non squeezebox users: the play buttons on the server do not start a player in the browser, they are meant to control your squeezebox clients.
Test client
I installed Squeezeplay on a Windows machine: http://downloads.slimdevices.com/nightly/?ver=7.5 Or buy a squeezebox ;)After installation Squeezeplay directly finds my LG nas. I can browse songs. browsing is not very quick, but usable. Sound is streaming ok from the NAS (tested 320kbps CBR songs, play fine from the NAS over wifi)
Nice thing now is I can control the Squeezeplay from the squeezebox software on my nas.
TODO
Change squeezeboxserver command line interface (CLI) port number. The default is 9090 but it seems to be in use by the LG already.This prohibits me from controlling the server from my Android phone.