Auto reboot Raspberry Pi เมื่อมัน hang ไปซะเฉยๆ ด้วย Watchdog
![](https://fbcdn-sphotos-e-a.akamaihd.net/hphotos-ak-prn1/66740_612173052146072_760154190_n.jpg)
บางครั้งเราเปิด rPi ไว้บ้านเพื่อนทำ Home automation หรือ load bit ก็ว่ากันไปแล้วมันหยุดทำงาน ตอนเราไม่อยู่บ้าน แหมเหมือนใจมันจะขาดรอนๆ จะสั่งใครให้ reboot ให้ก็ไม่ได้
วันนี้เรามาดูวิธีติดตั้ง watchdog เพื่อให้มันเฝ้าดูการทำงานของเครืองให้เรากันครับ โดย watchdog timer นัั้นจะเป็นการทำงานด้านฝั่ง hardware เลย โดยจะนับถอยหลังจากค่าที่เรากำหนดไว้จนได้ค่าเป็น 0 มันจะสั่งให้ rPi reboot ทันที ซึ่งโดยปกติถ้าระบบทำงานปกติค่าตัวแปรจะถูกอัพเดตให้มีค่าสูงไว้ตลอด ถ้านับได้ 0 แปลว่ามัน หยุดทำงานไปแล้วนั่นเอง
ซึ่งโชคดีมากที่ Broadcom BCM2835 SoC ของ Raspberry Pi เรามาพร้อมกับ hardware-based watchdog timer ทำให้เราสามารถใช้งานได้ตามนิยามในย่อหน้าแรก
Load the bcm2708_wdog kernel module
ทำได้โดยเปิดไฟล์ /etc/modules แล้วเพิ่มบรรทัดนี้ลงไป
bcm2708_wdogจากนั้นสั่ง load module เพื่อให้ทำงานได้ทันที ไม่ต้อง reboot
sudo modprobe bcm2708_wdog
Install the software watchdog daemon
ติดตั้ง package watchdog ด้วยคำสั่ง
sudo apt-get install watchdog
และสั่งให้ทำงานทุกครั้งเมื่อเริ่มระบบ
sudo update-rc.d watchdog defaults
Configure the watchdog daemon
เปิดไฟล์ /etc/watchdog.conf ขึ้นมาแก้ไข โดยเอาเครื่องหมาย # ออกจากหน้าบรรทัดเหล่านี้เพื่อให้โปรแกรมอ่านค่า parameter เหล่านี้
#watchdog-device
.
.
.
#max-load-1 = 24
หลังจากนั้นสั่งให้ service watchdog ทำงานด้วยคำสั่ง
sudo /etc/init.d/watchdog startลองหางานหนักๆให้มันทำงานแล้วดูว่าระบบมัน auto reboot ให้รึเปล่า
เท่านี้ก็ได้ผู้ช่วยคนใหม่มาคอย reboot ให้แล้วครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น