BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Fragen, Support etc.

Moderator: Co-Administratoren

stryke
Beiträge: 477
Registriert: 09.03.2012, 14:39
Wohnort: Rhein-Main

BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von stryke » 14.01.2016, 07:39

Hallo zusammen,

ich möchte Euch gerne die BETA Anleitung zur Installation des RaspberryMatic Images auf einem Raspbian zur Verfügung stellen. Über Verbesserungsvorschläge freue ich mich.
Die Anleitung ist nicht für Linux Einsteiger gedacht sondern für den Poweruser der seinen Raspi gerne noch für weitere Aufgaben nutzen möchte.

Zur Datenübernahme gelten die gleichen Bedingungen wie für das RaspberryMatic Image. (2) Datenübernahme von CCU2 oder LXCCU:

Java ist bereits erhalten und muss nicht extra installiert werden.

Nicht funktionsfähige Punkte bzw. unnötige Punkte in der GUI
- Netzwerkkonfiguration
- SSH Konfiguration
- Timeserver
- Firewall
- automatischer Start nach Reboot, bitte vorerst mit /etc/init.d/occ starten

Nach erfolgreichem testen solltet Ihr dringend das root Passwort ändern! :wink:

Viel Spass beim Testen :)
Stryke

Code: Alles auswählen

#Vorraussetzungen
#--------------------------------------------------

# 16GB SD Karte
# raspbian-ua-netinst - Raspbian unattended netinstaller
# https://github.com/debian-pi/raspbian-ua-netinst
# Nach der Anleitung auf obiger Seite eine SD Karte vorbereiten.
# Bevor von der SD Karte installiert wird, die angehängte Datei installer-config.txt auf die SD-Karte kopieren
# von der SD Karte booten und warten, Ihr erhaltet dadurch ein Raspbian Basic Image
# Mit der installer-config.txt erhaltet Ihr eine 12 GB Große root Partition, der Rest bleibt vorerst frei
# User: root Passwort: 1
# mit dem Parameter rootsize=+12288M in der installer-config.txt könnt Ihr die Größe der root Partition festlegen.
# Mindesten 2GB sollten für /usr/local frei bleiben!

#raspi_basic_config
#--------------------------------------------------

dpkg-reconfigure locales
# de_DE ISO-8859-1
# de_DE.UTF-8 UTF-8
# de_DE@euro ISO-8859-15
# de_DE.UTF-8 UTF-8 als Haupt locales wählen
dpkg-reconfigure tzdata
# Europa -> Berlin

apt-get -q=2 install libatomic1 libdaemon0 curl libpcap0.8 lighttpd iptables ifplugd unzip inetutils-syslogd fdflush setserial i2c-tools msmtp pcregrep rsync rpi-update openvpn tcl udhcpc dma i2c-tools mtd-utils
rpi-update

# /usr/local muss eine eigene Partition sein, nur dann funktioniert es mit den Backups!
#Eigene Partition /usr/local erstellen
echo -e "n\np\n3\n\n+2G\nw" | fdisk /dev/mmcblk0
reboot
echo "/dev/mmcblk0p3 /usr/local ext4 errors=remount-ro,noatime 0 0" >> /etc/fstab
mkfs.ext4 /dev/mmcblk0p3
# Achtung manuelle Eingabe erforderlich
mount /usr/local
mkdir /usr/local/bin 
mkdir /usr/local/etc 
mkdir /usr/local/games 
mkdir /usr/local/include 
mkdir /usr/local/lib 
mkdir /usr/local/sbin 
mkdir /usr/local/share 
mkdir /usr/local/src 
mkdir /usr/local/share/man
ln -s /usr/local/share/man /usr/local/man


#RaspberryMatic Image laden und unter /mnt/image mounten
#--------------------------------------------------

