Ежедневный бэкап файлов сайта с уведомлением в Telegram

Monitoring 25-06-2021, 19:10 sobir 1 098 0


Напишем скрипт, который будет создавать ежедневный архив файлов сайта с использованием сжатия, а также отправку уведомлений в Telegram.

Содержимое скрипта:
vi /root/daily_bak.sh
#!/bin/bash

DATE=`date +%d-%m-%Y`
DATA="/data/app"
BAKDIR="/srv/backup"
BAKFILE="newsite_com.tar.gz"

tar -cpvzf $BAKDIR/$BAKFILE-$DATE $DATA

if [ -e $BAKDIR/$BAKFILE-$DATE ];
then
echo "Backup completed successfully..."
curl --header 'Content-Type: application/json' --request 'POST' --data '{"chat_id":"123456789","text":"Backup completed successfully"}' "https://api.telegram.org/bot0123456789:AAGb32HeVmtUPYMLz0ikJ8X_NXTBXL3vKX9/sendMessage"
else
echo "Backup failed."
curl --header 'Content-Type: application/json' --request 'POST' --data '{"chat_id":"123456789","text":"Backup failed"}' "https://api.telegram.org/bot0123456789:AAGb32HeVmtUPYMLz0ikJ8X_NXTBXL3vKX9/sendMessage"
fi

где, 123456789 это id моего аккаунта. Чтобы его узнать, добавьте бота @my_id_bot и напишите ему /start.
bot0123456789:AAGb32HeVmtUPYMLz0ikJ8X_NXTBXL3vKX9 - слово bot и token бота. Пишется все вместе.

Делаем скрипт исполняемым:
chmod u+x /root/daily_bak.sh

Добавляем задание в запланировщик задач:
crontab -e
45 23 * * * /root/daily_bak.sh
Похожие новости
Разворачиваем LEMP-стэк на контейнерах Docker

Контейнеризируем сервисы LEMP с помощью docker-compose....

Подробнее
Настройка авторитетного DNS сервера BIND в CentOS 8 / RHEL 8

Установка и настройка первичного сервера доменных имен BIND....

Подробнее
Мониторинг статус-кодов HTTP NGINX в Zabbix

Мониторинг кодов состояния сайта из лог-файла nginx access log....

Подробнее
Настройка частного реестра Docker Private Registry

Создаем свой репозиторий образов контейнеров Docker....

Подробнее
Разворачиваем NGINX в Docker

Создание кастомного образа nginx из Dockerfile....

Подробнее
Запрещаем веб трафик на origins, кроме Cloudflare IPs

Разрешаем веб трафик на сервер NGINX только с серверов Cloudflare....

Подробнее
Комментарии (0)
Новые комментарии
FidoNet20 октября 2024 12:12

Можт быть дело в dnsmasq.service? Ошибка Failed to set DNS configuration: Unit

img
К комментарию
FidoNet19 октября 2024 17:48

Цитата: sobir Цитата: FidoNet Спасибо за статью. Остальные статьи что находил

img
К комментарию
sobir13 октября 2024 13:22

Цитата: FidoNet Спасибо за статью. Остальные статьи что находил либо старые,

img
К комментарию
FidoNet28 сентября 2024 05:10

Спасибо за статью. Остальные статьи что находил либо старые, либо неполные. Всё

img
К комментарию
komronu8 сентября 2022 18:23

Салом, можно ещё создать файл в /etc/nginx/proxy_params, a потом добавить туда

img
К комментарию
sobir26 августа 2022 10:43

Можно ещё так: 1. Создаем отдельную сеть для наших контейнеров docker network

img
К комментарию
Все комментарии
Какой дистрибутив Linux вы часто используете?
Календарь
«    Октябрь 2024    »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031 
Подпишись на канал