FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: Bartimaus am 01 Oktober 2014, 20:14:32

Titel: QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 01 Oktober 2014, 20:14:32
Hallo zusammen,


ich habe meine beiden QNAPs in FHEM/WOL eingebunden. Das starten der QNAPs funktioniert tadellos.
Herunterfahren kann ich diese per Putty-Konsole vom Raspi aus mit dem Befehl
Zitatssh admin@192.168.xxx.x halt


In der Konsole werde ich dann nach dem Admin-PW gefragt. Der RSA-fingerprint wurden beim ersten Versuch zur Liste der bekannten Hosts hinzugefügt.


Wie kann ich denn jetzt den "Herunterfahrbefehl" dem Attribut "shutdownCmd" hinzufügen ? Habe hier was von einem "Shutdownskript" gelesen, weiss aber nicht was da alles genau rein muss.....  :-[ . Hat da jemand bitte mal nen Tip für mich ?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 05 Oktober 2014, 21:02:41
So,


bin jetzt einen Schritt weiter.
Ich habe ein Shutdownscript angelegt, Rechte hierfür auf 777 gesetzt, und rufe den Shutdownbefehl via shutdownCmd auf.


Im Logfile steht dann aber:2014.10.05 20:46:35 3: [Filmserver] shutdownCmd: {system("/home/pi/TS419off.sh")} executed

The server's host key is not cached. You have no guarantee
that the server is the computer you think it is. The server's rsa2 key fingerprint is: ssh-rsa xxxxxxx
If you trust this host, enter "y" to add the key to PuTTY's cache and carry on connecting. If you want to carry on connecting just once, without
adding the key to the cache, enter "n". If you do not trust this host, press Return to abandon the connection. Store key in cache? (y/n) Connection abandoned.
2014.10.05 20:46:37 3: [Filmserver]-1



Starte ich das Skript von der Kommandozeile, so klappt es tadellos. Beim ersten Mal wurde gefragt, ob ich den Key im Cache speichern will, was ich bejaht habe. Beim Kommando via FHEM kommt die Frage aber wieder...


Hat jemand ne Idee ?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: P.A.Trick am 12 Oktober 2014, 11:10:02
Prüfe mal die Rechte deines Skriptes! Darf der fhem user es ausführen?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 12 Oktober 2014, 11:21:21
Hi Patrick,


wenn ich doch die rechte des Scripts auf 777 setze, darf doch jeder User alles, oder nicht ?
Ich meine, ich habe mich auch mal als User fhem angemeldet, und dann das Skript per Kommandozeile ausgeführt, was geklappt hat.
Ich teste das nachher nochmal, sobald mein Server mit seinen Aufgabe für heute fertig ist, und heruntergefahren werden kann.
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: P.A.Trick am 12 Oktober 2014, 11:24:20
Ah ok! Hast du denn einen SSH-Key vergeben? Es darf keine Passwortabfrage beim Skriptaufruf kommen!?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 12 Oktober 2014, 11:28:09
Als ich das erste Mal das Skript per Kommandozeile gestartet habe, wurde der SSH-Key auf Nachfrage im Cache gespeichert. Danach kam dieser Hinweis per Kommandozeile nicht mehr (nur noch via FHEM). Den Raspi hatte ich seitdem NICHT mehr neu gestartet.



Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: P.A.Trick am 12 Oktober 2014, 11:30:46
Du mir einen Gefallen und starte das Skript noch einmal mit dem fhem-User und poste die Ausgabe des Skriptes!
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 12 Oktober 2014, 11:38:10
Äh, ich kann in der Konsole nicht mit "su fhem" zum User "fhem" wechseln....... Wieso ? Zum User "root" klappts...
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: P.A.Trick am 12 Oktober 2014, 11:43:54
Das setze mal eine valide Shell für den user fhem! Fhem läuft unter dem User fhem, nicht unter root!

als root ausführen auf dem Fhem Server!
usermod -s /bin/sh fhem

Danach noch einmal mit su - fhem einloggen und Skript ausführen!
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 12 Oktober 2014, 11:55:07
Habe ich gemacht, aber jetzt komme ich nicht mehr an das Skript welches in /home/pi liegt...



Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: P.A.Trick am 12 Oktober 2014, 11:56:55
als root:

cp /home/pi/TS419off.sh /opt/fhem/

chmod 755 /opt/fhem/TS419off.sh

Noch einmal auf der Konsole ausführen und
danach glücklich sein und sich freuen :-)
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Bartimaus am 12 Oktober 2014, 15:42:30
Hi Patrick,


