Как сделать резервную копию на Amazon S3 с помощью сценария оболочки

12 set 2022 2 min di lettura
Как сделать резервную копию на Amazon S3 с помощью сценария оболочки
Indice dei contenuti

Введение

Amazon Simple Storage Service (Amazon S3) — это облачное хранилище объектов. Это недорогое хранилище, которое широко используется для резервного копирования или статического содержимого веб-сайтов.

Вы можете использовать утилиту командной строки AWSCLI для управления корзиной s3 и ее содержимым. В этом руководстве вы узнаете, как создать резервную копию веб-сайта в корзине Amazon s3 с помощью сценария оболочки.

Установите интерфейс командной строки AWS

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

Fedora, Redhat и CentOS:

sudo dnf install awscli

Ubuntu, Debian и Linux Mint:

sudo apt install awscli

После завершения установки проверьте версию awscli, выполнив эту команду:

aws --version

Создать сценарий оболочки

Теперь создайте файл сценария оболочки в своей системе и добавьте следующее содержимое.

Для этого урока я создал файл с помощью редактора nano:

nano /scripts/s3WebsiteBackup.sh

Добавьте следующее содержимое:

#/usr/bin/env bash

 ########################################################
 ##
 ## Shell script to archive website code and upload
 ## to S3 bucket.
 ##
 ##
 ########################################################


 S3_BUCKET_NAME=""
 DIR_TO_BACKUP="/var/www/html"
 BACKUP_FILENAME='website'

 TODAY=`date +%Y%m%d`
 YY=`date +%Y`
 MM=`date +%m`
 AWSCMD="/usr/local/bin/aws"
 TARCMD="/usr/bin/tar"

 ${TARCMD} czf /tmp/${BACKUP_FILENAME}-${TODAY}.tar.gz

 ${AWSCMD} cp /tmp/${BACKUP_FILENAME}-${TODAY}.tar.gz s3://${S3_BUCKET_NAME}/${YY}/${MM}/if [ $? -eq 0 ]; then
 echo "Backup successfully uploaded to s3 bucket"
 else
 echo "Error in s3 backup"
 fi

Обязательно обновите S3_BUCKET_NAME и DIR_TO_BACKUP в сценарии. Вы также можете изменить имя файла резервной копии в переменной BACKUP_FILENAME.

Сохраните файл и закройте его. Теперь у вас есть сценарий оболочки для резервного копирования содержимого веб-сайта в корзины s3.

Запустите сценарий оболочки

Сделайте сценарий оболочки исполняемым, выполнив следующую команду:

chmod +x /scripts/s3WebsiteBackup.sh

Теперь вы можете протестировать скрипт, запустив его вручную:

bash /scripts/s3WebsiteBackup.sh

В случае успеха резервные копии будут загружены в корзину s3. Который вы можете просмотреть с помощью этой команды:

aws s3 ls

Расписание скрипта в Cron

Затем запланируйте свой сценарий в crontab, чтобы автоматизировать эту работу. Чтобы изменить crontab текущего пользователя, введите:

crontab -e

Добавьте следующую запись в crontab:

0 2 * * * bash /scripts/s3WebsiteBackup.sh

Сохраните файл и закройте редактор.

Вывод

В этом руководстве представлен сценарий оболочки для резервного копирования содержимого веб-сайта в корзину S3. Он также включает инструкции по запуску этого скрипта.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.