Crontab : rien ne s'écrit, rien ne se lance

Très drôle ! Je pense surtout qu’il y a une question d’âge ;°)

Alors mon fichier donne la même chose que le tient plus haut.

Plus la ligne :
*/2 * * * * pi cvlc /home/pi/farewell.mp3

Et ça ne lance rien toutes les deux minutes.

j’ai pas mis sur le bureau car je ne sais pas s’il faut mettre Bureau ou Desktop (quand je lance en manuel en mettant un chemin avec Bureau ça marche, mais dans le crontab je sais pas).

Faut pas mettre de point virgule à la fin ?

Tu peux réinstaller Raspbian au propre pour bosser sur du clair et net ?
Genre sur une clef USB.
(âge ? presque 45 pour moi :wink: )

En fait je l’ai déjà fait trois fois donc je crois pas que cela soit ça. (réinstallé à partir du menu de démarrage)

Plus jeune d’un an (y a un mois).

L’heure est pas à l’heure : ça doit pas poser problème pour des tâches cyclique, non ?

Je relance :

Crontab ne lance toujours rien par la porte ou par la fenêtre.

J’ai l’impression que j’installe pas la même version que tout le monde.

Aucune programmation ne marche même avec une installation à neuve. Les lignes de commandes marchent mais dans le Crontab rien.

Rien trouvé de similaire en ligne, j’en viens à regrette ubuntu ou le simple « sudo crontab -e » fonctionnait :sob:

Yo,

Tu fais bien
sudo nano /etc/crontab
et pas sudo nano etc/crontab ???
La différence est ÉNORME !

Sinon, tu peux tjrs coller Ubuntu Mate, mais pas sûr que cela soit mieux.

Perso, je n’ai que des postes Linux (+ 1 Mac) depuis 15 ans et je suis passé à LinuxMint sur les PC avec Raspbian sur les Rpi sans souci.
En simplifiant :

  • Ubuntu est basé sur Debian.
  • Raspbian est basé sur Debian.
    Bref, c’est souvent très très proche.

Dommage, je ne vais jamais sur Nantes, sinon, je serais passer voir le souci.
Il n’y a pas de raison.
Tu as forcément un crontab comme les autres :wink:

++

Bonjour,

L’editeur de crontab pouvant être particulier et pour éviter des erreurs. Voici comment je conseille de procéder pour créer/editer/modifier/valider une crontab.

mkdir ~/cron
cd ~/cron
echo "* * * * * date > /tmp/date.txt" > $USER.crontab 
crontab $USER.crontab

Vérifier que toutes les minutes le fichier /tmp/date.txt est modifié.

Ensuite pour apporter des modifications à ce fichier procéder comme suit

  • Copier le contenu de la crontab courante
    crontab -l > ~/cron/$USER.crontab

  • Editer le fichier

  • Installer le fichier en crontab
    crontab ~/cron/$USER.crontab

  • Vérifier que la crontab est écrite
    crontab -l

@nabla, le fichier /etc/crontab est la crontab du système, elle est différente de celle de root et de tous les utilisateurs qui se trouvent dans /var/spool/cron/crontabs. Attention ces fichier de doivent jamais être modifiés à la main. Le fait de passer par la commande crontab vérifie une certaine intégrité du fichier.

A+

@nabla : oui c’est bien /etc et non etc

Je vais essayer mais je trouve hallucinant que sur une commande aussi simple sur une installation neuve il faille trouver un truc pour contourner le problème ! Je veux pas dire que ça m’énerve, mais… ça m’énerve.

@JELOPO : merci pour ton aide

Pour le script :
mkdir ~/cron cd ~/cron echo « * * * * * date > /tmp/date.txt » > $USER.crontab crontab $USER.crontab

$USER : je met pi ou je laisse $USER ?

Je vous trouve bien compliqué, un bête crontab -e (qui ouvre le crontab de l’utilisateur, donc si on veut le crontab de root on fait un sudo crontab -e) et normalement on arrive directement dans le bon fichier…

Je pense que repartir sur une install fraiche ne ferait pas de mal, parce que c’est une fonction basique, quelque chose doit merdouiuller quelque part

@Gpapig
Sauf que crontab -e ou sudo crontab -e ou sudo nano crontab et tout ce que vous voulez, ça ne fais rien. Même avec 4 réinstalle fraîche.

Si je met un
*/2 * * * * cvlc /home/pi/opus42.mp3

Il enregistre mais il ne se passe jamais rien.

C’est bien ça qui m’énerve. Le Crontab se fout complètement de ce que j’enregistre il en fait rien. Si je tape les même lignes de commandes pour lancer les actions dans un Terminal, pouf ça marche.

J’ai lu qu’il fallait lancer un autorun si on voulait lancer des programmes dans le crontab en mode graphique, ce ne serait pas là le problème ?

Je peux me tromper mais je pense que ta sd est corrompue/défectueuse, le cron est vraiment une fonction basique et doit fonctionner out of the box.

Peux tu tester avec une autre SD ?