#wget -O RaspberryMatic-2.15.5-3.img.zip "http://update.homematic.com/firmware/download?cmd=download&version=2.15.5&serial=TMP&lang=de&product=HM-IMAGE-RASPBERRYMATIC"
wget -O /root/RaspberryMatic-2.15.5-3.img.zip "http://update.homematic.com/firmware/download?cmd=download&version=2.15.5&serial=TMP&lang=de&product=HM-IMAGE-RASPBERRYMATIC"
unzip RaspberryMatic-2.15.5-3.img.zip
# Das entpacken benötigt ca. 10 Minuten, nicht ungeduldig werden
mkdir /mnt/image
mount /root/raspberrymatic-2.15.5-3.img /mnt/image -ooffset=$((22528*512))

#copy /bin
#--------------------------------------------------

mkdir -p /opt/hm/bin
mkdir -p /opt/hm/sbin

cp /mnt/image/bin/ReGaHss /opt/hm/bin
cp /mnt/image/bin/SetInterfaceClock /opt/hm/bin 
cp /mnt/image/bin/checkDHCP /opt/hm/bin
cp /mnt/image/bin/crypttool /opt/hm/bin
cp /mnt/image/bin/dhcp.script /opt/hm//bin
cp /mnt/image/bin/dhcp_check.script /opt/hm/bin
cp /mnt/image/bin/eq3configcmd /opt/hm/bin
cp /mnt/image/bin/eq3configd /opt/hm/bin
cp /mnt/image/bin/hm_autoconf /opt/hm/bin
cp /mnt/image/bin/hm_deldev /opt/hm/bin
cp /mnt/image/bin/hm_startup /opt/hm/bin
cp /mnt/image/bin/hs485d /opt/hm/bin
cp /mnt/image/bin/hs485dLoader /opt/hm/bin
cp /mnt/image/bin/hss_led /opt/hm/bin
cp /mnt/image/bin/mountSD /opt/hm/bin
cp /mnt/image/bin/ntpclient /opt/hm/bin
cp /mnt/image/bin/rfd /opt/hm/bin
cp /mnt/image/bin/setHWClock.sh /opt/hm/bin
cp /mnt/image/bin/setclock /opt/hm/bin
cp /mnt/image/bin/setfirewall.tcl /opt/hm/bin
cp /mnt/image/bin/setlgwkey.sh /opt/hm/bin
cp /mnt/image/bin/ssdpd /opt/hm/bin
cp /mnt/image/bin/tclsh /opt/hm/bin
cp /mnt/image/bin/update_firmware_pre /opt/hm/bin
cp /mnt/image/bin/update_firmware_run /opt/hm/bin
cp /mnt/image/bin/yaku-ns /opt/hm/bin
cp /mnt/image/sbin/daemonize /opt/hm/sbin

ln -s /opt/hm/bin/ReGaHss /bin
ln -s /opt/hm/bin/SetInterfaceClock /bin
ln -s /opt/hm/bin/checkDHCP /bin 
ln -s /opt/hm/bin/crypttool /bin
ln -s /opt/hm/bin/dhcp.script /bin
ln -s /opt/hm/bin/dhcp_check.script /bin
ln -s /opt/hm/bin/eq3configcmd /bin
ln -s /opt/hm/bin/eq3configd /bin
ln -s /opt/hm/bin/hm_autoconf /bin
ln -s /opt/hm/bin/hm_deldev /bin
ln -s /opt/hm/bin/hm_startup /bin
ln -s /opt/hm/bin/hs485d /bin
ln -s /opt/hm/bin/hs485dLoader /bin
ln -s /opt/hm/bin/mountSD /bin
ln -s /opt/hm/bin/rfd /bin
ln -s /opt/hm/bin/setclock /bin
ln -s /opt/hm/bin/setfirewall.tcl /bin
ln -s /opt/hm/bin/setlgwkey.sh /bin
ln -s /opt/hm/bin/ssdpd /bin
ln -s /opt/hm/bin/tclsh /bin
ln -s /opt/hm/bin/update_firmware_pre /bin
ln -s /opt/hm/bin/update_firmware_run /bin  
ln -s /usr/sbin/syslogd /sbin/syslogd
ln -s /usr/bin/vi /bin
ln -s /opt/hm/sbin/daemonize /sbin

