Anleitung zur Installation von Smarthome.py und Smartvisu auf einem IGEL Thin Client
Da ja diverse Einplatinen Computer schnell an ihre Grenzen kommen habe ich eine Alternative gefunden welche super funktioniert, sehr schnell ist, oft günstiger und sogar noch eine PCI Anschluss hat. Stromverbrauch liegt übrigens weit unter 10Watt.
Ich habe mir einen IGEL Thin Client mit 1,4 GHZ für 33 Euro in der Bucht besorgt.
Dazu noch eine Sandisk Compact Flash Speicherkarte Extreme 8GB 60MB Edition für 28 Euro von Amazon. (Es reicht auch eine normale mit 4GB, denn alles in allem brauchen wir so ca. 1,7GB aber so hat man noch etwas Reserve für ggf. zusätzliche Aufgaben.) Macht also 61 Euro und alles ist in einem Gehäuse, natürlich Lüfter frei.
Zum öffnen des Gehäuses hinten die Schrauben lösen (Seite: Maus Anschluss) und das Oberteil nach hinten ziehen.
Ich habe erst einmal den Card Reader ausgebaut, denn der braucht nur Strom und wir benötigen den nicht.Um an die CF Card ran zukommen muss der sowieso raus.
Los gehts mit der
Flash Card
Die FlashCard (also die SanDisk Extreme 60MB/s 8GB) mit z.B. Windows über einen Cardreader mit Fat32 formatieren (Schnellformatierung reicht aus).
Danach besorgen wir uns über die Unetbootin Homepage das sehr hilfreiche Programm für Windows. Nach dem Download starten wir Unetbootin. Wir wählen als Distribution Debian mit der Stable Netinstall. Unten dann das Laufwerk mit der CF Card und OK klicken. Somit wird ein eine bootbare CF Card erstellt und alles andere wird dann aus dem Netz nachinstalliert.
An den ordnungsgemäß verschlossenen Igel schliessen wir nun das Netzwerkkabel, die Tastatur, den VGA Monitor und zum Schluss das Stromkabel an.
BIOS
Während der IGEL startet drücken wir mehrmals ENTF auf der Tastatur. Damit gelangen wir ins BIOS.
Für eine ordentliche Ausgangsposition laden wir die optimalen BIOS Einstellungen. Dort nehmen wir diverse Einstellungen vor, um uns das Leben mit dem ThinClient und der nun folgenden Debian Installation zu erleichtern.
!Bitte ein korrektes Datum samt Uhrzeit im BIOS einstellen, sonst kommt es im Verlauf der Installation u.U. zu Problemen und Fehlermeldungen!
Zuerst einmal soll der Igel natürlich später ohne Tastatur booten. Dazu stellen wir in den Standard CMOS Features die Position Halt On auf No Errors
Damit der IGEL bei einem Stromausfall später wieder automatisch startet, stellen wir im Punkt Power Management Setup das AC Loss Auto Restart auf ON
Weiterhin stellen wir Shared Memory der Grafikkarte auf 16MB.
Ebenso stellen wir die Grafikausgabe auf CRT, um Fehler bei der Anzeige zu vermeiden.
Einstellungen speichern und das BIOS verlassen.
Debian
Der Igel startet von der CF Karte die Debian Installation.
Nun die verschiedenen Sprachen auswählen und immer OK (Enter).
Debian fragt nach Sprache (German), Standort (Deutschland), Tastaturbelegung (Deutsch), Namen des Rechners im Netz (variabel, z.B. EIBServer), Domainname (variabel, z.B. .igel_eib), usw.. Festplatte partitionieren (geführt, vollständige Festplatte verwenden), Festplatte auswählen (Enter), Art der Partitionierung (alle Dateien auf eine Partition, für Anfänger), Partitionierung (alles mit Ja bestätigen bzw. Entertaste) , Änderungen schreiben (JA).
Nach dem das Grundsystem installiert wurde, das Passwort für den root Benutzer vergeben. Es sollte sicher sein. Bitte aufschreiben!
Danach noch den Benutzernamen smarthome samt Passwort vergeben. Bitte aufschreiben!
Danach noch den Standard Spiegelserver in Deutschland wählen.
Proxy Abfrage leer lassen. OK.
An der Paketverwendungsaktion nicht teilnehmen OK.
Bei der Softwareauswahl mit Space alles deaktivieren außer SSH Server. Genügt.
Grub Bootloader in Master Boot Record schreiben. Natürlich.
System neu starten lassen.
Debian ist standardmäßig für Erhalt einer IP im Netz per DHCP konfiguriert. Die von eurem Router zugewiesene IP könnt ihr mit folgendem Befehl erfahren. (brauchen wir im nächsten Kapitel für Putty)
Putty
Fernbedienung via SSH
Ladet euch auf einem Windows Rechner der auch im Netzwerk mit dem Igel hängt Puttyaus dem Netz herunter und startet es. Dort die IP Adresse des Igel eingeben (hat der Befehl ifconf auf dem Bildschirm ja ausgeworfen) und öffnen. (man kann die Einstellungen später auch speichern um die nicht immer neu einzugeben)
Es kommt eine Abfrage nach dem Schlüssel den mit OK bestätigen.
Nun öffnet sich ein Fenster, dort gebt ihr root ein und Entertaste.
Nun wird das vorhin vergebene Passwort für root abgefragt. Das eingeben. Achtung, dabei erscheinen in der Konsole keine Zeichen oder Platzhalter, das Passwort wird im Hintergrund angenommen.
Von hier ab kann der Igel ferngesteuert werden egal wo er sich befindet und benötigen keinen Bildschirm und Tastatur am IGEL selber mehr.
Um z.B. zu sehen was alles für Prozesse auf dem IGEL laufen einfach mal top eingeben. Es erscheint eine sich ständig aktualisierende Liste der aktuellen Prozesse. Beendet wird das wieder mit Strg+c.
Tip
Putty merkt sich alle Befehle die eingegeben wurden, an die gelangt man über die Pfeil hoch und runter Tasten.
Um einen Befehl aus z.B. dem Web einzugeben reicht es diesen im Browser zu kopieren und dann in Putty die rechte Maustaste zu drücken.
Andersrum reicht es in Putty eine Textstelle einfach nur zu markieren, damit ist die schon im Zwischenspeicher (alleine das markieren reicht) und kann dann z.B. in einem Forum ganz normal eingefügt werden.
Für die Arbeit an Dateien empfehle ich das Programm WinSCP zu verwenden. Auch dort wieder IP Adresse eintragen, root, PW usw. Glaube da muss ich nichts weiter dazu sagen.
So nun gehts los.
Debian konfigurieren
Da es blöd ist, nie zu wissen was DHCP vom Router dem IGEL gerade für eine IP gegeben hat, geben wir dem erst mal eine feste IP Adresse.
Dazu öffnet ihr per WinSCP die Datei /etc/network/interfaces
Die roten Einträge ändern und mit der festen IP Adresse ersetzen. (z.B. 192.168.0.3)
Danach kann man den Igel ruhigen Gewissens einmal rebooten über die Konsole.
Der Igel ist nun unter der Neuen IP Adresse zu erreichen. Bitte beachtet das in Putty und WinSCP.
So jetzt installieren wir erstmal das was wir alles brauchen, dazu in der Konsole eingeben:
eibd
Erweitern der sources.list.
Öffnet mit WinSCP
/etc/apt/sources.list
und folgenden Zeilen am Ende hinzufügen und speichern.
Das Repository von der TU Wien ist nur mit einem Key zu nutzen. Den müsst ihr noch installieren. Ihr bekommt ihn hier. Dazu kopiert ihr den Schlüssel in eine Datei beliebigen Namens zB ~root/qw und gebt danach folgendes ein.
Danach ein
zum straten dann
Nachdem der eibd jetzt rudimentär läuft wollen wir eibd bei jedem hochfahren des Rechners automatisch starten.
Dazu nutzen wir die Standard Mechanismen von Debian und erstellen eine Datei /etc/init.d/eibd mit folgendem Inhalt:
Zeile 6 dazu an das entsprechende Interface anpassen:
Für KNX via IP: (IP natürlich anpassen)
Ausführbar machen:
setzen wir vor der Zeile eibd das entsprechende Häckchen mit Space und beenden mit Return. Evtl. müsst ihr weiter runter scrollen um die Zeile eibd zu finden.
Nach einem Reboot (den ihr bei Linux jetzt im Gegensatz zu Windows nicht braucht) läuft dereibd automatisch.
test ob Eibd funktioniert (1/0/23 = eine GA eines z.B. Lichtes, die 1 einschalten, 0 wäre dann ausschalten)
Licht an
Licht aus:
Installation Smarthome.py
Benutzer smarthome bearbeiten:
Verzeichnis Smarthome anlegen und Rechte vergeben
Notwendige Dateien anlegen wenn noch nicht vorhanden unter /usr/smarthome/etc
logic.conf (erstmal leer)
smarthome.conf
Inhalt:
Autostart:
unter /etc/init.d/ Datei anlegen: smarthome
mit folgendem Inhalt:
Dateirechte setzen mit:
Smartvisu installieren:
aktuelle Version checken (hier die 2.7, ggf. dann die nummer in den Anweisungen ersetzen) laden und in den Apache entpacken:
Rechte setzen:
Hinweis:
Apache nimmt sich Rechte am Ordner icons, daher symlink alias.conf löschen unter:/etc/apache2/mods-enabled
Viel Spass
Gruß Haxley
Da ja diverse Einplatinen Computer schnell an ihre Grenzen kommen habe ich eine Alternative gefunden welche super funktioniert, sehr schnell ist, oft günstiger und sogar noch eine PCI Anschluss hat. Stromverbrauch liegt übrigens weit unter 10Watt.
Ich habe mir einen IGEL Thin Client mit 1,4 GHZ für 33 Euro in der Bucht besorgt.
Dazu noch eine Sandisk Compact Flash Speicherkarte Extreme 8GB 60MB Edition für 28 Euro von Amazon. (Es reicht auch eine normale mit 4GB, denn alles in allem brauchen wir so ca. 1,7GB aber so hat man noch etwas Reserve für ggf. zusätzliche Aufgaben.) Macht also 61 Euro und alles ist in einem Gehäuse, natürlich Lüfter frei.
Zum öffnen des Gehäuses hinten die Schrauben lösen (Seite: Maus Anschluss) und das Oberteil nach hinten ziehen.
Ich habe erst einmal den Card Reader ausgebaut, denn der braucht nur Strom und wir benötigen den nicht.Um an die CF Card ran zukommen muss der sowieso raus.
Los gehts mit der
Flash Card
Die FlashCard (also die SanDisk Extreme 60MB/s 8GB) mit z.B. Windows über einen Cardreader mit Fat32 formatieren (Schnellformatierung reicht aus).
Danach besorgen wir uns über die Unetbootin Homepage das sehr hilfreiche Programm für Windows. Nach dem Download starten wir Unetbootin. Wir wählen als Distribution Debian mit der Stable Netinstall. Unten dann das Laufwerk mit der CF Card und OK klicken. Somit wird ein eine bootbare CF Card erstellt und alles andere wird dann aus dem Netz nachinstalliert.
An den ordnungsgemäß verschlossenen Igel schliessen wir nun das Netzwerkkabel, die Tastatur, den VGA Monitor und zum Schluss das Stromkabel an.
BIOS
Während der IGEL startet drücken wir mehrmals ENTF auf der Tastatur. Damit gelangen wir ins BIOS.
Für eine ordentliche Ausgangsposition laden wir die optimalen BIOS Einstellungen. Dort nehmen wir diverse Einstellungen vor, um uns das Leben mit dem ThinClient und der nun folgenden Debian Installation zu erleichtern.
!Bitte ein korrektes Datum samt Uhrzeit im BIOS einstellen, sonst kommt es im Verlauf der Installation u.U. zu Problemen und Fehlermeldungen!
Zuerst einmal soll der Igel natürlich später ohne Tastatur booten. Dazu stellen wir in den Standard CMOS Features die Position Halt On auf No Errors
Damit der IGEL bei einem Stromausfall später wieder automatisch startet, stellen wir im Punkt Power Management Setup das AC Loss Auto Restart auf ON
Weiterhin stellen wir Shared Memory der Grafikkarte auf 16MB.
Ebenso stellen wir die Grafikausgabe auf CRT, um Fehler bei der Anzeige zu vermeiden.
Einstellungen speichern und das BIOS verlassen.
Debian
Der Igel startet von der CF Karte die Debian Installation.
Nun die verschiedenen Sprachen auswählen und immer OK (Enter).
Debian fragt nach Sprache (German), Standort (Deutschland), Tastaturbelegung (Deutsch), Namen des Rechners im Netz (variabel, z.B. EIBServer), Domainname (variabel, z.B. .igel_eib), usw.. Festplatte partitionieren (geführt, vollständige Festplatte verwenden), Festplatte auswählen (Enter), Art der Partitionierung (alle Dateien auf eine Partition, für Anfänger), Partitionierung (alles mit Ja bestätigen bzw. Entertaste) , Änderungen schreiben (JA).
Nach dem das Grundsystem installiert wurde, das Passwort für den root Benutzer vergeben. Es sollte sicher sein. Bitte aufschreiben!
Danach noch den Benutzernamen smarthome samt Passwort vergeben. Bitte aufschreiben!
Danach noch den Standard Spiegelserver in Deutschland wählen.
Proxy Abfrage leer lassen. OK.
An der Paketverwendungsaktion nicht teilnehmen OK.
Bei der Softwareauswahl mit Space alles deaktivieren außer SSH Server. Genügt.
Grub Bootloader in Master Boot Record schreiben. Natürlich.
System neu starten lassen.
Debian ist standardmäßig für Erhalt einer IP im Netz per DHCP konfiguriert. Die von eurem Router zugewiesene IP könnt ihr mit folgendem Befehl erfahren. (brauchen wir im nächsten Kapitel für Putty)
Code:
ifconfig
Putty
Fernbedienung via SSH
Ladet euch auf einem Windows Rechner der auch im Netzwerk mit dem Igel hängt Puttyaus dem Netz herunter und startet es. Dort die IP Adresse des Igel eingeben (hat der Befehl ifconf auf dem Bildschirm ja ausgeworfen) und öffnen. (man kann die Einstellungen später auch speichern um die nicht immer neu einzugeben)
Es kommt eine Abfrage nach dem Schlüssel den mit OK bestätigen.
Nun öffnet sich ein Fenster, dort gebt ihr root ein und Entertaste.
Nun wird das vorhin vergebene Passwort für root abgefragt. Das eingeben. Achtung, dabei erscheinen in der Konsole keine Zeichen oder Platzhalter, das Passwort wird im Hintergrund angenommen.
Von hier ab kann der Igel ferngesteuert werden egal wo er sich befindet und benötigen keinen Bildschirm und Tastatur am IGEL selber mehr.
Um z.B. zu sehen was alles für Prozesse auf dem IGEL laufen einfach mal top eingeben. Es erscheint eine sich ständig aktualisierende Liste der aktuellen Prozesse. Beendet wird das wieder mit Strg+c.
Tip
Putty merkt sich alle Befehle die eingegeben wurden, an die gelangt man über die Pfeil hoch und runter Tasten.
Um einen Befehl aus z.B. dem Web einzugeben reicht es diesen im Browser zu kopieren und dann in Putty die rechte Maustaste zu drücken.
Andersrum reicht es in Putty eine Textstelle einfach nur zu markieren, damit ist die schon im Zwischenspeicher (alleine das markieren reicht) und kann dann z.B. in einem Forum ganz normal eingefügt werden.
Für die Arbeit an Dateien empfehle ich das Programm WinSCP zu verwenden. Auch dort wieder IP Adresse eintragen, root, PW usw. Glaube da muss ich nichts weiter dazu sagen.
So nun gehts los.
Debian konfigurieren
Da es blöd ist, nie zu wissen was DHCP vom Router dem IGEL gerade für eine IP gegeben hat, geben wir dem erst mal eine feste IP Adresse.
Dazu öffnet ihr per WinSCP die Datei /etc/network/interfaces
Die roten Einträge ändern und mit der festen IP Adresse ersetzen. (z.B. 192.168.0.3)
Code:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 # iface eth0 inet dhcp iface eth0 inet static address 192.168.0.3 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1
Code:
shutdown -r now
So jetzt installieren wir erstmal das was wir alles brauchen, dazu in der Konsole eingeben:
Code:
apt-get -y install build-essential cmake make subversion apt-get install libxml2-dev liblua5.1-0-dev bin86 libesmtp-dev libcppunit-dev libcurl4-openssl-dev liblog4cpp5-dev liblua5.1-0 liblua50 liblua50-dev liblualib50 liblualib50-dev lua5.1 lua50 sudo apache2 php5 libapache2-mod-php5 rcconf apt-get install openssh-server openntpd python3 python3-dev python3-setuptools git unzip
Code:
easy_install3 pip pip install ephem
Erweitern der sources.list.
Öffnet mit WinSCP
/etc/apt/sources.list
und folgenden Zeilen am Ende hinzufügen und speichern.
Code:
deb http://www.auto.tuwien.ac.at/~mkoegler/debian eib main deb-src http://www.auto.tuwien.ac.at/~mkoegler/debian eib main deb http://ppa.launchpad.net/mkoegler/bcusdk/ubuntu oneiric main deb-src http://ppa.launchpad.net/mkoegler/bcusdk/ubuntu oneiric main
Danach ein
Code:
cd ~root apt-key add qw apt-get update apt-get install[URL="http://redaktion.knx-user-forum.de/lexikon/eibd/"] eibd[/URL]-clients[URL="http://redaktion.knx-user-forum.de/lexikon/eibd/"] eibd[/URL]-server libeibclient-dev
Code:
eibd -d -i ipt:192.168.0.3
Dazu nutzen wir die Standard Mechanismen von Debian und erstellen eine Datei /etc/init.d/eibd mit folgendem Inhalt:
Code:
#! /bin/sh PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="Description of the service" NAME=eibd DAEMON=/usr/bin/$NAME DAEMON_ARGS="-D -T -S -d -i --pid-file=/var/run/eibd.pid ipt:192.168.0.6" PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME # Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh # Define LSB log_* functions. # Depend on lsb-base (>= 3.0-6) to ensure that this file is present. . /lib/lsb/init-functions # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS \ || return 2 # Add code here, if necessary, that waits for the process to be ready # to handle requests from services started subsequently which depend # on this one. As a last resort, sleep for some time. } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 # Wait for children to finish too if this is a daemon that forks # and if the daemon is only ever run from this initscript. # If the above conditions are not satisfied then add some other code # that waits for the process to drop all resources that could be # needed by services started subsequently. A last resort is to # sleep for some time. start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON [ "$?" = 2 ] && return 2 # Many daemons don't delete their pidfiles when they exit. rm -f $PIDFILE return "$RETVAL" } # # Function that sends a SIGHUP to the daemon/service # do_reload() { # # If the daemon can reload its configuration without # restarting (for example, when it is sent a SIGHUP), # then implement that here. # start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME return 0 } case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; #reload|force-reload) # # If do_reload() is not implemented then leave this commented out # and leave 'force-reload' as an alias for 'restart'. # #log_daemon_msg "Reloading $DESC" "$NAME" #do_reload #log_end_msg $? #;; restart|force-reload) # # If the "reload" option is implemented then remove the # 'force-reload' alias # log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 exit 3 ;; esac
Für KNX via IP: (IP natürlich anpassen)
Code:
DAEMON_ARGS="-D -T -S -d -i --pid-file=/var/run/eibd.pid ipt:192.168.0.6"
Code:
chmod a+x /etc/init.d/eibd
Code:
cd /etc/init.d/ rcconf
test ob Eibd funktioniert (1/0/23 = eine GA eines z.B. Lichtes, die 1 einschalten, 0 wäre dann ausschalten)
Licht an
Code:
groupswrite ip:127.0.0.1 1/0/23 1
Licht aus:
Code:
groupswrite ip:127.0.0.1 1/0/23 0
Installation Smarthome.py
Benutzer smarthome bearbeiten:
Code:
sudo usermod -G www-data,sudo -a smarthome
Code:
cd /usr sudo git clone git://github.com/mknx/smarthome.git sudo mkdir -p /usr/smarthome/var/run sudo chown -R smarthome:smarthome /usr/smarthome
logic.conf (erstmal leer)
smarthome.conf
Inhalt:
Code:
# /usr/local/smarthome/etc/smarthome.conf lat = 51.15482 lon = 13.96297 elev = 500 tz = 'Europe/Berlin' plugin.conf Inhalt: # /usr/local/smarthome/etc/plugin.conf [knx] class_name = KNX class_path = plugins.knx # host = 192.168.0.3 # port = 6720 # send_time = 600 # update date/time every 600 seconds, default none # time_ga = 1/1/1 # default none # date_ga = 1/1/2 # default none #[ow] # class_name = OneWire # class_path = plugins.onewire # host = 127.0.0.1 # port = 4304 [cli] class_name = CLI class_path = plugins.cli ip = 192.168.0.3 update = True [visu] class_name = WebSocket class_path = plugins.visu # ip='0.0.0.0' # port=2424 # visu_dir = /var/www smartvisu_dir = /var/www/ [sql] class_name = SQL class_path = plugins.sqlite #[rrd] # class_name = RRD # class_path = plugins.rrd # step = 300
unter /etc/init.d/ Datei anlegen: smarthome
mit folgendem Inhalt:
Code:
#!/bin/sh ### BEGIN INIT INFO # Provides: smarthome # Required-Start: $syslog $network # Required-Stop: $syslog $network # Should-Start: [URL="http://redaktion.knx-user-forum.de/lexikon/eibd/"] eibd[/URL] owserver # Should-Stop: [URL="http://redaktion.knx-user-forum.de/lexikon/eibd/"] eibd[/URL] owserver # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start[URL="http://redaktion.knx-user-forum.de/lexikon/SmartHome.py/"] SmartHome.[/URL][URL="http://redaktion.knx-user-forum.de/lexikon/py/"]py[/URL] ### END INIT INFO DESC="SmartHome.[URL="http://redaktion.knx-user-forum.de/lexikon/py/"]py[/URL]" NAME=smarthome.[URL="http://redaktion.knx-user-forum.de/lexikon/py/"]py[/URL] SH_ARGS="-q" SH_UID='smarthome' PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin DAEMON=/usr/smarthome/bin/$NAME SCRIPTNAME=/etc/init.d/$NAME PIDFILE=/usr/smarthome/var/run/smarthome.pid [ -x "$DAEMON" ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME DAEMON_ARGS="$SH_ARGS" do_start() { sudo -u $SH_UID $DAEMON $DAEMON_ARGS ps ax | grep $DAEMON | grep -v grep | awk '{print $1}' > $PIDFILE } do_stop() { sudo -u $SH_UID $DAEMON --stop rm -f $PIDFILE } do_reload() { sudo -u $SH_UID $DAEMON --reload return 0 } case "$1" in start) do_start ;; stop) do_stop ;; #reload|force-reload) #echo "Reloading $DESC" "$NAME" #do_reload #log_end_msg $? #;; restart) # # If the "reload" option is implemented then remove the # 'force-reload' alias # echo "Restarting $DESC" "$NAME" do_stop sleep 1 do_start ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 exit 3 ;; esac exit 0
Code:
cd /etc/init.d/ chmod 755 smarthome update-rc.d smarthome defaults
Smartvisu installieren:
aktuelle Version checken (hier die 2.7, ggf. dann die nummer in den Anweisungen ersetzen) laden und in den Apache entpacken:
Code:
cd /var/www sudo rm index.html sudo wget http://smartvisu.googlecode.com/files/smartVISU_2.7.zip sudo unzip smartVISU_2.7.zip sudo rm smartVISU_2.7.zip
Code:
sudo chown -R www-data:www-data[URL="http://redaktion.knx-user-forum.de/lexikon/smartVISU/"] smartVISU[/URL] sudo chmod -R 775[URL="http://redaktion.knx-user-forum.de/lexikon/smartVISU/"] smartVISU[/URL]
Hinweis:
Apache nimmt sich Rechte am Ordner icons, daher symlink alias.conf löschen unter:/etc/apache2/mods-enabled
Viel Spass
Gruß Haxley