Come eseguire il backup su Amazon S3 con lo script Shell

23 mar 2022 2 min di lettura
Come eseguire il backup su Amazon S3 con lo script Shell
Indice dei contenuti

Introduzione

Amazon Simple Storage Service (Amazon S3) è un dispositivo di archiviazione di oggetti basato su cloud. È uno storage a basso costo ampiamente utilizzato per il backup o il contenuto statico del sito Web.

Puoi utilizzare l'utilità della riga di comando AWSCLI per gestire il bucket s3 e il relativo contenuto. In questo tutorial imparerai come eseguire il backup di un sito Web nel bucket Amazon s3 utilizzando uno script di shell.

Installare AWS CLI

I pacchetti AWS CLI sono disponibili nei repository predefiniti sulla maggior parte dei sistemi Linux. Puoi installarlo eseguendo uno dei seguenti comandi.

Fedora, Redhat e CentOS:

sudo dnf install awscli

Ubuntu, Debian e Linux Mint:

sudo apt install awscli 

Una volta terminata l'installazione, controlla la versione di awscli eseguendo questo comando:

aws --version 

Creare uno script di shell

Ora crea un file di script di shell sul tuo sistema e aggiungi il contenuto seguente.

Per questo tutorial, ho creato il file usando l'editor nano:

nano /scripts/s3WebsiteBackup.sh  

Aggiungere il seguente contenuto:

#/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

Assicurati di aggiornare S3_BUCKET_NAME e DIR_TO_BACKUP nello script. Puoi anche modificare il nome del file di backup nella variabile BACKUP_FILENAME.

Salva il file e chiudilo. Ora hai uno script di shell per eseguire il backup del contenuto del sito Web nei bucket s3.

Eseguire lo script della shell

Rendi eseguibile lo script della shell eseguendo il comando seguente:

chmod +x /scripts/s3WebsiteBackup.sh 

Ora puoi testare lo script eseguendolo manualmente:

bash /scripts/s3WebsiteBackup.sh 

In caso di successo, i backup verranno caricati nel bucket s3. Che puoi visualizzare usando questo comando:

aws s3 ls

Pianificare lo script in Cron

Quindi, pianifica il tuo script su crontab per automatizzare questo lavoro. Per modificare il crontab dell'utente corrente, digitare:

crontab -e 

Aggiungi la seguente voce al crontab:

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

Salva il file e chiudi l'editor.

Conclusione

Questo tutorial fornisce uno script di shell per eseguire il backup del contenuto del sito Web nel bucket S3. Include anche le istruzioni per eseguire questo script.

Support us with a

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.