Probleme mit der Alexa-Fhem Installation

Begonnen von MarkusAutomaticus, 23 Dezember 2016, 20:16:05

Vorheriges Thema - Nächstes Thema

MarkusAutomaticus

Hallo zusammen,

ich bin wie im Wiki https://wiki.fhem.de/wiki/Alexa-Fhem beschrieben vorgegangen und habe das Problem,
dass ich beim Versuch den Key zu kreieren folgenden Fehler bekomme:


markus@Jarvis3:~/alexa/alexa-fhem$ ./createKey.sh
-bash: ./createKey.sh: Keine Berechtigung


Da im Wiki ausdrücklich steht, man solle das nicht mit sudo machen, weiß ich an dieser Stelle nicht weiter.

Der Grund für das Problem könnte sein, dass ich alexa-fhem in einem Unterverzeichnis vom home vom user markus und nicht unter opt/fhem entpackt und installiert habe.

Im Wiki steht nicht explizit, wohin man alexa-fhem kopieren soll und weil ich mit dem Linux-Rechtesystem auf Kriegsfuß stehe,
hat mich WinSCP  davon abgehalten alles ins opt/fhem/alexa Verzeichnis zu kopieren.

Seufz.

Kann mir bitte einer aus diesem Schlammassel helfen?

Gruß
Markus
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

MarkusAutomaticus

Hallo zusammen,

ich weiß es ist Heilig-Abend, aber diese Linux-Rechte-Paranoia treibt mich in den Wahnsinn :o
Ich versuche unter einem Ubuntu 16.04 besagtes createKey.sh Skript auszuführen und bekomme, egal was ich auch tue, immer:

Keine Berechtigung

Zur Antwort.

Verdammt, ich habe die Hardware gekauft, das OS installiert. Wenn hier irgendeiner berechtigt ist, etwas zu tun, dann bin ich das.
So etwas kostet so unendlich viel Zeit und Nerven.
Es ist mir scheißegal, ob mein System offen ist, wie ein Scheunentor.
Ich will, dass es das tut, was ich von ihm will, ohne dass es bei jedem zweiten Kommando rumzickt wie die Jungfrau vor dem ersten Mal.

Himmel Arsch und Zwirn!!!

So und jetzt allen gesegnete Weihnachten
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

justme1968

#2
es ist keine rechte paranoia. sondern ein sinnvolles und funktionierendes konzept das sehr gut funktioniert wenn man verstanden hat wie es arbeitet.

kann es sein das du das tgz file unter windows ausgepackt hast? -> dann fehlt das recht zum ausführen des files. -> chmod +x ./createKey.sh

in welchem verzeichnis das ganze liegt ist egal so lange du die rechte an dem verzeichnis hast. das sollte der fall sein wenn du es selber ausgepackt hast.

zeig mal die ausgabe von ls -la . wenn du in dem verzeichniss stehst.

edit: grad gesehen das tatsächlich windows im spiel ist :)
nicht linux hält dich von etwas ab sondern windows. es hat nämlich das recht das script auszuführen kassiert.

ps: das verzeichniss ist schnurz egal. deshalb wird es nicht erwähnt. pack das file unter linux aus und du wirst keine probleme haben. tar -xvf alexa-fhem-0.1.8.tgz
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Fixel2012

#3
Guten Abend,

Im Wiki ist oder war zumindest auch Mal das Problem beschrieben (unter troubleshooting bei der alexa-fhem Installation).

Dort steht was zu tun ist wenn man keinen rechte hat die entsprechende Datei auszuführen.

Schau nochmal rein...

Grüße und noch schöne Feiertage!

PS: Hatte das gleiche Problem, auch weil ich es über Windows entpackt und dann per FTP auf den raspi gezogen habe. Wenn man es in Linux entpackt, gibt es damit keine Probleme, da die entsprechenden rechte direkt gesetzt werden.


Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

MarkusAutomaticus

Hallo zusammen,

vielen Dank für eure Antworten.
War die üblichen Verwandten besuchen, daher meine Antwort erst jetzt.

Bevor ich gelesen die Antworten gelesen habe, habe ich noch folgendes gemacht:

* Die Befehle im creatKey.sh Skript in einer OpenSSL-Shell ausgeführt und so eine key.pem erzeugt.
* Mit der Hand am Arm alles nach /opt/fhem/alexa-fhem kopiert
* und dann per sudo chown -c -R fhem /opt/fhem/alexa-fhem rekursiv dem Benutzer fhem übereignet

