Резервное копирование настроек контроллера

From Wiren Board
This is the approved revision of this page, as well as being the most recent.


Через веб-интерфейс

Резервное копирование через веб-интерфейс

Через Консоль

Контроллер — это компьютер с Linux, поэтому и методы резервного копирования точно такие же. Про то, где хранятся файлы настроек можно почитать в инструкции про обновление прошивки.

Все команды выполняются в консоли контроллера, доступ к ней можно получить через SSH или Debug Console.

Подготовка

Перед началом:

  • определите модель контроллера (WB6, WB7, WB8);
  • проверьте наличие известных проблем, влияющих на файловую систему или резервное копирование в Errata WB6, WB7 и WB8;
  • убедитесь, что в /mnt/data достаточно свободного места:
    df -h /mnt/data
    

Для создания резервной копии должно быть как минимум в 2–3 раза больше свободного места, чем размер архива.

Резервное копирование

  1. Подключитесь по SSH:
    ssh root@<IP_КОНТРОЛЛЕРА>
    
  2. Создайте архив с конфигурацией:
    Минимальный архив:
    tar -zcvf /root/backup_$(uname -n)_$(date '+%Y-%m-%d').tar /mnt/data/etc
    
    Расширенный архив (если используете сторонние сервисы):
    tar -zcvf /root/backup_$(uname -n)_$(date '+%Y-%m-%d').tar \
      /mnt/data/etc \
      /root/zigbee2mqtt/data \
      /opt/majordom \
      /etc/systemd/system/majordom-iot-loader.service
    
    Добавляйте только те пути, которые существуют и содержат важные для вас данные.
  3. Проверьте, что архив создан:
    ls -lh /root/backup_имя_файла.tar
    
  4. Скопируйте архив на внешний компьютер:
    На Linux/macOS:
    scp /root/backup_имя_файла.tar user@<IP>:/путь/до/папки
    
    Для macOS необходимо включить "Удалённый вход" в меню "Общий доступ" в настройках macOS и выдать доступ для нужного пользователя
    На Windows:
    * Установите WinSCP
    * Подключитесь по SFTP как root и скачайте файл из /root/
    * Альтернатива — использовать Git Bash или WSL:
    scp root@<IP>:/root/backup_имя_файла.tar /c/Users/Имя/Downloads
    

Проверка контрольной суммы

На контроллере:

md5sum /root/backup_имя_файла.tar | awk '{print $1}'

На Linux/macOS:

md5sum /путь/до/файла.tar | awk '{print $1}'

На Windows:

certutil -hashfile C:\Usersмя\Downloads\backup_имя_файла.tar MD5

Если контрольные суммы не совпадают — файл повреждён, скачайте заново.

Очистка

После успешной проверки можно удалить архив с контроллера:

rm /root/backup_имя_файла.tar

Восстановление из резервной копии

  1. Скопируйте архив обратно на контроллер:
    scp user@<IP>:/путь/до/архива/backup_имя_файла.tar /root/
    
  2. Распакуйте архив:
    tar -zxvf /root/backup_имя_файла.tar -C /
    
    Внимание: файлы в целевых папках будут перезаписаны. Убедитесь, что вы сохраняете актуальную копию текущих данных

После восстановления проверьте, что настройки восстановились.

Возможные ошибки

Ошибка Возможная причина Решение
Permission denied при scp Неверный логин или пароль Проверьте имя пользователя и пароль
No space left on device Недостаточно места на устройстве Освободите место или используйте другой раздел
Несовпадение md5sum Повреждённый файл Скачайте файл заново

Дополнительные инструменты