sodele, für meinen TS419 funktioniert es nun. Ich habe das Skript nach /opt/fhem kopiert und Rechte vergeben, dann auf der Konsole zum User fhem gewechselt und einmalig ausgeführt. Habe auf Nachfrage zugestimmt den SSH-Key zu speichern.
Shutdown aus FHEM funktioniert nun super. Dafür erstmal ein fettes "DANKE"


Ich habe aber noch einen 2. Server (Intel statt ARM-CPU). Dieser hat wegen des anderen Prozessors einen anderen Shutdownbefehl. Deswegen habe ich hierfür ein separates Skript.


Ich bin hierbei genauso vorgegangen, jedoch, auch wenn ich aus der Konsole das Skript starte, fährt das NAS herunter. Beim ersten mal hat es auch nach dem speichern des SSH-Keys gefragt, bejaht, beim 2. mal wird nicht mehr danach gefragt. Aus FHEM leider schon.


Noch ne Idee ?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: brede am 07 Mai 2015, 17:03:01
Hi Bartimaus,

wäre es möglich, das Script und die Einrichtung hier genauer darzustellen?
Diese Funktion würde ich gern in FHEM für mein Qnap einbinden - komme aber nicht so recht weiter...

Grüße
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 08 Mai 2015, 10:13:49
@Bartimaus

Wenn dein ssh-skript auf der Konsole funktioniert, aber im FHEM nach dem key fragt (wo siehst Du das?), würde ich darauf tippen, das Du es auf der Konsole nicht mit dem "richtigen user" probiert hast.

1. Unter welchem user läuft fhem
ps aux | grep fhem
2. Hast Du es mit genau dem user auf der Konsole probiert?
als root:
su - fhem
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: MartinPetri am 08 November 2015, 19:21:08
hallo



ich wollte mal fragen wie dieses Skript Genua aussieht würde gerne auch meinen qnap mit dem wol Modul per shutdowncmd runterfahren



mfg martin
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Litle_Bob am 19 November 2015, 11:57:18
Hier gibt es anregungen zum Script ;-)

Link: http://openremote.org/display/forums/HowTo+-+QNAP+start-shutdown-status?showComments=false#HowTo-QNAPstart-shutdown-status-Shutdownscript (http://openremote.org/display/forums/HowTo+-+QNAP+start-shutdown-status?showComments=false#HowTo-QNAPstart-shutdown-status-Shutdownscript)
Link: http://nicht-traeumen-sondern-machen.de/RaspberryPi_Basteleien/Code_Qnaps_fernsteuern.php?anker=c6 (http://nicht-traeumen-sondern-machen.de/RaspberryPi_Basteleien/Code_Qnaps_fernsteuern.php?anker=c6)

Jetzt nur noch das script per FHEM starten, fertig ;-)

P.S. Somit könnt ihr auch den Status z.B. Temperatur usw. auslesen ...
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 18 Januar 2016, 15:27:00
Hallo

Ich bekomme das einfach nicht zum laufen :'(
Über einen Tipp wäre ich sehr dankbar.

auf der console vom raspi Funktioniert
ssh admin@192.168.1.16 halt
der qnap schaltet aus

dann habe ich ein script erstellt:
#!/bin/sh

ssh admin@192.168.1.16 halt

exit 0


mit dem Nahmen shutdown_qnap.sh
es liegt im fhem Ortner also unter /opt/fhem-5.7
dann habe ich das ganze ausführbar gemacht
sudo chmod a+x /opt/fhem-5.7/shutdown_qnap.sh



aber ich kann es nicht starten jemand eine Idee was ich Falsch mache?

/opt/fhem-5.7/shutdown_qnap.sh
./opt/fhem-5.7/shutdown_qnap.sh
/shutdown_qnap.sh
./shutdown_qnap.sh
sudo /opt/fhem-5.7/shutdown_qnap.sh
sudo ./opt/fhem-5.7/shutdown_qnap.sh

Ich bekomme immer solche Fehlermeldungen:

sudo: ./shutdown_qnap.sh: command not found

-bash: ./shutdown_qnap.sh: Permission denied

-bash: /opt/fhem-5.7/shutdown_qnap.sh: /bin/sh^M: bad interpreter: No such file or directory


Danke!

Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 18 Januar 2016, 18:01:21
Darf der User es denn auch "lesen"?

also nicht nur "w" sondern auch "r"?

btw:
Am besten das Script dem User zuordnen, unter dem fhem läuft.
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 18 Januar 2016, 18:36:53
ja die Berechtigung vom Script hab ich auf 777 gesetzt.

Wie ordne ich es fhem zu?
muss ich noch etwas ins script schreiben? ist mein erstes Mahl ;)

Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 18 Januar 2016, 18:41:05
ps aux | grep fhem
liefert folgendes ergebnis:
sagt mir aber nichts...
ps aux | grep fhem
fhem       567  5.8  5.7  55412 50592 ?        S    16:52   6:10 perl fhem.pl fhem.cfg
pi        4020  0.0  0.2   4264  1972 pts/0    S+   18:38   0:00 grep --color=auto fhem



Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 19 Januar 2016, 11:40:44
1. User zuweise:
chown

2. Wegen Fehler:
Kannst Du mir bitte mal das Script "geben"? Finde es gerade nicht im Thread
Mich macht Stutzig:
-bash: /opt/fhem-5.7/shutdown_qnap.sh: /bin/sh^M: bad interpreter: No such file or directory
Hast Du es unter Linux oder Windows bearbeitet und womit?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 19 Januar 2016, 19:31:20
Zitat von: Wernieman am 19 Januar 2016, 11:40:44
1. User zuweise:
chown
ja das hab ich gemacht
sudo chown fhem /opt/fhem/shutdown_qnap.sh
sudo chmod 777 /opt/fhem/shutdown_qnap.sh


Zitat von: Wernieman am 19 Januar 2016, 11:40:44
2. Wegen Fehler:
Kannst Du mir bitte mal das Script "geben"? Finde es gerade nicht im Thread
Mich macht Stutzig:
-bash: /opt/fhem-5.7/shutdown_qnap.sh: /bin/sh^M: bad interpreter: No such file or directory
Hast Du es unter Linux oder Windows bearbeitet und womit?
über putty vom Windows Rechner aus auf dem raspberry Aufruf: sudo mc ich glaub das Programm Heist nano
Das script hänge ich an

Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 20 Januar 2016, 08:44:30
Das ist aber nicht das, mit dem Du die ersten ausgaben gemacht hast .... ??

