[Bash] - Probleme de PATH ? permissions ?

Parce qu'il en faut pour tout le monde, discutez ici d'ADA, de shell et autres Wolfram...

Modérateur : Francois

Verrouillé
silver-slider
Messages : 20
Enregistré le : dim. 17 avr. 2016 20:56

[Bash] - Probleme de PATH ? permissions ?

Message par silver-slider » ven. 6 mai 2016 17:50

Bonjour,
Je suis en train de m'arracher les 4 cheveux qui me reste...

J'ai fait une tache cron pour executer mon script ci dessous, script qui fonctionne très bien si je le lance avec la commande "./transfert.sh depuis le répertoire ou il se trouve:

Code : Tout sélectionner

#!/bin/bash

serveurdistant="xxx.xxx.xx.xx"
pathdestination="httpdocs/test"
Username="admin_xxxxxx"
Password="xxxxxxxx"
Port='21'

ftp -n $serveurdistant <<END_SCRIPT
quote USER $Username
quote PASS $Password
cd $pathdestination
put donnees.csv
quit
END_SCRIPT

exit
En revanche même si la tache cron s'execute bien le fichier donnees.csv ne part pas.

j'ai essayer d'executer le script depuis l'invite de l'user en ayant pris soin de modifier le path afin d'obtenir ca:

Code : Tout sélectionner

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/[b]games:/home/pi/Envoi/[/b]
mais ou que je me place, sauf a être le répertoire /Envoi, j'ai immanquablement cette erreur
local: donnees.csv: No such file or directory
Pourtant le fichier est bien là et les permissions sont (a priori) bonnes

Code : Tout sélectionner

-rwxr-xr-x 1 pi pi   2 mai    6 16:51 donnees.csv
-rwxr-xr-x 1 pi pi 256 mai    6 16:52 transfert.sh
je me doute donc que l'execution du cron est confrontée au même problème, mais lequel ??
Le pire c'est que hier j'étais parvenu a faire fonctionné l'ensemble, mais en changeant d'user et de répertoire, tout a merdouillé et je ne vois vraiment pas ou...
si vous avez des idées je suis preneur ;)

Dergonic
Messages : 20
Enregistré le : mer. 17 sept. 2014 15:02
Localisation : Belgique (Arlon)

Re: Bash: Probleme de PATH ? permissions ?

Message par Dergonic » ven. 6 mai 2016 18:38

J'avoue ne jamais avoir eu de soucis avec le lancement de tâche cron
Mais sinon, dans le cron, tu met le chemin complet de ton script ("/home/pi/Envoi/transfert.sh" au lieu de "transfert.sh"). Perso, je fait toujours comme ca, ca permet quand tu vérifie tes crons 6 mois plus tard de ne pas devoir chercher le script dans tout les répertoires du path ;)

Question idiote, ":/home/pi/Envoi/" ne devrait-il pas être ":/home/pi/Envoi" (sans le / à la fin)


[EDIT] oups, my bab, j'avait pas vu que c'est le CSV qui est "not found", pas le script ;)
Dans ton transfert.sh, remplace "put donnees.csv" par son chemin complet "put /home/pi/Envoi/donnees.csv"

domi
Administrateur
Messages : 3230
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: Bash: Probleme de PATH ? permissions ?

Message par domi » ven. 6 mai 2016 20:02

Doublon avec ce post, sujet verrouillé
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

Verrouillé

Retourner vers « Autres langages »