Ankündigung

Einklappen
Keine Ankündigung bisher.

Raspberry Image Version 2.2 mit SmarthomeNG 1.5.1

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    magiczambo Im Image müsste eigtl. die IP für die Visu auskommentiert sein. Außer du hast die allererste Version geladen - ganz kurze Zeit war da tatsächlich das mit localhost drin, was sich leider als Blödsinn heraus gestellt hat

    Kommentar


      Zitat von magiczambo Beitrag anzeigen
      32 MB? Da würde ich tatsächlich eine andere wählen!
      Uuups - das waren noch Zeiten mit dem Tandy TRS-80 bzw. Video-Genie mit seinen 64 MB (mein erster Computer) :träum: Irgendwie bin ich da stehen geblieben

      OK - also danke erst mal für die Tipps. Das neue Image läuft jetzt doch auch tatsächlich auf meinem Raspi 3 ...
      ... ich hatte mir mal zum Testen einen Raspi 2 von meinem Neffen besorgt und da lief das Image auf Anhieb. Auch gab mir mein Neffe den Tipp, dass der Raspi3 ja jetzt WLAN on board hat und vielleicht etwas mehr Saft braucht.

      Und siehe da - mit einem 2 A Netzteil war alles in Butter!

      Viele Grüße,

      Stefan

      Mein Sammelsurium: TS2, Zennio Z38, Siemens LOGO!, Medeodata 140 S, Weinzierl KNX ENO 620, Eibmarkt IP Router, MDT KNX IP IF, Wiregate, Node-Red mit KNX Ultimate, MDT Smart II, diverse Aktoren verschiedener Hersteller ...

      Kommentar


        Mini-Update 2.0.1
        Neben tendenziellen kosmetischen Änderungen ist nun auch mysql und phpmyadmin mit an Board. Für alle, die das neue Database Plugin mit mysql nutzen bzw. zumindest testen wollen.

        Wer 2.0 hat, muss nicht wirklich updaten... ich hoffe jetzt auch generell, dass sich's mit dem Image nun hat.
        Wenn Interesse besteht, kann ich auch die Ansible Playbooks veröffentlichen, die ich zum Erstellen des Images genutzt habe. So könnte auch jeder schnell sein eigenes Image nach Belieben zusammen stellen. Ansible auf einem anderen Rechner installieren, Hosts konfigurieren, Original Raspbian Lite auf SD installieren, in Raspi stecken und los geht's...

        Kommentar


          Zitat von Onkelandy Beitrag anzeigen
          Wenn Interesse besteht, kann ich auch die Ansible Playbooks veröffentlichen, die ich zum Erstellen des Images genutzt habe.
          Ja sehr gerne, am besten in einem eigenen repo auf der smarthomeNG Github Seite.

          Wir machen gerade das gleiche für Docker und

          Msinn

          hat einen Bereich dafür angelegt.

          https://github.com/smarthomeNG/docker

          Für Ansible dann entsprechend:

          https://github.com/smarthomeNG/ansible

          fände ich gut.

          Gruß,
          Henning

          Kommentar


            https://github.com/smarthomeNG/ansible

            Kommentar


              erledigt...
              Zuletzt geändert von Hochpass; 03.10.2017, 20:31.
              Zapft ihr Narren der König hat Durst

              Kommentar


                So, ich habe am langen Wochenende nun auch den Umstieg gemacht.
                Hat eigentlich alles super funktioniert.

                Zwei Dinge musste ich noch ändern:

                Ich musste bei dem Pi3 unbedingt die Bluetooth Schnittstelle deaktivieren. Ansonsten hatte ich verzögerungen beim Schalten über KNXD von manchmal bis zu 10Sekunden.
                Nach dem Deaktivieren funktioniert wieder alles wie gewohnt.
                In der /boot/config.txt folgendes einfügen:
                Code:
                 dtoverlay=pi3-disable-bt
                Und dann noch ein:
                Code:
                 sudo systemctl disable hciuart
                Und ich musste die Rechte für das Dashbuttonplugin noch setzen. Aber das sollte ja klar sein, wenn man ein Plugin startet...
                Code:
                 sudo setcap cap_net_raw=eip /usr/bin/python3.4 sudo setcap cap_net_raw=eip /usr/sbin/tcpdump
                Auf jeden Fall vielen Dank an Onkelandy!
                Zuletzt geändert von schuma; 04.10.2017, 11:29.

                Kommentar


                  Ich habe auch auf die neuen Version umgestellt. Super gelaufen!!

                  Ein kleines Problem habe ich noch.
                  In der 2.0 hatte ich eine eigene MariaDB angelegt und ein Backup erzeugt.

                  Meine alte DB war unter mysql -u root -pdbaxx erreichbar.. Hier finde ich auch
                  MariaDB [(none)]> show databases;
                  +--------------------+
                  | Database |
                  +--------------------+
                  | information_schema |
                  | mysql |
                  | performance_schema |
                  |früher portfolio (meine table ) | jetzt steht hier phpmyadmin
                  +--------------------+

                  Mit source /usr/local/smarthome/var/eig/portfoliodb_sav/20170921-120150portfolio.sql kann ich meine Datenbank nicht mehr rückladen.

                  -- MySQL dump 10.16 Distrib 10.1.23-MariaDB, for debian-linux-gnueabihf (armv7l)
                  --
                  -- Host: localhost Database: portfolio
                  -- ------------------------------------------------------
                  -- Server version 10.1.23-MariaDB-9+deb9u1

                  /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
                  /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
                  /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
                  /*!40101 SET NAMES utf8mb4 */;
                  /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
                  /*!40103 SET TIME_ZONE='+00:00' */;
                  /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
                  /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
                  /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
                  /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

                  --
                  -- Table structure for table `depwerte`
                  --

                  DROP TABLE IF EXISTS `depwerte`;
                  /*!40101 SET @saved_cs_client = @@character_set_client */;
                  /*!40101 SET character_set_client = utf8 */;
                  CREATE TABLE `depwerte` (
                  `_index` int(11) unsigned NOT NULL AUTO_INCREMENT,
                  ...
                  Per Programm kann die Datenbank nicht mehr angelegt werden.

                  mariadb 111 connection refused
                  mysqld.sock doesn't exist

                  Gibt es hier Rechteprobleme oder ein anderes Passwort?

                  Ich stehe auf dem Schlauch!

                  Wolfgang

                  Ich bin jetzt etwas weiter.
                  Der Beitrag
                  https://stackoverflow.com/questions/...ld-mysqld-sock
                  half mir die DB-Rechte neu zu setzen:
                  UPDATE mysql.user SET authentication_string=PASSWORD('dbaxxx') WHERE user='root' AND host='localhost';

                  Danach konnte ich meine Datenbank anlegen und den Reload ausführen.
                  Unter root und sudo kann ich jetzt alles ausführen.

                  Aus smarthome als User smarthome versorge ich den Aufruf mit
                  Main Logger : <logging.Logger object at 0x7204ded0>
                  Main db : portfolio
                  Main host : localhost
                  Main rootuser : root
                  Main rootPW : dbaxxx
                  Main user : smarthome
                  in im Init

                  def A01_connect_db(self):
                  if self._tracetest>0:
                  self.logger.info("*************************")
                  self.logger.info("A01_CONNECT DB")
                  self.logger.info("*************************")

                  try:
                  return pymysql.connect(host=self._host, user=self._rootuser,
                  password=self._rootpassword,
                  charset='utf8')
                  # charset='utf8',
                  # cursorclass=pymysql.cursors.DictCursor)
                  if self._traceaktie>0:
                  self.logger.info("*************************")
                  self.logger.info("CONNECTED TO DB")
                  self.logger.info("*************************")

                  except pymysql.err.OperationalError as e:
                  self.logger.info("Error connecting to mysql: {0}".format(e))
                  return False

                  #------------------------------------------- A02_check_db --------------------------------------------------------------------
                  def A02_check_db(self):

                  if self._tracetest>0:
                  self.logger.info("hier *************** A02_check_db *******************")

                  dbconn = self.A01_connect_db()
                  cursor = dbconn.cursor()
                  cursor.execute("use `" + self._db + "`")

                  # execute SQL query using execute() method.
                  cursor.execute("SELECT VERSION()")

                  # Fetch a single row using fetchone() method.
                  data = cursor.fetchone()
                  self._dbversion = data
                  if self._traceaktie>0:
                  self.logger.info("Database version : {0}".format(self._dbversion))
                  # Prüfe ob table vorhanden

                  try:
                  self.logger.info("Prüfe ob Database {0} vorhanden ist!".format(self._db))
                  cursor = dbconn.cursor()
                  self._sw_DBfehlt = False
                  self.logger.info("Database {0} ist vorhanden ".format(self._db))

                  except pymysql.err.OperationalError as e:
                  ## self.logger.info("Error use Database: {0}".format(e))
                  raise
                  self.logger.info("Database {0} nicht vorhanden ".format(self._db))
                  self._sw_DBfehlt = True
                  Das Ergebnis ist
                  File "/usr/local/smarthome/plugins/aaportfolio/__init__.py", line 153, in __init__
                  self.A02_check_db()
                  File "/usr/local/smarthome/plugins/aaportfolio/__init__.py", line 216, in A02_check_db
                  cursor = dbconn.cursor()
                  AttributeError: 'bool' object has no attribute 'cursor'
                  Die Lösung läuft unter 2.0 problemlos. Ich vermute ein Rechteproblem.

                  Wer kann mir helfen?

                  Zuletzt geändert von schloessl; 05.10.2017, 18:44. Grund: Neuere Erkenntnisse brachten mich weiter, jedoch nicht zum Ziel.

                  Kommentar


                    hat sich erledigt. Mein Fehler.
                    Zuletzt geändert von Sisamiwe; 09.10.2017, 07:36.

                    Kommentar


                      Onkelandy Könntest Du bitte noch ein paar Informationen zur Konfiguration von phpmyadmin und mariadb im Image 2.0.1 bereitstellen? Im Wiki steht nur, dass es nun mit dabei ist, aber nicht wie es konfiguriert wurden.
                      DANKE.

                      Kommentar


                        Ups, hier die Infos:
                        https://sourceforge.net/p/smarthomen...ge/wiki/mysql/

                        Wie bei den meisten anderen Service auch, ist es nötig, via systemctl start mysql zu starten. Für dauerhaften Einsatz zusätzlich: systemctl enable mysql

                        Kommentar


                          schloessl Du schreibst:
                          In der 2.0 hatte ich eine eigene MariaDB angelegt und ein Backup erzeugt.
                          Die Lösung läuft unter 2.0 problemlos. Ich vermute ein Rechteproblem.

                          Hast du die Probleme also erst mit 2.0.1? Dort ist alles schon angelegt.. Infos siehe Wiki. Ich habe mal getestet, eine Datenbank in die bestehende zu importieren. Via phpmyadmin auch nach Anpassen sämtlicher PHP Optionen dauerte das zu lange und brach ab. Via Commandline hat es aber geklappt.

                          Kommentar


                            Onkelandy DANKE

                            Das hat mich weiter gebracht. Allerdings stimmt das neue WIKI zu mysql nicht bzw. verhält sich das image 2.0.1 bei mir anders:
                            • Datenbank smarthome-DB ist noch nicht angelegt
                            • user smarthome ist noch nicht angelegt (Demzufolge auch kein Passwort)
                            • user root hat kein Passwort (Deswegen ist ein Login via phpmyadmin nicht möglich)
                            Wenn man das nachholt, klappt es.
                            Zuletzt geändert von Sisamiwe; 09.10.2017, 19:49. Grund: Getestet

                            Kommentar


                              Tatsache? Das wäre bitter, dann hat was nicht geklappt. Hast du ein mysqlinit im root Ordner?
                              Dann nach dem Stoppen des Services das hier ausführen: mysql -uroot -proot mysql < /root/mysqlinit

                              Ansonsten bitte gerne mal die Datei anlegen und danach ausführen. Dann sollten alle User und Datenbank hergestellt werden...
                              Code:
                                      DELETE FROM user WHERE USER = 'root' AND HOST = 'localhost';
                                      CREATE USER 'root'@'%' IDENTIFIED BY 'smarthome';
                                      GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
                                      CREATE DATABASE smarthome;
                                      CREATE USER 'smarthome'@'localhost' IDENTIFIED BY 'smarthome';
                                      GRANT ALL PRIVILEGES ON smarthome.* TO 'smarthome'@'localhost' WITH GRANT OPTION;
                                      CREATE USER 'smarthome'@'%' IDENTIFIED BY 'smarthome';
                                      GRANT ALL PRIVILEGES ON smarthome.* TO 'smarthome'@'%' WITH GRANT OPTION;
                                      FLUSH PRIVILEGES;

                              Kommentar


                                Onkelandy
                                Also die Datein mysqlinit gibt es im Verzeichnis /root/. Diese enthält
                                Code:
                                # BEGIN ANSIBLE MANAGED BLOCK
                                DELETE FROM user WHERE USER = 'root' AND HOST = 'localhost';
                                CREATE USER 'root'@'%' IDENTIFIED BY 'smarthome';
                                GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
                                CREATE DATABASE smarthome;
                                CREATE USER 'smarthome'@'localhost' IDENTIFIED BY 'smarthome';
                                GRANT ALL PRIVILEGES ON smarthome.* TO 'smarthome'@'localhost' WITH GRANT OPTION;
                                CREATE USER 'smarthome'@'%' IDENTIFIED BY 'smarthome';
                                GRANT ALL PRIVILEGES ON smarthome.* TO 'smarthome'@'%' WITH GRANT OPTION;
                                FLUSH PRIVILEGES;
                                # END ANSIBLE MANAGED BLOCK
                                Ist aber wahrscheinlich nicht ausgeführt worden.
                                Ausführen von Hand geht.
                                Danke nochmal

                                Kommentar

                                Lädt...
                                X