Ich hoffe, damit das Ganze nicht verschlimmbessert zu haben.
Falls das so in Ordnung ist, würde ich mit Punkt 6 . im Wiki "Die Datei config-sample.json nach..." weitermachen.

LG
Markus
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

MadMax-FHEM

Die Zeile im Startscript su - "pi" -c ...

Heißt: "logge" als User pi ein und führe aus.

Ich nehme an, dass dann folgendes

-su: /opt/fhem/log/alexa-2017-02.log: Keine Berechtigung

einfach heißt, dass der user pi keine Berechtigung hat die Log-Datei im Verzeichnis /opt/fhem/log anzulegen.

Lösung: statt pi den User fhem nehmen zum Starten ODER pi in die Gruppe dialout aufnehmen


Und das ist NICHT die Logdatei die beim Starten angelegt werden soll:

-rw-r--r--  1 fhem dialout      3888 Feb 13 18:45 Alexa-fhem-2017-02.log

UNGLEICH

/opt/fhem/log/alexa-2017-02.log


Die Datei von der du hier die Berechtigungen etc. angezeigt hast ist wahrscheinlich vom Alexa-Modul in fhem??

Die andere Datei (also alexa-fhem Logdatei) konnte vermutlich noch nicht angelegt werden...

Das mit der Passworteingabe ist seltsam.

Welches System? Debian? Welche Version?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Charity

#6
Hallo Joachim,

Danke erstmal. Sorry für's verschieben meines Posts ( Da scheint auch zeitlich beim verschieben mit deinem Post etwas durcheinander gekommen zu sein ).

Meine Linux Version ist :
Raspbian GNU/Linux 8 \n \l

Ich habe nun in der Gruppe dialout die Benutzer pi & fhem

dialout:x:20:pi,fhem

Bekomme beim Starten aber immer noch die Meldung

-su: /opt/fhem/log/alexa-2017-02.log: Keine Berechtigung
Alexa starting
Alexa is not running
script done
script done


Ich habe mal zu testzwecken in der /etc/init.d/alexa in der Zeile

su - "fhem" -c "cd $ALEXAPATH;./bin/alexa > $LOGPATH/alexa-`date +%Y-%m`.log 2>&1 &"


den Benutzer ausgetauscht ( nur zum Test )
Dann kommt zwar die Meldung nicht mehr, wegen der Berechtigung

Alexa starting
Alexa is not running
script done
script done


Aber das Logfile wurde deswegen nicht angelegt. ( hab den Benutzer wieder auf "pi" zurückgeändert )

ZitatDie Datei von der du hier die Berechtigungen etc. angezeigt hast ist wahrscheinlich vom Alexa-Modul in fhem??

Ja, das hab ich gerade kontrolliert. Die kommt vom FHEM Module, wenn ich auf "FHEM.Alexa" starten klicke.

Vielleicht hilft auch das noch

drwxr-xr-x 12 fhem dialout   4096 Feb 13 17:36 .
drwxr-xr-x  4 root root      4096 Feb 12 21:06 ..
drwxr-xr-x  5 fhem pi        4096 Feb 13 17:41 alexa-fhem
drwxr-xr-x  2 fhem dialout   4096 Feb 12 23:14 backup
-rw-r--r--  1 fhem dialout 184500 Feb 12 21:26 CHANGED
-rw-r--r--  1 fhem dialout  35614 Feb 12 21:26 configDB.pm
drwxr-xr-x 39 fhem dialout   4096 Feb 12 21:24 contrib
drwxr-xr-x  3 fhem dialout   4096 Feb 12 21:07 demolog
drwxr-xr-x  4 fhem dialout   4096 Feb 12 21:07 docs
drwxr-xr-x  5 fhem dialout  20480 Feb 12 21:24 FHEM
-rw-r--r--  1 fhem dialout 157683 Feb 13 18:40 fhem.cfg
-rw-r--r--  1 fhem dialout  15703 Feb 12 21:26 fhem.cfg.demo
-rwxr-xr-x  1 fhem dialout 129579 Feb 12 21:26 fhem.pl
drwxr-xr-x  2 fhem dialout   4096 Feb 13 00:00 log
-rw-r--r--  1 fhem dialout    935 Nov 15  2015 README_DEMO.txt
drwxr-xr-x  3 fhem dialout   4096 Feb 12 21:23 restoreDir
drwxr-xr-x  2 fhem dialout   4096 Feb 12 21:23 unused
drwxr-xr-x  8 fhem dialout   4096 Feb 12 21:07 www

MadMax-FHEM

Lass doch mal zum Test den Teil mit der Logdatei ganz weg...
...oder gib einen anderen Pfad an, z.B. irgendwo im home von pi...

Wenn du auf der Console als user pi eine Datei in /opt/fhem/log anlegen willst, z.B. touch test.log

Hast du dich nach dem Transfer in die Gruppe dialout aus und wieder eingeloggt!?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Charity

Also im Verzeichnis /opt/fhem/log kann ich mit touch test.log die Datei nicht anlegen. Keine Berechtigung !

Der Benutzer pi ist Mitglied in den Gruppen :

pi : pi adm dialout cdrom sudo audio video plugdev games users input netdev spi i2c gpio


MadMax-FHEM

Hast du dich nach dem Hinzufügen zur Gruppe neu eingeloggt!?

Wie sind die Berechtigungen/Gruppenzugehörigkeiten in /opt/fhem bzw. /opt/fhem/log

Hast du schon ohne Ausgabe in Logdatei bzw. anderer Pfad (wo pi Berechtigungen hat) versucht?

Was passiert?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Charity

#10
Danke Joachim,

ich habe nun den Pfad auf
su - "pi" -c "cd $ALEXAPATH;./bin/alexa > ~/alexa-`date +%Y-%m`.log 2>&1 &"
geändert.
Da wurde die Log Datei angelegt.

Leider bin ich in Linux nicht so fit, wie in Windows. Kannst du mir noch erklären, wie ich deine Frage ermitteln kann ?

Wie sind die Berechtigungen/Gruppenzugehörigkeiten in /opt/fhem bzw. /opt/fhem/log

wenn das mit ls -la geht, dann die Ergebnisse hier :

4 drwxr-xr-x 12 fhem dialout 4096 Feb 13 17:36 fhem

und

drwxr-xr-x  2 fhem dialout   4096 Feb 13 00:00 log

Generell geht es aber nun. Und das Logfile im ~/ ist mir eigentlich auch ganz recht.
Muss das für mich dokumentieren, das das umlegen des Logfiles ins home Verzeichnis meine Lösung ist


MadMax-FHEM

Ja geht genau so...
...kennst dich also doch bestens aus... ;)

Man sieht, dass nur der User fhem schreiben darf...
...Gruppe nur lesen und ausführen...
(soweit ich das sehe)

Somit ist leider die Aufnahme des users pi in dialout nutzlos gewesen.
Hätte ich wohl vorher abfragen sollen...

D.h. jetzt geht es!?

Ich habe gleich nach /home/pi/alexa-fhem installiert...


Achja: wenn du als user fhem starten lässt (weil du doch die Logdatei on /opt/fhem/log haben willst ;)   ), dann muss die config.json nach /opt/fhem/.alexa vielleicht ging es deshalb beim ersten Versuch mit user fhem nicht... Sorry hatte ich vergessen zu erwähnen...

Rechte des Verzeichnisses würde nat. auch gehen. Evtl. sudo chmod 775 /opt/fhem/log aber bevor du das tust müsste ich (oder du) noch mal genau nachschauen. Bin allerdings bis morgen Abend unterwegs und daher etwas eingeschränkt...
D.h. auch der Gruppe dialout Schreibrechte geben, dann würde auch die Aufnahme des users pi in dialout wiedet passen...

Alternativ ein setzen der Rechte auf 777 aber das wäre schon Hardcore (und wie gesagt eigentlich unnötig): jeder darf alles...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Charity

Hallo Joachim,

danke für die Unterstützung.

Ja es funktioniert wieder alles. Ich kann nun meine Geräte wieder mit Alexa steuern.

Das nun das Logfile in ~/ liegt ist mir auch ganz recht. Da bin ich in der Rege schneller mit der Fehleranalyse. ( Das ist aber wohl eher nur subjektiv :-) )

Ich werde das für mich dokumentieren und morgen auch noch die Lösung im anderen Thread schreiben.

Eventuell probier ich es morgen auch noch mit den anderen Rechten in /opt/fhem/log . Vor allem nachdem ich ja jetzt eine Möglichkeit habe es zu betreiben.