Probíhá hledání...

Script na automatické restartování serveru při ztrátě konektivity

Pokud potřebujete restartovat server pokaždé když ztratí konektivitu, můžete použít jednoduchý script.
Script kontroluje připojení každých 10 minut.

Pro následující kroky bude potřeba:


  • Operační systém linux (Ubuntu, Debian, Arch linux)
  • Textový editor (nano, vim)
  • Sudo uživatele

Varianta rc.local

Za pomoci sudo uživatele a textového editoru upravíme soubor /etc/rc.local

sudo nano /etc/rc.local
Do souboru přidáme script.

#!/bin/sh
# /etc/rc.local: Local multi-user startup script
while [ 1 ]; do
if [ -z "$(ping -c 1 www.google.com)" ]
then
shutdown -r now
fi
sleep 600
done

exit 0

Soubor uložíme a zavřem.
Následně restartujeme a script už nám bude restartovávat server pokaždé když připojení vypadne.

Varianta systemd

Za pomoci sudo uživatele a textového editoru upravíme soubor /etc/rc.local

sudo nano /etc/rc.local
Do souboru přidáme script

#!/bin/sh
# /etc/rc.local: Local multi-user startup script
while [ 1 ]; do
if [ -z "$(ping -c 1 www.google.com)" ]
then
shutdown -r now
fi
sleep 600
done

exit 0

Soubor uložíme a zavřem.
Dále vytvoříme soubor /usr/lib/systemd/system/rc-local.service

sudo nano /usr/lib/systemd/system/rc-local.service
a do souboru vložíme

[Unit]
Description=/etc/rc.local compatibility

[Service]
Type=oneshot
ExecStart=/etc/rc.local
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Soubor uložíme a zavřem. Nastavíme spustitelný příznak pomocí

chmod +x /usr/lib/systemd/system/rc-local.service
Následně stačí script zapnout a spustit.

sudo systemctl enable rc-local.service
sudo systemctl start rc-local.service

Nyní pokaždé když vypadne konektivita se server automaticky restartuje.

Komentáře

Pro odeslání komentáře je nutno být přihlášen