C’est la SD neuve de base vendu avec le pack. Il y a le logo Raspberry dessus.

Bonjour,

Rien ne dit que cette commande fonctionne en crontab ! Si elle a besoin de variables d’environnement graphique par exemple ça ne fonctionne pas par défaut en crontab. Il faut savoir que le shell de la crontab est restreint. Pour valider une crontab il faut commencer par vérifier des commandes simples (date ou echo dans un fichier).

Pour ma proposition $USER ou pi ça devrait être la même chose. J’ai mis $USER dans mon exemple car je ne connaissait pas le user utilisé pour la crontab.

A+

Neuve ou non une sd peut être défectueuse

Salut,

Je persiste !
Non pas que je veuille absolument avoir raison (comment ça je suis Breton ?!?), mais puisque j’ai passé du temps pour valider ma réponse (essais multiples et répétés) = je sais que ça fonctionne.

Le 07/06/2019 à 17h44, je notais :

Donc la simple ligne */5 * * * * pi cvlc /home/pi/Desktop/pi-test.m3u ajoutée a bien lancé cvlc et la liste de lecture.
Donc cette ligne fonctionne via crontab
Et elle se lançait bien toutes les 5 minutes !

Tu n’as pas une clef USB sur laquelle tu pourrais installer Raspbian pour changer de support physique et vérifier si ce n’est pas la carte SD qui … [bip] … dans la colle ?

++

Ok @Nabla, je ne contredis pas tes essais.

Je corrige. Disons que, avant de tester une commande un peu plus évoluée, tester d’abord une commande des plus simples, afin de valider la crontab. Car pour le moment on ne sait toujours pas si c’est la crontab qui ne fonctionne pas, l’écriture d’un fichier en crontab, ou bien la commande lancée qui n’est pas reconnue.
Personnellement, le support physique, même après 4 installations qui donne toujours le seul et même symptôme de crontab, je trouve cela très surprenant !

A+

Pas de problème @jelopo !
Je sais que tu ne me contredis pas (mais tu peux le faire si besoin :wink: ).
Et je te remercie pour le complément d’info et la procédure (que je dois tester en intégralité juste pour apprendre).
L’écriture de date fonctionne parfaitement ; j’ai laissé tourner presque 10 minutes avec succès.

Ce que je trouve bizarre, c’est qu’un truc aussi basique nous fasse tous tourner dingues (sans parler du pauvre @nantesweb qui va finir par se servir de son Rpi comme d’un Frisbee)

Du coup, @nantesweb tu peux coller ça dans ton Terminal :

mkdir ~/cron
cd ~/cron
echo "* * * * * date > /tmp/date.txt" > $USER.crontab
crontab $USER.crontab

Et nous dire si ça fonctionne ?

Chez moi, ça donne bien un fichier date.txt dans le dossier /tmp et son contenu est bien modifié chaque minute (je prends soin de refermer le fichier par principe)

++

(j’avoue que plusieurs installations qui foirent au même endroit ou presque j’ai trouvé ça bizarre, mais … j’ai eu ce cas sur une clef USB il y a qq mois : Mon LinuxMint se lançait en session « Live » et plantait (quasi) au même endroit lors de l’installation).

la troisième ligne et la quatrième faut les écrire d’un coup ou c’est deux lignes différentes ?
$USER c’est à remplacer par pi ou par root ?

Yo,

Si tu fais un [copier/coller] du « pâté », le retour ligne est interprété.

Si tu préfères, tu fais
mkdir ~/cron
puis
cd ~/cron
puis
echo "* * * * * date > /tmp/date.txt" > $USER.crontab
puis
crontab $USER.crontab

Et tu laisses exactement crontab $USER.crontab ; cela dit au système (en gros) « tu ne t’embêtes pas, je ne précise pas et tu colles ça pour le « user » utilisé actuellement ».

++

Résultat : erreur le temps de comprendre en faisant un copier coller ici que > c’était le caractère > à remplacer

C’est ok ça a marché.

Le fichier se met bien à jour toutes les minutes.

Du coup j’ai cherché le crontab où était enregistré la ligne. c’est bien : crontab -e tout simple

J’ai rajouté ma ligne : */2 * * * * cvlc /home/pi/opus42.mp4

Et pouf une première occurence viens de se lancer derrière mon dos pendant que je releavais mes emails.

Problème : j’ai le son mais pas le lecteur cvlc il doit manquer un display non ?

Ventre saint gris. La ligne :
38 13 * * * DISPLAY=:0 cvlc /home/pi/opus42.mp4; killall vlc

fonctionne

Maintenant ma question est :

  • Comment faire en sorte qu’il choisisse aléatoirement une playlist (ou vidéo) dans un répertoire
  • Comment lancer un diaporama d’images et idem choisir un diaporama aléatoire (entre les benchmarks du secteur et les photos de vacances)

Je vais faire des test pour ouvrir des fichiers tableurs

Ce qui est bizzarre c’est que le crontab -e c’est la première chose que j’ai essayé et qui ne marchait pas