Kannst Du bitte (nochmals" testen?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 20 Januar 2016, 18:28:10
Natürlich hab ich das probiert bevor ich gepostet habe.
Ich teste seit Tagen alle möglichen Varianten durch und weis selber nicht so recht wie es richtig wäre.
das Skript hab ich schon versucht mit sh oder mit bash zu öffnen was soll ich verwenden? ist es überhaupt richtig?
beim Öffnen hab ich schon mit und ohne Pfad probiert auch .und/ in allen möglichen Kombinationen das Skript hat 777 rechte
auch den Aufruf habe ich schon mit sudo probiert jetzt wäre ich wirklich über einen kleinen tipp dankbar..

Gruß Markus

./opt/fhem-5.7/shutdown_qnap.sh                         -bash: ./opt/fhem-5.7/shutdown_qnap.sh: No such file or directory
pi@Agent-Wohnzimmer:~ $ ./opt/fhem/shutdown_qnap.sh
-bash: ./opt/fhem/shutdown_qnap.sh: No such file or directory
pi@Agent-Wohnzimmer:~ $ ./shutdown_qnap.sh
-bash: ./shutdown_qnap.sh: Permission denied
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 20 Januar 2016, 22:13:27
Also ...

1. ich glaube, das dieses Script Windows-Zeilenenden enthält, das mach Linux gar nicht ... folgendes würe ich auf einem x86-System machen, eigentlich sollte es bei RasPi genau so gehen
sudo apt-get install dos2unix
dos2unix ./opt/fhem/shutdown_qnap.sh


2. Irgendwie stimmt etwas nicht, deshalb möchte ich mal die "Rechte" überprüfen:
whoami
ls -lha ./opt/fhem/shutdown_qnap.sh
ls -lhad ./opt/fhem


3. Und sicherheitshalber die Shell überprüfen
ls -lha /bin/bash
echo $SHELL
ls -lha $(echo $SHELL)


Könntest Du uns den Output geben?
Und bitte bleibe ruhig .. wir gehen es jetzt mal systematisch an. Wir kriegen es schon raus!
Nur wenn Du etwas änderst, was ich nicht mitkriege ... :o(
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 20 Januar 2016, 23:05:17
Danke!
Ich hab das jetzt mal alles eingegeben und die gesamte Ausgabe aus putty angehängt.
Da ist noch etwas als ich fhem neu Installiert habe hat 5.7 einen neuen ortner unter opt angelegt und fhem ligt im ortner fhem-5.7 aber es existiert noch einer der ortner fhem der immer auf fhem-5.7 weiterleitet.

/opt/fhem =link nach /opt/fhem-5.7
/opt/fhem-5.7 =fhem Hauptortner mit meiner Datei

pi@Agent-Wohnzimmer:~ $ sudo apt-get install dos2unix
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  dos2unix
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 75.9 kB of archives.
After this operation, 204 kB of additional disk space will be used.
Get:1 http://mirrordirector.raspbian.org/raspbian/ jessie/main dos2unix armhf 6.0.4-1 [75.9 kB]
Fetched 75.9 kB in 0s (93.9 kB/s)
Selecting previously unselected package dos2unix.
(Reading database ... 132566 files and directories currently installed.)
Preparing to unpack .../dos2unix_6.0.4-1_armhf.deb ...
Unpacking dos2unix (6.0.4-1) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up dos2unix (6.0.4-1) ...
pi@Agent-Wohnzimmer:~ $ dos2unix ./opt/fhem/shutdown_qnap.sh
dos2unix: ./opt/fhem/shutdown_qnap.sh: No such file or directory
dos2unix: Skipping ./opt/fhem/shutdown_qnap.sh, not a regular file.
pi@Agent-Wohnzimmer:~ $ dos2unix ./opt/fhem-5.7/shutdown_qnap.sh
dos2unix: ./opt/fhem-5.7/shutdown_qnap.sh: No such file or directory
dos2unix: Skipping ./opt/fhem-5.7/shutdown_qnap.sh, not a regular file.
pi@Agent-Wohnzimmer:~ $ ^C
pi@Agent-Wohnzimmer:~ $ whoami
pi
pi@Agent-Wohnzimmer:~ $ ls -lha ./opt/fhem/shutdown_qnap.sh
ls: cannot access ./opt/fhem/shutdown_qnap.sh: No such file or directory
pi@Agent-Wohnzimmer:~ $ ls -lha ./opt/fhem-5.7/shutdown_qnap.sh
ls: cannot access ./opt/fhem-5.7/shutdown_qnap.sh: No such file or directory
pi@Agent-Wohnzimmer:~ $ ls -lhad ./opt/fhem
ls: cannot access ./opt/fhem: No such file or directory
pi@Agent-Wohnzimmer:~ $ ls -lhad ./opt/fhem-5.7
ls: cannot access ./opt/fhem-5.7: No such file or directory
pi@Agent-Wohnzimmer:~ $ ls -lha /bin/bash
-rwxr-xr-x 1 root root 844K Oct 18  2014 /bin/bash
pi@Agent-Wohnzimmer:~ $ echo $SHELL
/bin/bash
pi@Agent-Wohnzimmer:~ $ ls -lha $(echo $SHELL)
-rwxr-xr-x 1 root root 844K Oct 18  2014 /bin/bash
pi@Agent-Wohnzimmer:~ $ ls
Desktop    fhem-5.7.deb    Music     python_games      Videos
Documents  fhem-5.7.deb.1  Pictures  shutdown_qnap.sh  yowsup.config
Downloads  hipi-install    Public    Templates
pi@Agent-Wohnzimmer:~ $ cd /opt
pi@Agent-Wohnzimmer:/opt $ ls
fhem          hipi-install.1  master.zip.1  sonic-pi  yowsup-config
fhem-5.7      hipi-install.2  master.zip.2  vc        yowsup-master
hipi-install  hipi-install.3  minecraft-pi  Wolfram
pi@Agent-Wohnzimmer:/opt $ cd fhem-5.7
pi@Agent-Wohnzimmer:/opt/fhem-5.7 $ ls
backup       fhem.cfg.demo  probe              tempListFruhschicht.cfg
cache        fhemcmd.sh     probe.cfg          tempListRomantik.cfg
cfg          fhem.db        README_DEMO.txt    tempListSommer.cfg
CHANGED      fhem.db-shm    README.SVN         tempListUrlaub.cfg
configDB.pm  fhem.db-wal    regSave.cfg        tempListWinter
contrib      fhem.pl        restoreDir         tempListWinter.cfg
db.conf      HISTORY        shutdown_qnap.sh   tempListWinterWarm.cfg
demolog      log            tempList           ThermostatBad_Climate_config
docs         Log            tempList.cfg       unused
FHEM         Makefile       tempListDisco.cfg  webfrontend
fhem.cfg     Musik          templiste          www
pi@Agent-Wohnzimmer:/opt/fhem-5.7 $ cd opt/fhem
-bash: cd: opt/fhem: No such file or directory
pi@Agent-Wohnzimmer:/opt/fhem-5.7 $ cd /opt/fhem
pi@Agent-Wohnzimmer:/opt/fhem $ ls
backup       fhem.cfg.demo  probe              tempListFruhschicht.cfg
cache        fhemcmd.sh     probe.cfg          tempListRomantik.cfg
cfg          fhem.db        README_DEMO.txt    tempListSommer.cfg
CHANGED      fhem.db-shm    README.SVN         tempListUrlaub.cfg
configDB.pm  fhem.db-wal    regSave.cfg        tempListWinter
contrib      fhem.pl        restoreDir         tempListWinter.cfg
db.conf      HISTORY        shutdown_qnap.sh   tempListWinterWarm.cfg
demolog      log            tempList           ThermostatBad_Climate_config
docs         Log            tempList.cfg       unused
FHEM         Makefile       tempListDisco.cfg  webfrontend
fhem.cfg     Musik          templiste          www
pi@Agent-Wohnzimmer:/opt/fhem $ cd
pi@Agent-Wohnzimmer:~ $


Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 21 Januar 2016, 08:11:00
Gabe einen "copy&üpaste" Fehler gemacht, Deine Angaben übernommen ohne zu prüfen ...
Kannst Du bitte nochmals probieren, ohne den . bei "./opt/fhem"?

der . bedeutet, gucke im jetzigen Dateisystem. Also:
dos2unix ./opt/fhem/shutdown_qnap.sh
whoami
ls -lha /opt/fhem/shutdown_qnap.sh
ls -lhad /opt/fhem
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 21 Januar 2016, 08:33:31
ok hab es gemacht...

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Jan 20 14:42:10 2016 from 192.
pi@Agent-Wohnzimmer:~ $ dos2unix ./opt/fhem/shutdown_qnap.sh
dos2unix: ./opt/fhem/shutdown_qnap.sh: No such file or directory
dos2unix: Skipping ./opt/fhem/shutdown_qnap.sh, not a regular file.
pi@Agent-Wohnzimmer:~ $ dos2unix /opt/fhem/shutdown_qnap.sh
dos2unix: Failed to change the owner and group of temporary output file /opt/fhem/d2utmpbya9N6: Operation not permitted
dos2unix: converting file /opt/fhem/shutdown_qnap.sh to Unix format ...
dos2unix: problems converting file /opt/fhem/shutdown_qnap.sh
pi@Agent-Wohnzimmer:~ $ whoami
pi
pi@Agent-Wohnzimmer:~ $ ls -lha /opt/fhem/shutdown_qnap.sh
-rwxrwxrwx 1 fhem pi 53 Jan 19 19:24 /opt/fhem/shutdown_qnap.sh
pi@Agent-Wohnzimmer:~ $ ls -lhad /opt/fhem
lrwxrwxrwx 1 fhem dialout 8 Jan 16 02:08 /opt/fhem -> fhem-5.7
pi@Agent-Wohnzimmer:~ $ /opt/fhem/shutdown_qnap.sh
-bash: /opt/fhem/shutdown_qnap.sh: /bin/bash^M: bad interpreter: No such file or directory
pi@Agent-Wohnzimmer:~ $ ./shutdown_qnap.sh
-bash: ./shutdown_qnap.sh: Permission denied
pi@Agent-Wohnzimmer:~ $
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 21 Januar 2016, 08:55:12
MIST ... das habe ich einen "." übersehen ...
dos2unix /opt/fhem/shutdown_qnap.sh

Du weist den Unterschied zwischen ./opt/fhem/shutdown_qnap.sh und /opt/fhem/shutdown_qnap.sh?
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 21 Januar 2016, 13:46:35
Danke Danke das war's!!!  ;D ;D ;D
von der Konsole funktioniert es jetzt ;D

./shutdown_qnap.sh

weist du wie es aus fhem korrekt lauten muss...

{system("./shutdown_qnap.sh")}liefert -1

aber ich werde Abends testen muss jetzt wieder Arbeiten :(

Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 21 Januar 2016, 17:07:48
Ich würde mit direkten Pfaden arbeiten:
/opt/fhem/shutdown_qnap.sh

Aber OHNE den Punkt ".", den Du sonst immer angibst/verwendest!
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 21 Januar 2016, 20:04:22
Ich möchte mich nochmals bedanken!
Meine NAS fährt jetzt per fhem runter so wie sie soll ;D
mein skript hab ich geändert weil ich über putty immer das Passwort eingeben musste und das mit fhem nicht Funktionierte...
hier noch das skript, unter linux selber schreiben nicht kopieren! sonst geht es euch wie mir ;)

shutdown_qnap.sh
#!/bin/sh
username="$1"
hostname="$2"
password="$3"
sshpass -p "$password" ssh "$username"@"$hostname" /sbin/poweroff

exit 0


Aufruf aus FHEM:
{system("/opt/fhem/shutdown_qnap.sh username ip_adresse passwort")}

Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 21 Januar 2016, 22:29:13
Mach Dich bitte mal schlau wegen ssh und Keyauthentifizierung. Es ist NICHT sinnvoll, ein ssh per Passwortübergabe zu starten. Das Passwort ist ziemlich einfach (für jeden User) aus der prozessliste rauszufinden.

Auch solltest Du nach den rechten Deiner Datei gucken. Sie sollte am besten nur fhem gehören und nur für fhem lese (und ausführ) rechte haben.
z.B.
https://www.debian-administration.org/article/530/SSH_with_authentication_key_instead_of_password (https://www.debian-administration.org/article/530/SSH_with_authentication_key_instead_of_password)
https://www.thomas-krenn.com/de/wiki/OpenSSH_Public_Key_Authentifizierung_unter_Ubuntu (https://www.thomas-krenn.com/de/wiki/OpenSSH_Public_Key_Authentifizierung_unter_Ubuntu)
Und noch diverse andere
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Markus am 25 Januar 2016, 10:42:02
Danke ich glaub da ist mir der Aufwand zu gross ich hab jetzt in der nas eingestelt das nur Geräte mit einer bestimmten ip Adresse darauf zugreifen dürfen und Zugriff aus dem Internet kommt natürlich auch nicht in frage...

Gruß Markus
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 25 Januar 2016, 16:04:44
Es ist eigentlich trivial ... eigentlich fast nur "copy&paste"
Du kannst es auch parallel zur jetzigen Lösung einrichten und, wenn es funktioniert, umschalten.

Deine Lösung ist ein Spezialfall, Key-Login ist der "Industriestandart".
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: slupus am 16 März 2016, 18:38:08
Hallo zusammen,
bei mir möchte es leider nicht klappen. Folgendes habe ich gemacht (als User pi auf dem Raspberry):
sudo apt-get install sshpass
sudo touch /opt/fhem/FHEM/shutdownNAS.sh && sudo chown -R fhem /opt/fhem/ && sudo chmod +x /opt/fhem/FHEM/shutdownNAS.sh

sudo nano /opt/fhem/FHEM/shutdownNAS.sh

#!/bin/bash
username="$1"
hostname="$2"
password="$3"
sshpass -p "$password" ssh "$username"@"$hostname" "echo mem > /sys/power/state"
DATE=$(date +%Y.%m.%d)
TIME=$(date +%T)
echo $DATE $TIME "3: NAS in den Ruhemodus versetzen"
exit 0


Diese Script kann ich auf dem Raspberry mit
/opt/fhem/FHEM/shutdownNAS.sh USER HOST PWD
ausführen und das NAS geht in den Ruhemodus.
Auch über die FHEM Oberfläche lässt sich das Script ausführen, die Logausgabe erscheint im FHEM Log, doch das NAS geht nicht in den Ruhemodus.
{system('/opt/fhem/FHEM/shutdownNAS.sh USER HOST PWD)}
FHEM hat folglich die Rechte, das Script auszuführen, jedoch scheint der Befehl nicht am NAS anzukommen. Hat jemand eine Idee, woran das liegen könnte oder habe ich etwas übersehen?

Den Einwand von Wernieman finde ich gut, also habe ich diese Anleitung (https://www.debian-administration.org/article/530/SSH_with_authentication_key_instead_of_password) befolgt.
Für diesen Test habe ich ein zweites Script angelegt:
sudo touch /opt/fhem/FHEM/shutdownNAS2.sh && sudo chown -R fhem /opt/fhem/ && sudo chmod +x /opt/fhem/FHEM/shutdownNAS2.sh
sudo nano /opt/fhem/FHEM/shutdownNAS2.sh
#!/bin/bash
username="$1"
hostname="$2"
ssh "$username"@"$hostname" "echo mem > /sys/power/state"
DATE=$(date +%Y.%m.%d)
TIME=$(date +%T)
echo $DATE $TIME "3: QNAP TS-251 in den Ruhemodus versetzen"
exit 0

Mit dem User pi kann ich mich ohne Password auf dem NAS anmelden und das wie folgt ausführen:
/opt/fhem/FHEM/shutdownNAS2.sh USER HOST
Aus FHEM heraus funktioniert dies nicht:
{system('/opt/fhem/FHEM/shutdownNAS2.sh USER HOST')}
Host key verification failed.

Das macht für mich Sinn, da ich den Key für den pi User angelegt habe.
Wie kann ich den Key auch für den FHEM User anlegen?

Vermutlich kann ich mit dieser Info auch das obige Problem lösen.
Ich habe zwar den gesamten Thread gelesen, allerdings weiß ich nicht, wie ich mich mit su – fhem anmelden kann, da ich das Passwort nicht kenne und bisher auch noch nie benötigt habe.

Grüße suelle
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 18 März 2016, 08:41:57
also ....

1. um ein Passwort zu ändern gibt es passwd. Als root kannst Du auch passwörter für andere user ändern.
sudo passwd fhem

Und .. typisch unix gibt es auch einen anderen weg um zu fhem zu werden .. über root
su - root
su - fhem

root darf zu jedem User wechseln, ohne Passwortabfrage. Ich mache dieses immer beim testen, da es mit Absicht bei einigen "Usern" kein Passwort und damit Einlogmöglichkeit gibt (Stichwort Sicherheit)

2. Bezüglich ssh-Key
a) Du kannst einfach das Komplette .ssh-Verzeichnis Deines Users pi ins home von user fhem kopieren und dann die Berechtigungen Anpassen
- Das Verzeichnis/Dateien muß dem User fhem gehören
- Nur der darf die Dateien lesen (dürfen)

b)  Du machst für den user fhem einen neuen key. Ich würde dieses wählen, aber viele Wege führen nach Rom ..

jetzt solltest Du weiter kommen? oder brauchst Du noch einen "schups"?

(P.S. ich hoffe, Du verstehst meinen Lockeren Ton .. es ist Freitag!!! und dann eine Woche Urlaub!!!! *griiins*)
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: slupus am 18 März 2016, 11:31:03
Vielen Dank, du hast mir sehr geholfen!

Mir war nicht bewusst, dass unter Raspbian für den User root kein Passwort hinterlegt wird. Nach der Anlage konnte ich mich als root anmelden. Das wechseln zum User fhem funktionierte nicht, allerdings konnte ich das Problem auch lösen: In der /etc/passwd ist hinterlegt, dass sich der User fhem nicht anmelden darf. Nachdem ich auch das geändert hatte, konnte ich mit dem User fhem einen ssh key erzeugen. Die von dir beschriebene Lösung 2a halte ich ebenfalls für falsch, deswegen 2b.
Nun läuft das Script und versetzt mein NAS wie gewünscht in den Ruhemodus.

Allerdings habe ich noch eine Verständnisfrage:
Du hast lapidar geschrieben, ich kann das Passwort für den User fhem ändern. Wird dieses von FHEM nicht benötigt? Ich wollte das Risiko nicht eingehen, FHEM dadurch lahmzulegen.

Vielen Dank und einen erholsamen Urlaub...meiner ist jetzt rum  :(
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 18 März 2016, 12:42:50
Nein, fhem braucht es nicht. Der init-Prozess läut unter root und kann deshalb Problemlos ein Proggi unter einem anderen User starten.

Und wegen einloggen: hatte vergessen, das fhem im standard keine loginshell hat. Egal ob über root oder passwd muß dieses dafür gesetzt sein.  Wenn Du sicherheit willst, anschließend zurücksetzen, auf /bin/false oder /bin/nologin o.Ä.
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: slupus am 05 November 2016, 13:07:01
Ich habe hierzu nun eine Wiki Seite erstellt: http://www.fhemwiki.de/wiki/Qnap_NAS_Ruhemodus/herunterfahren
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 05 November 2016, 13:11:46
Warum installiert Du in der Anleitung sshpass?
sudo apt-get install sshpass
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: slupus am 05 November 2016, 13:13:46
Ich war mir nicht mehr sicher, ob es tatsächlich benötigt wird, deshalb habe ich es mitaufgenommen.
Wenn du weißt, dass es nicht benötigt wird, kann es auch herausgenommen werden.
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: Wernieman am 05 November 2016, 13:30:21
Das Programm wird verwendet, um sich per Passwort (automatisch böse) per ssh anzumelden. Da Du aber ssh-keys verwendest, ist dieses nicht nötig.

Was Du meinst ist "openssh-client", kenne aber kein Linux, welchen den nicht automatisch installiert hat.
Titel: Antw:QNAP-NAS per FHEM runterfahren
Beitrag von: slupus am 05 November 2016, 14:46:33
Danke für die Erklärung, habe die Wiki Seite angepasst.