26

Odp: Ograniczenie dostępu

Zepsułeś polecenie - fi tam na końcu brakuje, ja podałem a ty to zignorowałeś. Ponad to nie miałeś dodawać do tamtego, bo ten skrypt robi wszystko co potrzebujesz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

27 (edytowany przez jezy 2016-01-15 19:00:17)

Odp: Ograniczenie dostępu

ok, masz rację.

Poprawiłem skrypt przez usunięcie polecenia

 if swconfig dev switch0 port 1 get link | grep -q "link:up"; then
cat /mnt/LAN1.txt | sendmail -t 

gdzie mam teraz użyć tego polecenia ??

  
if swconfig dev switch0 port 1 get link | grep -q "link:up"; then
cat /mnt/LAN1.txt | sendmail -t
if 

28

Odp: Ograniczenie dostępu

#!/bin/sh 
if swconfig dev switch0 port 1 get link | grep -q "link:up"; then
cat /mnt/LAN1.txt | sendmail -t
if 

To cały skrypt. Przy podłączonym kablu uruchom go i zobaczy czy wyśle się ten mejl.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

29 (edytowany przez jezy 2016-01-15 19:34:14)

Odp: Ograniczenie dostępu

Działą. Sukces

Rozumiem że teraz należy w zadaniach cron ustawić Co podany okres minut/Co podany okres godzin i dodać  Polecenie do wykonania: /sbin/xxxx.sh start

Mam jeszcze jedno pytanie.

Załóżmy że ustawie sprawdzanie co 3 minuty i domyślam się że co 3 minuty będzie wysyłać maila ponieważ skrypt wykona swoje działanie.

Czy da się ustawić aby pamiętał ostatni status
1. jeżeli był nieaktywny a teraz jest aktywny wysłał maila
2. jeżeli był aktywny i teraz jest aktywny to ma nie wysyłać

Chodzi o to aby nie spamował co 3 minuty tego samego.

30

Odp: Ograniczenie dostępu

Nie, samo /sbin/xxxx.sh  bez start

Zapamiętaj ostatni status (np. w pliku w karalogu /tmp) a później porównaj czy jest taki sam. Jak nie to zapamiętaj ponownie i wyślij mejla.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

31 (edytowany przez jezy 2016-01-15 19:49:04)

Odp: Ograniczenie dostępu

Ok.

Jak mogę zmodyfikować ten skrypt ? aby zapamiętywało ostatni status

 #!/bin/sh 
if swconfig dev switch0 port 1 get link | grep -q "link:up"; then
cat /mnt/LAN1.txt | sendmail -t
if 

32

Odp: Ograniczenie dostępu

Ale ja to mam pisać czy chcesz się czegoś nauczyć i pisać samodzielnie? smile

#/bin/sh
touch /tmp/wynik
O1=$(swconfig dev switch0 port 1 get link)
O2=$(cat /tmp/wynik)
if [ "$O1" = "$O2" ]; then
 echo "to samo co było"
else
  echo "$O1" > /tmp/wynik
  if grep -q "link:up" /tmp/wynik; then
   cat /mnt/LAN1.txt | sendmail -t
  fi
fi

Nawet nie sprawdzałem czy działa.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

33

Odp: Ograniczenie dostępu

Działa idealnie.

Bardzo dziękuje za twoją  pomoc.  Bez twojej pomocy nie zrobił bym tego.

Mam nadzieje że będę mógł się jakoś odwdzięczyć.

34 (edytowany przez jezy 2016-04-30 19:03:53)

Odp: Ograniczenie dostępu

Zmieniłem firmware na 1.9.0.3.

Po zmianie firmware ma problem z wysyłaniem emaili.

W pliku msmtprc ma ustawienie:

 account default
host smtp.gmail.com
port 587
 from xxxxx@gmail.com
 timeout 30
auth plain
user xxxxx@gmail.com
password xxxxxxxxxxx
tls on 

Do wysłania emaila potrzeba jeszcze dwóch wpisów

 tls_starttls on
tls_certcheck off 

bez nich otrzymuje komunikat :

  sendmail: account default from /etc/msmtprc: tls requires either tls_trust_file (highly recommended) or tls_fingerprint or a disabled tls_certcheck 

Kiedy dopiszę do msmtprc :  tls_starttls on i tls_certcheck off,  emaile wychodzą w sposób właściwy.

  account default
host smtp.gmail.com
port 587
 from xxxxx@gmail.com
 timeout 30
auth plain
user xxxxx@gmail.com
password xxxxxxxxxxx
tls on
tls_starttls on
tls_certcheck off 

Niestety po wykonaniu zadania Email  Gargoyle Router report plik msmtprc nadpisuje się do ustawień domyślnych :

  account default
host smtp.gmail.com
port 587
 from xxxxx@gmail.com
 timeout 30
auth plain
user xxxxx@gmail.com
password xxxxxxxxxxx
tls on 

Jak można to zmienić ??

35

Odp: Ograniczenie dostępu

Zgłoś problem na https://github.com/ericpaulbishop/gargoyle/issues

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.