FAQ Infinity

Есть Raspberry Pi, он иногда сбоит, нужно чтобы он при сбоях сам перезапускался

Raspberry Pi - это компактный одноплатный компьютер, который может использоваться для различных проектов и задач. Однако, как и любое другое устройство, иногда Raspberry Pi может столкнуться с сбоями, которые могут требовать ручного перезапуска.

Чтобы избежать неудобств и обеспечить автоматическую перезагрузку Raspberry Pi при сбоях, можно воспользоваться некоторыми инструментами и настройками.

Использование watchdog

Один из способов автоматической перезагрузки Raspberry Pi при сбоях - использование модуля watchdog. Watchdog представляет собой аппаратную или программную схему, которая следит за работоспособностью компьютера и при определенных условиях выполняет автоматическую перезагрузку.

  1. Для начала убедитесь, что ваш Raspberry Pi поддерживает watchdog и что модуль включен. Вы можете проверить это в файле /boot/config.txt, добавив следующую строку:

    dtparam=watchdog=on
    
  2. Установите пакет watchdog с помощью утилиты apt:

    sudo apt install watchdog
    
  3. Внесите изменения в файл конфигурации watchdog:

    sudo nano /etc/watchdog.conf
    

    Раскомментируйте (уберите # перед строкой) и измените следующие параметры:

    watchdog-device = /dev/watchdog
    max-load-1      = 24
    watchdog-timeout = 15
    interval        = 5
    
  4. Перезапустите службу watchdog:

    sudo systemctl restart watchdog
    

Это настроит watchdog для автоматической перезагрузки Raspberry Pi, если система перестанет отвечать.

Использование скрипта перезагрузки

Если watchdog недоступен или вы предпочитаете другой подход, можно написать скрипт, который будет проверять работоспособность Raspberry Pi и перезапускать его при необходимости.

  1. Создайте новый файл для скрипта. Например, watchdog.sh:

    nano watchdog.sh
    
  2. Вставьте следующий скрипт в файл:

    #!/bin/bash
    
    while true; do
        if ! ping -c 1 google.com &> /dev/null; then
            echo "The network is down. Rebooting..."
            sudo reboot
        fi
        sleep 10
    done
    

    Этот скрипт будет проверять доступность сети, пингуя google.com каждые 10 секунд. Если пинг не проходит, то будет выполнена команда sudo reboot, перезапускающая Raspberry Pi.

  3. Сохраните файл и сделайте его исполняемым:

    chmod +x watchdog.sh
    
  4. Запустите скрипт в фоновом режиме:

    ./watchdog.sh &
    

Данный скрипт будет работать в фоновом режиме и автоматически перезапускать Raspberry Pi при сбоях сети.

Заключение

С использованием watchdog или скрипта перезагрузки, вы можете обеспечить автоматическую перезагрузку Raspberry Pi при сбоях. Это значительно упростит обслуживание и предотвратит длительные периоды простоя в случае возникновения проблем.

Неважно для каких целей вы используете Raspberry Pi, надежная автоматическая перезагрузка поможет сохранить его работоспособность без необходимости вмешательства пользователя.