Raspberry 3 - Download Image funkt nicht

  • Installation
  • Moin,
    versuche mal mit dieser Anleitung die Installation von SHC:

    Source Code

    1. Als erstes muss ein Webserver und PHP installiert werden, ich beschreibe hier wie Apache installiert wird, lighttpd oder nginx können aber genau so verwendet werden.
    2. ~ $ sudo apt-get update
    3. ~ $ sudo apt-get upgrade -y
    4. ~ $ sudo apt-get install git-core
    5. ~ $ sudo apt-get install php5-common php5-cgi php5-cli php-apc
    6. ~ $ sudo apt-get install apache2 libapache2-mod-php5
    7. Falls Raspbian Jessie (Light) verwendet wird, muss der DocumentRoot des Webserver angepasst werden. Dazu in der Datei "sudo nano /etc/apache2/sites-available/000-default.conf" die Zeile 12 mit folgendem Eintrag ersetzen und den Webserver neu starten
    8. /var/www /html -----> Entfernen
    9. Dann
    10. sudo service apache2 restart
    11. 3. Installation Redis und PHPRedis
    12. Redis kann einfach aus den Paketquellen installiert werden -----> (bei Jessie).
    13. ~ $ sudo apt-get install redis-server
    14. ~ $ sudo apt-get install php5-redis
    15. 4. SHC und PCC Installation
    16. Das SHC kann einfach in der aktuellsten Version von GitHub geholt werden und muss dann nur noch installiert werden.
    17. ~ & cd /var/www
    18. /var/www $ sudo git clone https://github.com/agent4788/SHC_Framework
    19. /var/www $ sudo mv SHC_Framework/ shc/
    20. /var/www $ cd shc/
    21. /var/www/shc $ sudo chmod 0777 -R ./
    22. /var/www/shc $ php install.php
    23. 127.0.0.1
    24. 1
    25. 1
    26. nix
    27. soll SHC=ja
    28. soll PCC=ja
    29. /var/www/shc $ sudo chmod 0777 -R ./
    30. Während der Installation wird nach und nach gefragt welche APPs installiert werden sollen. Nach diesen Schritten ist die Weboberfläche einsatzbereit und sollte unter http://192.168.xxx.xxx/shc?app=shc erreichbar sein.
    31. 5. Temp Ordner als Ramdisk konfigurieren
    32. Um die Anwendung zu beschleunigen und die SD Karte vor unnötig vielen Schreibzugriffen zu verschonen empfehle ich den Cache in eine Ramdisk zu verlegen. D.h. das ist ein kleiner Speicherbereich im Arbeitsspeicher der sehr schnell les- und schreibbar ist und dem sehr viele schreibvorgänge nichts aus machen. Damit Linux die Ramdisk beim starten des Raspberry Pi erstellt, muss folgende Zeile in die /etc/fstab Datei eingetragen mit"sudo nano /etc/fstab" werden:
    33. tmpfs /var/www/shc/rwf/data/cache tmpfs nosuid,size=5M 0 0
    34. Wichtig: DIe letzte Zeile der Datei muss eine Leerzeile sein! Nach einem Neustart des Raspberry Pi ist nun alles für die Installation des SHC vorbereitet.
    35. 6. Sheduler konfigurieren
    36. Nachdem die Weboberfläche läuft ist es an der Zeit die wichtigsten Dienste zu installieren/konfigurieren. Im ersten Schritt wird der Sheduler Deamon benötigt, dieser sorgt für die Zeitschaltfunktionen, aktualisiert die Daten von Eingängen und Benutzern zu Hause. Dieser Dienst sollte immer laufen und kann auch nur in der Hauptinstallation genutzt werden. Der Sheduler muss zuerst konfiguriert werden:
    37. /var/www/shc $ php index.php app=shc -sh -c
    38. 10
    39. 2
    40. danach kann er mit folgendem Befehl zum Test gestartet werden:
    41. /var/www/shc $ php index.php app=shc -sh
    42. Erscheint nicht innerhalb von ca. 2 Minuten eine Fehlermeldung ist der Dienst lauffähig und der Testlauf kann mit STRG + C abgebrochen werden.
    43. 7. Schaltserver konfigurieren
    44. Der zweite wichtige Dienst ist der Schaltserver, dieser sendet die 433MHz Befehle, schreibt und liest die GPIO's des Raspberry Pi. Dieser Dienst kann auf dem Raspberry Pi mit der Hauptinstallation laufen, kann aber auch auf einem separaten Raspberry Pi laufen. Im SHC können auch mehrere Schaltserver genutzt werden. Für die Standardinstallation wird hier die Installation auf dem Raspberry Pi mit der Hauptinstallation beschrieben.
    45. Als erstes sollte der Schaltserver mit folgendem Befehl konfiguriert werden:
    46. /var/www/shc $ php index.php app=shc -ss -c
    47. 192.168.xxx.xxx
    48. 9274
    49. 11
    50. ja
    51. ja
    52. ja
    53. Die Serveradresse und der Port können bei der Standardeinstellung '127.0.0.1:9273' belassen werden. Die folgenden Einstellungen richten die Möglichkeiten des Schaltservers ein 433MHz Befehle zu senden, GPIOs zu lesen und/oder zu schreiben.
    54. 8. Wiringpi und Rcswitch-pi installieren
    55. Wiringpi wird für das Lesen und/oder Schreiben von GPIOs, sowie das senden der 433MHz Befehle benötigt.
    56. /var/www/shc $ cd ~
    57. ~ $ git clone git://git.drogon.net/wiringPi
    58. ~ $ cd wiringPi
    59. ~ $ git pull origin
    60. ~ $ ./build
    61. Rcswitch-pi sendet die 433MHz Befehle und wird wie folgt installiert:
    62. ~ $ cd /opt
    63. /opt $ sudo git clone https://github.com/r10r/rcswitch-pi.git
    64. /opt $ cd rcswitch-pi
    65. /opt/rcswitch-pi $ sudo make
    66. 8.1 Pilight konfigurieren (wenn benötigt)
    67. ~# sudo -i
    68. ~# nano /etc/apt/sources.list
    69. „deb http://apt.pilight.org/ stable main “ << am Ende der Datei Einfügen.
    70. ~# wget -O - http://apt.pilight.org/pilight.key | apt-key add -
    71. ~# apt-get update
    72. ~# apt-get install pilight
    73. Pilight Webserver disable
    74. Zusätzlich kann in der "sudo nano /etc/pilight/config.json" Datei die Weboberfläche von Pilight deaktiviert werden, dieser wird vom SHC geliefert.
    75. "webserver-­-enable": 0"
    76. 9. sudoers Datei einrichten
    77. Welche Anpassungen an der sudoers Datei nötig sind, ist in dem Artikel sudoers Datei anpassen beschrieben.
    78. sudo visudo
    79. in die datei am Ende einfügen
    80. www-data ALL = NOPASSWD: /opt/rcswitch-pi/send
    81. www-data ALL = NOPASSWD: /usr/local/bin/pilight-send
    82. www-data ALL = NOPASSWD: /sbin/reboot, /sbin/halt
    83. www-data ALL = NOPASSWD: /var/www/shc/shc/lib/external/python/dht.py
    84. www-data ALL = NOPASSWD: /var/www/shc/shc/lib/external/python/bmp.py
    85. 10. Autostart einrichten
    86. Ist alles entsprechend installiert sollte man kurz testen ob der Dienst Fehlerfrei startet. Dies macht man wie folgt:
    87. ~ $ cd /var/www/shc
    88. /var/www/shc $ php index.php app=shc -ss
    89. Darauf hin sollte eine grün hinterlegte Meldung erscheinen die besagt das der Server läuft. Erscheint eine Fehlermeldung muss diese zuerst behoben werden.
    90. Ist alles erfolgreich installiert und auch der Test erfolgreich durchlaufen, kann der Autostart wie folgt eingerichtet werden:
    91. /var/www/shc $ sudo mv shcd.sh /etc/init.d/shcd
    92. /var/www/shc $ sudo update-rc.d shcd defaults
    93. 11. Sensorsender installieren:
    94. cd /var/www/shc
    95. /var/www/shc $ sudo chmod 0777 -R ./
    96. /var/www/shc $ php index.php app=shc -st -c
    97. ja
    98. 127.0.0.1
    99. 80
    100. ID 10
    101. Status Led 10
    102. 12. DHT Sensoren installieren: (wenn benötigt)
    103. ~ $ sudo apt-get install build-essential python-dev
    104. ~ $ git clone https://github.com/adafruit/Adafruit_Python_DHT
    105. ~ $ cd Adafruit_Python_DHT
    106. ~/Adafruit_Python_DHT $ sudo python setup.py install
    107. sudo visudo
    108. www-data ALL = NOPASSWD: /var/www/shc/shc/lib/external/python/dht.py
    109. am Ende eine Leerzeile
    110. 13. BMP installieren : (wenn benötigt)
    111. Am Master nicht, nur wenn BMP auch am Master.
    112. Nur am Slave, wenn kein BMP am Master.
    113. 1.
    114. I2C Schnittstelle in der raspi-config einschalten
    115. sudo raspi-config
    116. 2.
    117. Das auslesen von BMP Sensoren wird nicht direkt vom Raspberry Pi unterstützt und erfordert zusätzliche Treiber. Das SHC verwendet die Adafruit BMPPython Libary die wie folgt installiert wird:
    118. ~ $ git clone https://github.com/adafruit/Adafruit_Python_BMP
    119. ~ $ cd Adafruit_Python_BMP
    120. ~/Adafruit_Python_BMP $ sudo python setup.py install
    121. 3.
    122. Nun müssen die Kernelmodule aktiviert werden. In der Datei “/etc/modules” müssen folgende Module hinzugefügt werden.
    123. sudo nano /etc/modules
    124. i2c-bcm2708
    125. i2c-dev
    126. 4.
    127. In der Datei “/etc/modprobe.d/raspi-blacklist.conf” muss der Eintrag “blacklist i2c-bcm2708? auskommentiert bzw. entfernt werden.
    128. sudo nano /etc/modprobe.d/raspi-blacklist.conf
    129. blacklist spi-bcm2708
    130. blacklist i2c-bcm2708
    131. sudo apt-get install python-smbus i2c-toolsvisudp
    132. Damit die Luftdruckmessung später nicht ständig mit Superuser-Rechten laufen muss, sollte der entsprechende Benutzer (zum Beispiel der Standardbenutzer pi) Mitglied der Gruppe i2c sein:
    133. sudo adduser pi i2c
    134. 5.
    135. Bei smbus error
    136. sudo apt-get install python-smbus
    137. nach installieren.
    138. 6.
    139. Danach muss das Script zum auslesen von BMP Sensoren noch in der sudoers Datei eingetragen werden. Das ist im Artikel sudoers Datei anpassen beschrieben.
    140. cd /var/www/shc
    141. sudo visudo
    142. www-data ALL = NOPASSWD: /var/ww/shc/shc/lib/external/python/bmp.py
    143. 7.
    144. Nach der Installation müssen die einzelnen Sensoren noch am Sensor sender angemeldet werden dazu muss folgender Befehl aufgerufen werden:
    145. cd /var/www/shc
    146. /var/www/shc $ php index.php app=shc -st -enableBMP 77
    147. /var/www/shc $ php index.php app=shc -st -disableBMP 77
    148. Danach werden automatisch die ausgelesenen Daten der angemeldeten DHT Sensoren an den Sensor Empfänger gesendet. Es kann nur ein BMP Sensor pro Raspberry Pi verwendet werden.
    149. Nach einem weiteren Neustart des Systems sollten alle Dienste automatisch starten und das SHC ist einsatzbereit.
    Display All
    Kann besser Hardware als Software !
  • das bedeutet das shc keine Verbindung zur redis Datenbank bekommen kann. versuch mal:
    pi@RasPi-Server ~ $ sudo /etc/init.d/redis-server status
    redis-server.service - Advanced key-value store
    Loaded: loaded (/lib/systemd/system/redis-server.service; enabled)
    Active: active (running) since Mi 2016-09-14 21:16:30 CEST; 3 weeks 3 days ago
    Main PID: 8897 (redis-server)
    CGroup: /system.slice/redis-server.service
    └─8897 /usr/bin/redis-server *:6379

    Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
    wenn das Ergebnis von dem roten Befehl nicht ähnlich aussieht mit dem Ergebnis in blau dann läuft redis nicht. entweder ist bei der installation etwas schief gelaufen, oder du musst redis noch mal starten mit:
    sudo /etc/init.d/redis-server restart
    oder
    sudo /etc/init.d/redis-server start
    Gruß

    Matthias
    1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 2x RasPi Zero, 1x RadPi 4 (4GB) 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

    BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
    NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV
  • dann bedeutet das, das entweder der redis server auf eine andere IP hört, zB die externe 192.168......., oder das ein Passwort festgelegt wurde das bei der shc installation natürlich auch angegeben werden muss.

    versuch mal:
    sudo nano /etc/redis/redis.conf
    dort such dann nach dem Eintrag:
    # By default Redis listens for connections from all the network interfaces
    # available on the server. It is possible to listen to just one or multiple
    # interfaces using the "bind" configuration directive, followed by one or
    # more IP addresses.
    #
    # Examples:
    #
    # bind 192.168.1.100 10.0.0.1
    dort könnte eine IP Adresse eingetragen sein, außerdem schau nach dem Eintrag:
    ################################## SECURITY ###################################

    # Require clients to issue AUTH <PASSWORD> before processing any other
    # commands. This might be useful in environments in which you do not trust
    # others with access to the host running redis-server.
    #
    # This should stay commented out for backward compatibility and because most
    # people do not need auth (e.g. they run their own servers).
    #
    # Warning: since Redis is pretty fast an outside user can try up to
    # 150k passwords per second against a good box. This means that you should
    # use a very strong password otherwise it will be very easy to break.
    #
    # requirepass

    wenn bei requirepass etas eingetragen ist muss das Passwort auch beim verbinden zu dem redis server verwendet werden.

    wenn dort teile der datei geändert werden, muss nach dem speichern redis neu gestartet werden.


    sudo /etc/init.d/redis-server restart
    Gruß

    Matthias
    1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 2x RasPi Zero, 1x RadPi 4 (4GB) 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

    BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
    NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV