Αυτόματη επανεκκίνηση σε kernel panic , hardware freeze και wlan disconnections
Όταν τρέχεις στο raspberry κάποιους σέρβερ , τους θέλεις πάντα διαθέσιμους .
Χρειάζεσαι λοιπόν κάποιου είδους λύση για τις περιπτώσεις που κολλήσει για οποιοδήποτε λόγο και δεν ανταποκρίνεται.
H απάντηση και μάλιστα σε επίπεδο hardware λέγετε watchdog και η λειτουργία του είναι απλή .
Είναι ένας microcontroler ο οποίος έχει έναν timer μέσα στον οποίο πρέπει να λάβει ένα σήμα από το σύστημα.Όσο το σύστημα είναι λειτουργικό επικοινωνεί με τον controler κανονικά . Αν όμως κολλήσει για κάποιο λόγο ο timer θα πάει στο μηδέν και θα στείλει το reset signal και το σύστημά μας θα επανεκκινήσει .
Ενεργοποίηση hardware dog
Στα raspberry 3 και 4 το kernel module είναι από deffault διαθέσιμο και δεν απαιτείτε η εγκατάσταση του αλλά μόνο η ενεργοποίηση του
sudo su echo 'dtparam=watchdog=on' >> /boot/config.txt reboot
Εγκατάσταση του system service
Arch:
yay -S watchdog
Debian:
sudo apt-get install watchdog
Configure service
sudo su echo 'watchdog-device = /dev/watchdog' >> /etc/watchdog.conf
echo 'watchdog-timeout = 15' >> /etc/watchdog.conf
echo 'max-load-1 = 24' >> /etc/watchdog.conf
echo 'interface = wlan0' >> /etc/watchdog.conf
Ενεργοποίηση και εκκίνηση του service
sudo systemctl enable watchdog
sudo systemctl start watchdog
systemctl status watchdog
fork bomb (testing)
sudo bash -c ':(){ :|:& };:'
το παρόν είναι αναδημοσίευση του blogpost μου εδώ