#copy firmware & HM specific
#--------------------------------------------------

cp -R /mnt/image/firmware /
cp /mnt/image/boot/VERSION /boot
cp -R /mnt/image/opt/HMServer /opt

#copy lib
#--------------------------------------------------

mkdir -p /opt/hm/lib
cp /mnt/image/lib/libLanDeviceUtils.so /opt/hm/lib
cp /mnt/image/lib/libUnifiedLanComm.so /opt/hm/lib
cp /mnt/image/lib/libXmlRpc.so /opt/hm/lib
cp /mnt/image/lib/libelvutils.so /opt/hm/lib
cp /mnt/image/lib/libeq3config.so /opt/hm/lib
cp /mnt/image/lib/libfirewall.tcl /opt/hm/lib
cp /mnt/image/lib/libhsscomm.so /opt/hm/lib
cp /mnt/image/lib/libtcl8.2.so /opt/hm/lib
cp /mnt/image/lib/libxmlparser.so /opt/hm/lib
cp /mnt/image/lib/tclrega.so /opt/hm/lib
cp /mnt/image/lib/tclrpc.so /opt/hm/lib
cp /mnt/image/lib/tclticks.so /opt/hm/lib
cp -R /mnt/image/lib/tcl8.2 /opt/hm/lib

ln -s /opt/hm/lib/libLanDeviceUtils.so /lib
ln -s /opt/hm/lib/libUnifiedLanComm.so /lib
ln -s /opt/hm/lib/libXmlRpc.so /lib
ln -s /opt/hm/lib/libelvutils.so /lib
ln -s /opt/hm/lib/libeq3config.so /lib
ln -s /opt/hm/lib/libfirewall.tcl /lib
ln -s /opt/hm/lib/libhsscomm.so /lib
ln -s /opt/hm/lib/libtcl8.2.so /lib
ln -s /opt/hm/lib/libxmlparser.so /lib
ln -s /opt/hm/lib/tclrega.so /lib
ln -s /opt/hm/lib/tclrpc.so /lib
ln -s /opt/hm/lib/tcl8.2 /lib

#copy www
#--------------------------------------------------

cp -R /mnt/image/www /

#copy & prepare etc
#--------------------------------------------------

/etc/init.d/lighttpd stop
cp -R /mnt/image/usr/local/etc /usr/local/
cp -R /mnt/image/etc/config_templates /mnt/image/etc/lighttpd /mnt/image/etc/rega.conf /mnt/image/etc/ifplugd /etc
cp -R /mnt/image/etc/init.d/S* /etc/init.d/
cp /mnt/image/etc/rega.conf /etc
ln -s /usr/local/config/TZ /etc/TZ


ln -s /usr/local/etc/config /etc/config

/etc/init.d/lighttpd start
sed -i 's/  PATH=\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\"/  PATH=\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/opt\/hm\/bin:\/opt\/hm\/sbin\"/g' /etc/profile
sed -i 's/		start-stop-daemon -S -q -p \/var\/run\/HMServer.pid --exec java -- -Xmx32m -Dlog4j.configuration=file:\/\/\/etc\/config\/log4j.xml -Dfile.encoding=ISO-8859-1 -jar \/opt\/HMServer\/HMServer.jar \&/		start-stop-daemon -S -q -p \/var\/run\/HMServer.pid --exec \/usr\/bin\/java -- -Xmx32m -Dlog4j.configuration=file:\/\/\/etc\/config\/log4j.xml -Dfile.encoding=ISO-8859-1 -jar \/opt\/HMServer\/HMServer.jar \&/g' /etc/init.d/S61HMServer
echo 'export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/lib:/usr/local/lib:/opt/hm/lib' >> /etc/profile

#Java installieren
#--------------------------------------------------

# Download von http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
# Linux ARM v6/v7 Hard Float ABI
# Datein in das /root Verzeichnis des Rasp kopieren

