web-dev-qa-db-fra.com

Le script ne s'exécute pas au démarrage à l'aide de crontab

J'essayais de lancer un de mes scripts au démarrage en utilisant les méthodes rc.local et crontab, mais aucune ne fonctionne.

Voici le contenu de mon script:

#!/bin/bash
Sudo hue spectrum 2
exit 0

Voici le contenu de ma crontab (moins les commentaires):

@reboot /home/ben/Documents/startup_scripts/hue+.sh

EDIT: J'ai essayé d’utiliser la commande echo pour me simuler en tapant mon mot de passe sur une ligne, mais hélas, cela n’a pas fonctionné non plus. Voici cette version du script:

#!/bin/bash
echo <mypassword> | Sudo -S hue spectrum 2
exit 0

EDIT 2: J'utilise le fichier crontab Sudo et la commande hue lance une version open source du logiciel FAO de NZXT qui me permet de contrôler les périphériques NZXT de mon ordinateur (refroidisseur, ventilateurs, voyants, etc.). Voici également le "hue.log" fichier pour ceux qui l'ont demandé

/home/ben/Documents/startup_scripts/hue+.sh: line 2: hue: command not found

Je ne sais pas pourquoi il dit que la commande n'a pas été trouvée. Cette commande fonctionne à 100% avec Sudo

EDIT 3: Je me suis ajouté au groupe "dialout" et la commande fonctionne maintenant sans Sudo. Malheureusement, le fichier journal est identique à ce qu'il était auparavant et le script ne fonctionne toujours pas au démarrage.

/home/ben/Documents/startup_scripts/hue+.sh: line 2: hue: command not found
1
Benperson

Cette solution est peut-être très situationnelle pour moi, mais j'ai ajouté une commande de veille à mon fichier crontab pour donner plus de temps à l'ordinateur.

0
Benperson

Ajoutez le script à la crontab de root.

Sudo crontab -e

Vous pouvez maintenant laisser le Sudo dans le script.

1
ejjl