Script shell
Créé le mai 9, 2020
Mis à jour le septembre 29, 2023
2 min read

Sauvegardez votre système à l’aide d’un simple script Shell

Il s’agit d’un moyen super simple de sauvegarder votre système sans dépenser un centime. Cela peut vraiment être pratique, car la sauvegarde est toujours importante.

Quelqu’un a dit « Quand vos données n’existent pas trois fois, cela signifie qu’elles n’existent pas du tout ». Alors faites des sauvegardes et sauvegardez vos sauvegardes.  

Nous y voilà :

#!/bin/
date
echo "############### Backup of files on my server ###############"


backupfilename=server_backup_`date '+%Y-%m-%d'`


echo "----- Sql first and dumping current DB -----"
rm -f /tmp/backup.sql

mysqldump --user=youruser --password=yourpassword --all-databases --add-drop-table > /tmp/backup.sql


echo "----- Tar plus zip all files -----"


tar cvf /home/mybackups/files/${backupfilename}.tar /home/www/html/* /tmp/backup.sql
gzip /home/mybackups/files/${backupfilename}.tar
chmod 666 /home/mybackups/files/${backupfilename}.tar.gz
echo "############### Backup done successfully.... ###############"
date

***

Expliquons maintenant chaque ligne :

date => nous voulons voir la date du serveur dans notre fichier de log.

backupfilename=server_backup_`date ‘+%Y-%m-%d’` => nom de fichier de la sauvegarde avec la date

rm -f /tmp/backup.sql ==> nous supprimons l’ancien fichier de sauvegarde sql généré

mysqldump => nous sauvegardons à nouveau toutes les bases de données sql

tar cvf home/www/html/ /tmp/backup.sql => Vous sauvegardez tout home/www/html/* et /tmp/backup.sql Vous pouvez aussi exclure certains chemins avec : –exclude=’votrefichierpath’.

Maintenant, exécutons le script

Nommez votre fichier ‘backup.sh’.

Pour l’exécuter, vous devez ouvrir l’invite du terminal et commencer par un point ‘.’. Ainsi, si vous nommez votre fichier backup.sh, vous obtiendrez .backup.sh.

Maintenant, nous allons l’automatiser parce que vous ne voulez probablement pas le faire manuellement tous les jours.

Donc si vous voulez l’exécuter automatiquement tous les jours à 23h55, vous ouvrez votre crontab avec crontab -e et vous ajoutez ceci :

     55 23 * * * /path/toyourfile/backup.sh >> /path/toyourlogfile/backups.log

Et, fermez votre terminal crontab avec “:x”

NOTE :

>> /path/toyourlogfile/mybackups.log n’est pas obligatoire, il est seulement nécessaire si vous voulez être en mesure de voir le journal de votre sauvegarde en cas d’erreur.

Si vous voulez définir une heure différente dans votre cron, je vous recommande d’utiliser cet outil qui est super facile et qui fera le travail.

Si vous sollicitez une aide pour un développement web personnalisé, veuillez contacter notre agence de développement web. Nous avons plus d’une décennie d’expérience dans le développement web et nous sommes la meilleure agence web à Montréal.

Plus