tar zxvf /root/jdk-8u65-linux-arm32-vfp-hflt.tar.gz -C /opt
ln -s /opt/jdk1.8.0_65 /opt/jre
update-alternatives --install /usr/bin/javac javac /opt/jre/bin/javac 1
update-alternatives --install /usr/bin/java java /opt/jre/bin/java 1
update-alternatives --config javac
update-alternatives --config java

#OCCU starten
#--------------------------------------------------

/etc/init.d/occ
Edit 1: 09.03.2016
SpeedMaxX hat ein Debian kompatibles StartScript gebastelt dieses bitte unter /etc/init.d/occ ablegen. Bitte achtet darauf die Endung .txt weg zu nehmen. Ohne .txt kann ich es nicht hier Hochladen.
occ.txt
(1.79 KiB) 442-mal heruntergeladen

Code: Alles auswählen

chmod +x /etc/init.d/occ
update-rc.d occ defaults
Vielen Dank an SpeedMaxX für seinen Beitrag

Edit 2: 09.03.2016
Falls der HMServer nicht startet passt bitte das Script /etc/init.d/S61HMServer manuell an

Orginal

Code: Alles auswählen

--exec java

Angepasst

Code: Alles auswählen

--exec /usr/bin/java
Dateianhänge
installer-config.txt
(973 Bytes) 440-mal heruntergeladen
Zuletzt geändert von stryke am 09.03.2016, 09:44, insgesamt 2-mal geändert.

bingo7
Beiträge: 4
Registriert: 19.10.2015, 23:25

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von bingo7 » 15.01.2016, 12:28

Danke für deine Arbeit!
Ich bin selbst eher ein Linuxneuling, daher mögen meine folgenden 2 Fragen etwas abwegig sein, da das geschulte Auge wohl auch so die Antwort schon sieht...
Und zwar habe ich mir damals das Modul für den Pi gekauft, in dem glauben nur ein .deb Package installieren zu müssen. Leider warte ich nun schon viele Monate. Das einzige was es gibt sind fertige Betaimages - aber ich nutze mein System ja noch für viele weitere Sachen (Mediacenter, Wetterstation, Sprachsteuerung, Steckdosensteuerung, NAS, Ambilight....) und möchte daher ein vollwertiges Raspbian haben.

Wenn ich es richtig verstanden habe, ist dies grundlegend mit deiner Anleitung möglich, oder? Anders gesagt: ich brauche für deine Anleitung kein frisches Raspbian, sondern kann sie einfach auf meinem bestehenden System ausführen um OCCU nutzen zu können oder?

Meine 2. Frage ist, ob deine Anleitung auch für die neuste Version - Jessie - gilt oder nur für die alte?

Danke nochmals für deine Mühen.

stryke
Beiträge: 477
Registriert: 09.03.2012, 14:39
Wohnort: Rhein-Main

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von stryke » 15.01.2016, 13:04

Hi bingo7,

Du kannst eine abgeänderte Form der Anleitung auch auf einem bestehenden System einsetzen. Wichtig hierbei ist das /usr/local ein Mountpoint ist und von keinen anderen Daten belegt wird.

:!: Bei Backup einspielen wird /usr/local radikal gelöscht! :!:

Mit parted oder ähnlichem sollte es möglich sein die vorhandenen Partitionen zu bearbeiten und Platz für eine /usr/local Partition zu schaffen.

Folgender Teil der Anleitung ist für das erstellen der /usr/local Partition verantwortlich. Ggf. musst Du diesen Teil auslassen.

Code: Alles auswählen

# /usr/local muss eine eigene Partition sein, nur dann funktioniert es mit den Backups!
#Eigene Partition /usr/local erstellen
echo -e "n\np\n3\n\n+2G\nw" | fdisk /dev/mmcblk0
reboot
echo "/dev/mmcblk0p3 /usr/local ext4 errors=remount-ro,noatime 0 0" >> /etc/fstab
mkfs.ext4 /dev/mmcblk0p3
Das mit den Debian Paketen ist nicht so einfach, viele Pfade sind fest in den Konfigurationsdateien und es werden Dateien an festen Orten erwartet obwohl sie im Pfad stehen. Meine Variante ist nicht wirklich sauber, aber immerhin ein Ansatz.

Beim zusammenschreiben der Anleitung habe ich den Link ln -s /opt/hm/bin/crypttool /bin vergessen und mich gewundert warum das Backup einspielen nicht mehr funktioniert. Eigentlich ist /opt/hm/bin/ im Suchpfad, aber es wird nicht akzeptiert wenn es unter /opt/hm/bin/crypttool liegt :?

Zu 2: Es läuft mit jessie, wird auch nach der Anleitung installiert.

Gruß
Stryke

bingo7
Beiträge: 4
Registriert: 19.10.2015, 23:25

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von bingo7 » 15.01.2016, 15:06

Hi stryke,

danke für deine schnelle und umfassende Antwort :) Ich werde mich nächste Woche mal daran versuchen. Sauber oder nicht, langsam gebe ich die Hoffnung auf, dass noch ein .deb Package kommt und ich will den ganzen Kram nicht umsonst gekauft haben :cry:

Gluehwurm
Beiträge: 12435
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von Gluehwurm » 15.01.2016, 15:28

Du weisst aber schon, was BETA bedeutet, oder ??

Gruß
Bruno

bingo7
Beiträge: 4
Registriert: 19.10.2015, 23:25

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von bingo7 » 17.01.2016, 22:34

Hi Bruno,

natürlich weiß ich das - es bedeutet, im milesisches System, die Zahl 2 :D.
Nein im ernst - mir ist nicht ganz klar worauf du hinaus willst? ich habe zwar von Linux nicht so viel Ahnung, aber allgemein technisch gesehen schon. In dem Sinne traue ich mich schon eine Betasoftware bzw. -anleitung zu testen. Mag sein, dass ich, aufgrund der mangelnder Linuxerfahrungen (ich hatte bisher nicht viel Grund, dass System zu nutzen, bin einfach ein Windowsfan) die Anleitung nicht umsetzen kann oder das eine oder andere nicht funktioniert... Dann spiele ich einfach, das zuvor gemachte, Backup wieder ein und gut. Ich sehe daher kein Risiko, mich daran zu versuchen...

Gluehwurm
Beiträge: 12435
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von Gluehwurm » 17.01.2016, 23:06

Hi,

beziehe mich nur auf das "Geheule" :mrgreen:
bingo7 hat geschrieben:langsam gebe ich die Hoffnung auf, dass noch ein .deb Package kommt und ich will den ganzen Kram nicht umsonst gekauft haben :cry:
Das ist alles noch im Anfangsstadium. Von dem her ist jetzt einfach noch zu früh irgendwelche Aussagen zu treffen.

Den Rest darfst Du gerne probieren und ich traue Dir das auch zu. Nur dadurch lernt man (ich auch erst kürzlich :wink: ) über den Windoof-Rand zu schauen. Und ein aktuelles Backup hat noch nie geschadet. Sollte dann zu obigem doch was kommen, kannst Du auch wieder umbauen. Mal schauen, was letztendlich besser läuft.

Schönen Abend
Bruno

bingo7
Beiträge: 4
Registriert: 19.10.2015, 23:25

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von bingo7 » 18.01.2016, 11:47

Hi Bruno,

