Нужно настроить резервное копирование для OpenWrt роутера. Расскажу как это сделано у меня на момент написания этой заметки.
Точка доступа
Есть китайский роутер (китайский он аж до формы вилки) Xiaomi Redmi AX6. С недавних пор на него стала доступна официальная прошивка OpenWrt 23.05. До этого была не официальная бета прошивка, бекап для которой еще более актуален.
Скрипт для OpenWrt
Основной скрипт простой:
|
|
Тут мы указываем:
BACKUP_PATH
- путь, куда складывать бекап (на текущей машине это syncthing папка);HOST
- домен (или адрес) точки доступа.
Имя файла с бекапом будет состоять из названия хоста и даты-времени создания бекапа. Так же есть маленький вспомогательный скрипт, который удаляет все бекапы старше 30 дней. Теперь запустим этот скрипт можно сделать бекап, скачать его, удалить старые бекапы.
Автоматизация запуска
На текущий момент этот процесс происходит с рабочей станции. Тут есть несколько причин почему, но основные две:
- включаю я рабочую станцию чаще, чем меняю настройки точки доступа (обычно с нее и меняю);
- на момент настройки бекапа не было ничего кроме точки доступа и рабочей станции.
Из-за этих особенностей пришлось дописать еще небольшую обвязку поверх systemd и его таймеров. Сервис, который запускает бекап, выглядит так:
|
|
Тут указано, что это “одноразовый” скрипт и путь к его запуску. Так же для его запуска имеется таймер:
|
|
В таймер срабатывает через 15 минут после загрузки системы и далее раз в сутки в это время, если компьютер не выключался.