Ankündigung

Einklappen
Keine Ankündigung bisher.

Musicserver4Lox auf einer bestehenden Debian Installation mit existierendem LMS

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Musicserver4Lox auf einer bestehenden Debian Installation mit existierendem LMS

    Hallo,

    ich habe bereits einen Homeserver mit Debian laufen, auf dem unter anderem auch ein LMS läuft. Derzeit alles noch im alten Haus, wird aber gegen Ende Mai ins neue Haus übersiedelt (mit Loxone) :-).

    Da auf dem Server auch Dienste wie NAS, zentraler TV Server und Router mit DNS und VPN laufen, möchte ich nicht einfach neu aufsetzen, um Ubuntu und Musicserver4Lox zu installieren. Falls jemand schon mal den Musicserver4Lox für eine bestehende LMS Installation genutzt hat, würden mich Tipss und Hinweise interessieren. Ansonsten werde ich das Thema nach dem Übersiedeln mal angehen und kann auch gerne meine Erfahrungen hier teilen, wenn Interesse besteht.

    lg
    Jobe

  • #2
    Gerne, hier sind sicher einige die Debian am laufen habe.
    Im Grunde spricht nichts dagegen, habe auch schon auf einen Raspi an getestet. Ich habe Ubuntu gewählt da hier Alsa besser funktioniert als in Debian. Besonders im Hinblick auf der Verwendung von mehreren Soundkarten und deren gleichzeitigen Benutzung.

    Allerdings habe ich das jetzt schon länger nicht mehr versucht.

    Noch eines als kleine Warnung...
    Bei der Installation werden zT Systemdateien überschrieben oder angepasst. Das kann uU zu Problemen mit anderen Paketen führen, muss aber nicht. Also Backup ist angesagt
    Kein Support per PN!

    Kommentar


    • jobe_grz
      jobe_grz kommentierte
      Kommentar bearbeiten
      Kein Problem, ich muss mir die shell scripts ohnedies anschauen und nicht einfach blind übernehmen. Das wird aber ohnedies noch dauern, zuerst muss das Haus noch fertig werden ;-)

  • #3
    Langsam komme ich dazu, die Loxone Config weiter voran zu treiben. Deshalb fange ich jetzt auch mal damit an, meine bestehende Debian Installation des LMS upzudaten. Die Schritte dokumentiere ich hier mit, eventuell kann es ja jemand verwenden, um selbst den Musicserver4Lox auf Debian zu installieren. Sämtliche Befehle wurden als root ausgeführt (oder der user ist angegeben)

    Das System wird zu erst auf den aktuellen Stand gebracht (muss nicht sein, aber schadet im Normalfall nicht. Die Paketlisten sollten aber auf alle Fälle upgedated werden)
    Code:
    apt-get update
    apte-get upgrade
    Als erstes werden mal die fehlenden ALSA Tools installiert:
    Code:
    apt-get install alsa-base
    apt-get install alsa-utils alsa-oss alsamixergui libasound2 libasound2-doc
    Lautstärke Pegel werden über den alsamixer angepasst und gespeichert. Falls mehrere Soundkarten verbaut sind (wie bei mir) kann über F6 die Soundkarte ausgewählt werden.
    Code:
    alsamixer
    alsactl store
    Um das apache modul für php7 zu installieren, muss zu erst noch ein repository für Debian Jessie hinzugefügt werden
    Code:
    # add dotdeb to apt sources list
    echo 'deb http://packages.dotdeb.org jessie all' > /etc/apt/sources.list.d/dotdeb.list
    
    ## make sure apt accepts https transport
    apt-get install apt-transport-https
    
    ## add dotdeb key for apt
    curl http://www.dotdeb.org/dotdeb.gpg | apt-key add -
    
    ## get package list from sources incl. new set source dotdeb
    apt-get update
    Dann können die benötigten Packages installiert werden
    Code:
     apt-get install apache2 libapache2-mod-php7.0 php7.0-curl php7.0-json php7.0-xml php7.0-dev php7.0-soap bc nmap ethtool git sudo squeezelite git make libasound2-dev libflac-dev libmad0-dev libvorbis-dev libfaad-dev libmpg123-dev liblircclient-dev libncurses5-dev patch alsa-base alsa-utils alsa-tools powertop htop build-essential caps libasound2-dev libasound2-plugins bs2b-ladspa swh-plugins libasound2-plugin-equal gcc libffi-dev python-dev openssl libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libio-socket-ssl-perl samba zip unzip
    Temporäres Verzeichnis anlegen, Musicserver4Lox runterladen und entpacken
    Code:
    mkdir tmp
    cd tmp
    wget http://music-server.net/download/install.zip
    unzip install.zip
    rm install.zip
    sendmail wird bei mir nicht konfiguriert, da bereits vorhanden

    Die etc/apache2/sites-enabled/000-default.conf habe ich nicht kopiert, da ich bereits einige Ports und virtual hosts verwende. Stattdessen, habe ich unten stehenden Eintrag hinzugefügt und den "Listen 82" in der /etc/apache2/ports.conf hinzugefügt.
    Code:
    <VirtualHost *:82>
            # The ServerName directive sets the request scheme, hostname and port that
            # the server uses to identify itself. This is used when creating
            # redirection URLs. In the context of virtual hosts, the ServerName
            # specifies what hostname must appear in the request's Host: header to
            # match this virtual host. For the default virtual host (this file) this
            # value is not decisive as it is used as a last resort host regardless.
            # However, you must set it for any further virtual host explicitly.
            #ServerName www.example.com
    
            ServerAdmin webmaster@localhost
            DocumentRoot /var/www/musicserver
    
            # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
            # error, crit, alert, emerg.
            # It is also possible to configure the loglevel for particular
            # modules, e.g.
            #LogLevel info ssl:warn
    
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
    
            # For most configuration files from conf-available/, which are
            # enabled or disabled at a global level, it is possible to
            # include a line for only one particular virtual host. For example the
            # following line enables the CGI configuration for this host only
            # after it has been globally disabled with "a2disconf".
            #Include conf-available/serve-cgi-bin.conf
    </VirtualHost>
    Die asound.conf ist leer und bei mir war auch noch keine vorhanden, also wird diese kopiert
    Code:
    cp etc/asound.conf /etc/
    Auch cron jobs waren bei mir bereits eingerichtet. Daher wird die crontab nicht kopiert, sondern mittels crontab -e folgende Zeilen hinzugefügt:
    Code:
    00 22   * * *   root    /opt/music_server/mstools cleantts
    00 06   * * *   root    /opt/music_server/mstools update_mailer
    Selbiges gilt für /etc/rc.local hier werden folgende Zeilen hinzugefügt:
    Code:
    /opt/music_server/mstools set_lms_ip
    /opt/music_server/mstools automount
    /opt/music_server/system_opt_ubuntu
    /opt/music_server/sc autostart
    Die smb.conf bleibt unverändert, da ich bereits entsprechende SAMBA Freigaben für den LMS eingerichtet habe.

    Die Date /etc/sudoers wird um die fehlenden Einträge ergänzt
    Code:
    # Members of the admin group may gain root privileges
    music ALL=(ALL) ALL
    .
    .
    .
    #includedir /etc/sudoers.d
    www-data ALL=NOPASSWD: ALL
    Die Dateien aus dem opt Verzeichnis können vollständig übernommen werden
    Code:
     cp -r opt/ /

    Die musicserver webapp wird in das Verzeichnes, welches im Apache Virtual Host angegeben wurde,kopiert.
    Code:
     cp -r var/www/* /var/www/musicserver/
    Rechte anpassen
    Code:
    chmod 0755 /opt/music_server/*
    chmod 0777 /opt/music_server/soundcard_cfg/
    chmod 0777 /opt/music_server/sq_cfg/
    chmod 0666 /opt/music_server/sq_cfg/*.*
    chmod 0777 /opt/music_server/sq_cfg/event/
     chmod 0777 /opt/music_server/sq_cfg/eq/
    chmod 0777 /opt/music_server/sq_cfg/zones/
     chmod 0777 /opt/music_server/sq_cfg/zones_ext/
    chmod 0666 /opt/music_server/sq_cfg/event/*.*
     chmod 0666 /opt/music_server/sq_cfg/zones/*.*
     chmod 0666 /opt/music_server/soundcard_cfg/defaultcard/*.*
     chmod 0666 /opt/music_server/soundcard_cfg/multicard/*.*
     chmod 0777 /opt/music_server/soundcard_cfg/zones/
    chmod 0666 /opt/music_server/soundcard_cfg/*.*
     chmod 0666 /opt/music_server/sq_cfg/zones
    Ende Teil 1 :-)

    Kommentar


    • #4
      Fehlende Verzeichnisse und Berechtigungen anpassen:
      Code:
      mkdir /var/www/musicserver/event/cts_tmp
      chmod 0777 /var/www/musicserver/event/cts_tmp
       chmod 0777 /var/www/musicserver/event/tts_tmp/
       chmod 0777 /var/www/musicserver/event/ringtones
      chmod 0777 /var/www/musicserver/event/ringtones/tts_signal/
       chmod 0666 /var/www/musicserver/settings/network.conf
       chmod 0666 /var/www/musicserver/settings/soundcards.txt
      chmod 0666 /etc/asound.conf
      /etc/network/interfaces habe ich bewußt ausgelassen. Mir ist noch nicht ganz klar, warum der Musicserver4Lox darauf zugreifen möchte. Die Netzwerk Konfiguration soll er bei mir allerdings nicht angreifen. Mal schauen, ob das Auswirkungen hat.

      Als nächstes werden die benötigten Links angelegt.
      Code:
      ln -s /opt/music_server/sc /bin/sc
      ln -s /opt/music_server/s /bin/s
      ln -s /opt/music_server/mstools /bin/mstools
      User music anlegen
      Code:
      adduser music
      Auf user music wechseln und Verzeichnisse anlegen (wobei ich noch nicht weiss, ob diese wirklich gebraucht werden)
      Code:
      su music
      cd /home/music
      mkdir music_files
      chmod 0777 music_files
      mkdir music_playlists
      chmod 0777 /home/music/music_playlists
      mkdir backup
      chmod 0777 /home/music/backup
      exit
      Die Musikserver Installation wird übersprungen. Es geht weiter mit Squeezelite installieren.
      Code:
       git clone http://github.com/ralph-irving/squeezelite/
      cd squeezelite/
      make
      #Version aus squeezelite.h ermitteln
       less squeezelite.h
      #Mit der entsprechenden Versionsnummer kopieren
       cp squeezelite /usr/bin/squeezelite-v1.8.6-998
      #und verlinken
       ln -s /usr/bin/squeezelite-v1.8.6-998 /usr/bin/squeezelite
      update-rc.d squeezelite disable
      Vorbereitung für Plugins
      Code:
       wget http://music-server.net/download/install/libnet-sdp-perl_0.07-1_all.deb
      dpkg -i libnet-sdp-perl_0.07-1_all.deb
      #pip updaten - war bei mir schon installiert
      pip install -U pip
      pip install awscli

      Dann noch die Datei /opt/music_server/sq_cfg/sq_lms.cfg mit den Werten des lms updaten (ip, port, etc.) und das sollte es gewesen sein. Da ich parallel mitgeschrieben habe, wird sich erst zeigen, ob alles funktioniert.


      Kommentar


      • #5
        Ok, die erste Hürde tat sich schon auf. Die Webapp muss unbedingt unter /var/www laufen. D.h. meine Konfiguration oben, habe ich entsprechend angepasst und den Apache restartet

        Kommentar


        • #6
          Bis jetzt läuft leider noch gar nichts. Also das Webgui lässt sich öffnen. Nach ein wenig konfigurieren und Player speichern, fällt das ganze Netzwerk aus. Warum, hab ich noch nicht rausgefunden. Generell weiss ich aber auch nicht, ob ich jetzt so ohne weiteres updates einspielen kann. Weil meine Installation ja nicht mit der allgemeinen Installation übereinstimmt.

          Kommentar

          Lädt...
          X