oh da habe ich deinen Kommentar in "falschen Hals" bekommen :oops: :)
Ja du hast zwar recht, dass alles noch Beta ist und das eine oder andere vielleicht bzw. hoffentlich noch kommen wird - aber es ist jetzt einige Monate schon her, wo ich in einer Zeitschrift von ELV zum 1. mal von dem Raspberry Pi Modul gelesen habe. Und dort wurde einem suggeriert, dass es ein fertiges Package gibt oder zu mindestens sehr bald erscheint (ich weiß es nicht mehr genau). Daraufhin habe ich bei ELV auch das Modul und einige Heizungssteuerungen gekauft. Als dann alles ankam und ich anfangen wollte, fiel mir dann erst einmal auf, dass es überhaupt noch keine Software gibt :evil:. Irgendwann kam dann das 1. Betaimage, damit konnte ich zwar wenigstens die generelle Funktionstüchtigkeit testen, aber praktisch nutzbar war es eben leider nicht für mich. Was mich dabei besonders nervt ist, dass man irgendwie kein Ansprechpartner hat... ELV verweist immer nur auf eQ3. Die aber wiederum haben wohl nicht viel mit dem Modul Zutun (sprich generieren keine Einnahmen dadurch), so dass sie wenig an der Entwicklung der Software interessiert sind (so scheint es mir jedenfalls zu sein).
Kurz um, ich fühle mich da aktuell ein wenig veräppelt :| Und ich weiß noch nicht einmal so wirklich von wem... alles sehr intransparent. Aber so lange es hier noch User gibt, die versuchen selbst Wege zu finden und diese dann auch anderen Usern bereitstellen - sehe ich da doch noch ein wenig Hoffnung ;)

Aber nun ja, das alles hat mit dem eigentlichen Thema nichts mehr zu tun... Ich hoffe ich komme Mittwoch dazu, die Anleitung mal zu testen. Es schaut aber so aus, als ob es erst nächste Woche etwas wird. Ich melde mich dann auf jeden Fall noch einmal.

stryke
Beiträge: 477
Registriert: 09.03.2012, 14:39
Wohnort: Rhein-Main

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von stryke » 19.01.2016, 08:50

Hallo,

BETA heisst in diesem Fall, dass ich es bisher alleine gestestet habe und das auch nicht besonders ausführlich. Mir fehlt ein zweiter Raspi 2 und auch entsprechende Homematic Komponenten. Wenn dann muss ich immer mein Produktivsystem zum testen hernehmen. Das geht aber nur wenn die Familie ausser Haus ist, der WAF ist beim testen nicht besonders hoch :wink:
Das Raspi Funkmodul habe ich nicht, Funk wird bei mir über ein Funk Gateway implementiert. Rückmeldungen sind daher sehr wichtig. Wenn es einmal grundlegend funktioniert ist das erstellen der Debian Pakete keine Herausvorderung mehr.

Gruß
Stryke

kst
Beiträge: 1
Registriert: 30.01.2016, 23:28

Re: BETA Anleitung RaspberryMatic Image nativ auf Raspbian

Beitrag von kst » 30.01.2016, 23:46

läuft soweit SUPER !!

Lan Gateway (der ältere) musste neu eingebunden werden, aus dem Backup wurde zwar der Gateway als Gerät übernommen, war jedoch nicht als Gateway konfiguriert !?
Backup geht Ansich auch komplett mit Addons sofern von Raspianmatic übernommen wird.
Ich habe einfach das Backup incl. Addons von Raspianmatic übernommen.

Ich habe die /etc/init.d/occ mit in die /etc/rc.local gepackt, so startet auch alles automatisch :)
Soweit eine problemlose Übernahme dank copy / paste !

PS: nach Änderung der IP von dhcp auf Static musste ich noch mehrfach neu starten bis das Webinterface problemlos lief, ich vermute mal das das an lokalen Cookies / Cache des Browsers lag.
Soweit jedoch TOP, alle Debian Features verfügbar, so läuft auch ein HA Setup problemlos per keepalived und Monitoring mit Icinga2 :mrgreen:

ich habe das Ganze auf 2 PI2 im HA Setup (per keepalived & virtueller IP) mit je einer 8GB SDCard laufen, reicht auch locker
nach Bereinigung ist da noch reichlich Platz:
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
/dev/mmcblk0p1 122M 45M 78M 37% /boot
/dev/mmcblk0p2 5,6G 928M 4,3G 18% /
/dev/mmcblk0p3 1,6G 54M 1,4G 4% /usr/local

vielen Dank für das HowTo & die Mühe ! :)

Antworten

Zurück zu „Allgemeines zur OCCU“