Script automatique de backup EBS avec cron
Résolu/Fermé
A voir également:
- Script automatique de backup EBS avec cron
- Cobian backup - Télécharger - Sauvegarde
- Script vidéo youtube - Guide
- Windows backup - Guide
- Message automatique thunderbird - Guide
- Réponse automatique outlook - Guide
4 réponses
Bonjour,
Dans le cas de l'exécution d'un cronjob, aucun environnement n'est chargé au préalable. Ca signifie entre autre que ta variable PATH est vide.
Tu dois spécifier le chemin absolu de ton script, vérifier qu'il a bien un shebang, et :
- Soit utiliser uniquement des chemins absolus dans ton script ;
- Soit redéfinir le PATH et toutes les variables d'environnement nécessaires au début de ton script ;
- Soit sourcer ton environnement avant de lancer ton script :
Dans le cas de l'exécution d'un cronjob, aucun environnement n'est chargé au préalable. Ca signifie entre autre que ta variable PATH est vide.
Tu dois spécifier le chemin absolu de ton script, vérifier qu'il a bien un shebang, et :
- Soit utiliser uniquement des chemins absolus dans ton script ;
- Soit redéfinir le PATH et toutes les variables d'environnement nécessaires au début de ton script ;
- Soit sourcer ton environnement avant de lancer ton script :
2 11 * * * . /home/xxx/.profile ; /path/to/backs.sh >>/dev/null
J'ai essayé cette solution aussi, mais ça n'a rien changé en fait :s
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 407
14 sept. 2011 à 14:58
14 sept. 2011 à 14:58
Salut,
Est-ce que ton script est exécutable au moins ?
Quel est ton shell ?
Quel système ? Ou distrib ?
Est-ce que ton script est exécutable au moins ?
Quel est ton shell ?
Quel système ? Ou distrib ?
alors en fait, apparemment, lorsque je l'exécute automatiquement, il me marque ca : /root/backs.sh: line 16: ec2-create-snapshot: command not found
(manuellement, je n'ai aucun soucis de ce côté tout s'exécute correctement)
(manuellement, je n'ai aucun soucis de ce côté tout s'exécute correctement)
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 407
14 sept. 2011 à 15:46
14 sept. 2011 à 15:46
Affiches-nous ton script.
#!/bin/bash
set -x
DATESTAMP='date +%Y.%m.%d'
TIMESTAMP='date +%H%M'
LOGFILE="/var/log/_backup.log"
VOLUMES=( vol-cccf92a5 )
echo "CIT EBS BACKUP $DATESTAMP $TIMESTAMP" 2>&1 | tee -a $LOGFILE
echo " " 2>&1 | tee -a $LOGFILE
# Create a snapshot of each volume.
for volume in ${VOLUMES[@]}
do
ec2-create-snapshot -v $volume --region eu-west-1 -d backup-$DATESTAMP 2>&1 |tee -a $LOGFILE
done
#Remove older snapshots we don't need to keep any more.
#for volume in ${VOLUMES[@]}
# do
# ec2-manage-snapshots -v $volume 2>&1 | tee -a $LOGFILE
#done
echo "script executé"
set -x
DATESTAMP='date +%Y.%m.%d'
TIMESTAMP='date +%H%M'
LOGFILE="/var/log/_backup.log"
VOLUMES=( vol-cccf92a5 )
echo "CIT EBS BACKUP $DATESTAMP $TIMESTAMP" 2>&1 | tee -a $LOGFILE
echo " " 2>&1 | tee -a $LOGFILE
# Create a snapshot of each volume.
for volume in ${VOLUMES[@]}
do
ec2-create-snapshot -v $volume --region eu-west-1 -d backup-$DATESTAMP 2>&1 |tee -a $LOGFILE
done
#Remove older snapshots we don't need to keep any more.
#for volume in ${VOLUMES[@]}
# do
# ec2-manage-snapshots -v $volume 2>&1 | tee -a $LOGFILE
#done
echo "script executé"
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 407
14 sept. 2011 à 15:52
14 sept. 2011 à 15:52
Comme dit plus haut il faut que tu donnes les chemins ABSOLUS vers tes programmes !!!
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 407
14 sept. 2011 à 16:25
14 sept. 2011 à 16:25
ec2-create-snapshot il se trouve où dans ton arborescence ?
whereis ec2-create-snapshot