Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Program pro restart PC  (Přečteno 1901 krát)

nitta

  • Návštěvník
  • Příspěvků: 17
Program pro restart PC
« kdy: 15 Února 2022, 14:48:05 »
Dobrý den,
měl bych dotaz, jde neexistuje nějaký program, který když si např. 3x nepingne do internetu, automaticky restartuje PC.
Díky.

juwa2

  • Závislák
  • ***
  • Příspěvků: 4935
Re:Program pro restart PC
« Odpověď #1 kdy: 15 Února 2022, 18:52:07 »
Napiš si na to skript, třebas s názvem  pingcontrol.sh
Kód: [Vybrat]
#!/bin/bash
if ping -c 3 -i 20 google.com > /dev/null; then
   notify-send "Internet funguje !" -t 3000 -i face-laugh
else
   notify-send "Internet > 1 min. nefunguje >> reboot in 10s !" -i face-sad
   sleep 10
   dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.Reboot boolean:false
fi

Pingne 3x na google.com v rozestupu 20s  a pokud vrátí chybový kód, restartuje PC. Hodnoty lze upravit dle potřeby.

Dále je už na tobě, jak s ním naložíš - můžeš ho spouštět jednorázově ručně, nebo pokud chceš to připojení kontrolovat automaticky stále, spouštěj ten skript (cronem) v určitém intervalu (každých 5 minut, každou hodinu atd.).
Pak si tu hlášku o fungujícím internetu můžeš #zakomenovat aby tě neotravovala..

------------------------------------------
Verze2 (bez nutnosti použít cron). Skript pingcontrol.sh  dej do domovské složky.
Nezapomeň mu nastavit spustitelnost (chmod a+x ~/pingcontrol.sh)
Kód: [Vybrat]
#!/bin/bash
if ping -c 3 -i 20 google.com > /dev/null; then
   notify-send "Internet funguje !" -t 3000 -i face-laugh
   sleep 300    ##interval kontroly
   $HOME/pingcontrol.sh & 
else
   notify-send "Internet > 1 min. nefunguje >> reboot in 10s !" -i face-sad
   sleep 10
   dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.Reboot boolean:false
fi

Skript spusť. Pokud internet funguje, skript poběží v nekonečné smyčce.  Interval "kontroly" se nastaví hodnotou sleep (300 = 5 minut).
Je vhodné přidat skript do autostartu - pak bude vše probíhat "bezobslužně".
« Poslední změna: 16 Února 2022, 11:55:40 od juwa2 »

jmp

  • Host
Re:Program pro restart PC
« Odpověď #2 kdy: 16 Února 2022, 12:18:46 »

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Re:Program pro restart PC
« Odpověď #3 kdy: 17 Února 2022, 02:25:56 »
I v shellu se juwo dají používat smyčky...

Kód: [Vybrat]
while ping -qc 3 -i 20 google.com; do sleep 300; done;  echo "nemáme spojení!"
« Poslední změna: 17 Února 2022, 12:08:17 od GdH »

 

Provoz zaštiťuje spolek OpenAlt.