Crontab ne fonctionne pas sur CentOS 7
J'utilise CentOS 7, et installé "cronie"
yum install cronie
J'ai un shell pour la sauvegarde de mon dossier d'accueil, de shell, de contenu (bien sûr, backup.sh est de 775)
#!/bin/bash
#START
TIME=`date +%Y-%m-%d_%Hh%M`
FILENAME=backupHome_123.30.150.29_$TIME.tar.gz
SRCDIR=/home
DESDIR=/backup
tar -cpvzf $DESDIR/$FILENAME $SRCDIR
#END
Et ajouter à la commande " crontab-e
00 2 * * * /bin/bash /backup/backup.sh
Mais crontab ne fait rien. Quand je check log dans /var/log/cron seulement, quelque chose comme ça et pas plus d'erreur ou de traitement de journal
May 1 00:26:08 app crontab[12041]: (root) END EDIT (root)
May 1 00:33:21 app crontab[12086]: (root) BEGIN EDIT (root)
May 1 00:34:25 app crontab[12086]: (root) END EDIT (root)
Quelqu'un peut me donner quelques conseils pour faire crontab travail?
Merci.
- Vous définissez
2:00 AM
pour prendre de sauvegarde. - Où est exactement votre script? Est-il vraiment en
/backup/backup.sh
? Note crontab doit chemins d'accès complets. - oui, je veux exécuter la sauvegarde à 2H du matin tous les jours.
- est chemin d'accès complet 🙂 à / j'ai créer le dossier de sauvegarde, de sorte que, chemin d'accès complet est /backup/backup.sh 🙂
Vous devez vous connecter pour publier un commentaire.
Cela peut se produire si le démon cron n'est pas en cours d'exécution.
Vérifier avec:
Si la commande ne retourne rien, exécutez:
Cela devrait aider.
J'ai trouvé que le plus utile de l'information a été donnée par
Qui a révélé qu'il n'a pas charger correctement en raison d'un "non autorisée contexte SELinux" erreur.
Vous voulez vous assurer que cron est lancé & qu'il est démarré si votre serveur redémarre donc, vous avez besoin de deux commandes sur CentOS 7 assurez-vous de ceci:
Si vous êtes habitué à l'utilisation de sudo, vous pouvez ajouter sudo devant la commande ci-dessus.
VOUS PERMETTRA d'obtenir la confirmation de système, quelque chose comme:
Créé lien symbolique de /etc/systemd/system/multi-utilisateur.cible.veut/crond.un service de /usr/lib/systemd/system/crond.service.
Puis enfin la case cron est en cours d'exécution
pgrep cron
Je sais que je suis en retard pour vous répondre, mais peut-être que quelqu'un va avoir ce genre de problème. Il est possible que CRON ne pouvez pas exécuter le script, parce que le chemin n'est pas correct.
Votre chemin est
Je suppose que le chemin d'accès doit être:
Seule différence est l'espace après bash répertoire et sh commande au début de la tâche CRON.