[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Crontab ne lance pas ma commande ou mon script [RESOLU]



Le samedi 1 juin 2019, 16:09:02 CEST Tulum a écrit :

> Le samedi 1 juin 2019, 14:58:56 CEST Francois Lafont a écrit :

> > Bonjour,

> >

> > On 6/1/19 12:51 PM, Anouk LE CLOEREC wrote:

> > > 14 11 * * * /usr/bin/arecord -f cd -d 10 /mnt/dd1/Musique/test.wav

> >

> > C'est peut-être un problème d'environnement d'exécution. Par exemple

> > quand tu lances la commande de manière interactive, il y a une variable

> > d'environnement définie dont la commande a besoin mais qui n'est pas

> > définie lorsque c'est cron qui lance la commande...

> >

> > Pour avoir une chance d'obtenir un message d'erreur (qui puisse te

> > mettre sur une piste), insère tout ça dans un script bash (ou sh)

> >

> > avec quelque chose comme ça :

> > exec >/tmp/arecord.log 2>&1

> > echo begin

> > /usr/bin/arecord -f cd -d 10 /mnt/dd1/Musique/test.wav

> > echo end

> >

> > Si, dans l'environnement de ton cron, la commande arecord affiche

> > un message d'erreur ou autre, il sera inscrit dans le fichier

> > /tmp/arecord.log entre la ligne "begin" et la ligne "end" (tu peux

> > bien sûr prendre un autre chemin de fichier de log mais il faudra

> > juste être sûr que le compte Unix qui lance le cron est en mesure

> > d'écrire dans ce fichier de log, ce qui est a priori le cas dans

> > /tmp/).

> >

> > Si en revanche, il n'y a aucun message d'erreur ou autre, ça va

> > être compliqué... Regarder alors dans les logs de la distribution

> > éventuellement.

> >

> > À+

>

> J'ai effectivement un retour d'erreur dans le log :

> > begin

> > ALSA lib pcm_dsnoop.c:638:(snd_pcm_dsnoop_open) unable to open slave

> > arecord: main:828: erreur à l'ouverture audio: Périphérique ou ressource

> > occupé end

>

> Je sais donc qu'il y a un problème d'accès à la carte son via une tâche

> cron, mais je ne sais pas le résoudre.

 

En rajoutant : XDG_RUNTIME_DIR=/run/user/1000 dans ma commande crontab cela fonctionne :

30 17 1 6 * XDG_RUNTIME_DIR=/run/user/1000 /usr/bin/arecord -f cd -d 10 /mnt/dd1/Musique/test.wav

 

Ce que je comprends pas c'est que j'avais testé mettant le user (à la place de XDG_RUNTIME_DIR) et ça e marchait. Il aurait charger toutes les variables de l'utilisateur, non ?

 

BEGIN:VCARD
VERSION:3.0
EMAIL:tulum@free.fr
N:;;;;
NICKNAME:Tulum
UID:9cbfd6d5-d2b5-409f-b21b-2ac22f954429
X-KADDRESSBOOK-MailAllowToRemoteContent:TRUE
END:VCARD


Reply to: