Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2015-01-08 18:49:53

  prosze - Użytkownik

prosze
Użytkownik
Zarejestrowany: 2012-09-25

Fhem - zarządzanie domem

Witam!

Zainstalowałem serwer fhem http://fhem.de/fhem.html, ale mam takie pytanie. Czy ktoś używał fhem? Czy do fhem można podpinać własne skrypty napisane w bash?

EDIT:

Odpowiem sobie i potomnym. Tak do fhem można podpinać własne skrypty. Przy okazji opiszę.

Instalacje i uruchamianie serwera "fhem" jako "root" na Debianie z lxde


1. Pobieramy "fhem" z http://fhem.de/fhem-5.6.tar.gz
2. Rozpakowujemy archiwum: tar xvfz  fhem-5.6.tar.gz
3. Przechodzimy do rozpakowanego katalogu: cd fhem-5.6
4. Logujemy się na konto administratora poleceniem: su
5. Wydajemy polecenie: make install
6. Serwer "fhem" jest już zainstalowany i aby go uruchomić przechodzimy do katalogu: cd /opt/fhem, a następnie jako "root" wydajemy polecenie: perl /opt/fhem/fhem.pl /opt/fhem/fhem.cfg
7. Poleceniem: ps auxw | grep fhem sprawdzamy, czy serwer "fhem" działa.
8. Z przeglądarki do "fhem" logujemy się wpisując adres: http://localhost:8083/fhem?

9. Jeżeli chcemy, aby przy starcie systemu "fhem" uruchamiał się z uprawnieniami "root" to dodajemy nowego użytkownika o nazwie "fhem": useradd fhem
10. Zmieniamy właściciela katalogu: chown -R fhem /opt/fhem
11. Instalujemy: sudo
12. Poleceniem visudo edytujemy plik: /etc/sudoers i nadajemy w nim prawo użytkownikowi "pic" do uruchamiania serwera "fhem" z uprawnieniami "root", a użytkownikowi "fhem" prawo do wykonywania poleceń na prawach "root". Mój plik /etc/sudoers wygląda tak

Kod:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults    env_reset
Defaults    mail_badpass
Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
%sudo    ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

%pic ALL=(ALL) NOPASSWD: /usr/bin/gnokii, /sbin/reboot, /sbin/poweroff, /usr/bin/vmware, /usr/bin/perl, /opt/fhem/fhem.pl, /opt/fhem/fhem.cfg

%fhem ALL=(ALL) NOPASSWD: /usr/bin/gnokii, /usr/bin/perl, /opt/fhem/fhem.pl, /opt/fhem/fhem.cfg

13. W /home/nazwa_użytkownika/.config/lxsession/LXDE/ tworzymy plik o nazwie "autostart". W pliku autostart podajemy tylko ścieżkę do skryptu np. /home/nazwa_użytkownika/Desktop/nazwa_skryptu. W skrypcie, który będzie odpalał "fhem" umieszczamy taki zapis

Kod:

#!/bin/bash

cd /opt/fhem
sudo /usr/bin/perl /opt/fhem/fhem.pl /opt/fhem/fhem.cfg

Po uruchomieniu systemu serwer "fhem" cały czas działa w pętli. W związku z tym możemy do niego podpinać własne skrypty, które cylicznie będą wykonywane. Własny skrypt dodajemy do pliku /opt/fhem/fhem.cfg robiąc taki zapis define skrypt PRESENCE shellscript "/ścieżka/do/skryptu.sh"

Ostatnio edytowany przez prosze (2015-01-22 22:30:00)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)