Pages : 1
#1 Le 23/11/2015, à 11:04
- drkamine
Demande de scipt
Bonjour ,
est ce qu'il un peut m'aide a développe un script .
j'ai besoin de vérifie ma connexion VPN avec ipsec
l’exécution de la commande ipsec status si le résulta est UP ne fais rien sinon execute la commande ipsec UP conn0
merci d'avances
Hors ligne
#2 Le 23/11/2015, à 14:09
- McRbt
Re : Demande de scipt
drkamine,
Essaye ceci :
#!/bin/bash
STATUS=`ipsec status`
if [ "$STATUS" == "UP" ] ; then
exit
else
ipsec UP conn0
fi
Tiens nous au courant.
Dernière modification par McRbt (Le 23/11/2015, à 15:33)
Hors ligne
#3 Le 23/11/2015, à 14:17
- MicP
Re : Demande de scipt
#!/bin/bash
[ "$(ipsec status)" == "UP" ] || ipsec UP conn0
Dernière modification par MicP (Le 23/11/2015, à 14:22)
Hors ligne
#4 Le 23/11/2015, à 15:43
- drkamine
Re : Demande de scipt
Bonjour ,
je vous remercier pour votre collaboration
la resulta de la commande si ipsec et down est la suivante
ipsec status Security Associations (0 up, 0 connecting):
none
et si la connexion est active le résulta est la suivante Security Associations (1 up, 0 connecting):
est ce que c'est possible que le script peux lire le resulta de la commande par exemple si 0 UP excute ipsec up conn0 sinon ne fait rien
Dernière modification par drkamine (Le 23/11/2015, à 15:58)
Hors ligne
#5 Le 23/11/2015, à 16:39
- MicP
Re : Demande de scipt
#!/bin/bash
[[ "$(ipsec status)" =~ .*(0 up,).* ]] && ipsec UP conn0
Dernière modification par MicP (Le 23/11/2015, à 16:47)
Hors ligne
#6 Le 24/11/2015, à 09:11
- drkamine
Re : Demande de scipt
je vous remercier beaucoup MCrbt et Micp
ce script est fonctionnelle
#!/bin/bash
[[ "$(ipsec status)" =~ .*(0 up,).* ]] && ipsec UP conn0
Hors ligne
#7 Le 24/11/2015, à 10:44
- drkamine
Re : Demande de scipt
Bonjour
je trouve un truc bizar je met ce script dans ficher vpn.sh ( chmod +x vpn.sh) si je l’exécute il fonctionne ./vpn.sh
et je le met dans crontab -e pour qu'il s'exucte dans chaque 5 minute il ne fonctionne pas
*/5 * * * * /home/amine/vpn.sh
Hors ligne
#8 Le 24/11/2015, à 11:05
- credenhill
Re : Demande de scipt
hello
trouver où se trouve la commande : whereis ipsec
et mettre au début du script
export PATH=$PATH:/chemin_ipsec
En ligne
#9 Le 24/11/2015, à 11:07
- MicP
Re : Demande de scipt
Je pense qu'il ne s'agit que d'une histoire de PATH qui fait qu'il faudrait spécifier le chemin absolu de la commande ipsec quand elle est utilisée dans ce contexte.
Le chemin absolu de la commande ipsec te sera retourné par la commande suivante :
which ipsec
Il faudrait donc recopier le retour de cette commande en remplacement du mot "ipsec" qui se trouve dans le script /home/amine/vpn.sh
EDIT : "Grilled" par credenhill pendant la rédaction de ce message
Dernière modification par MicP (Le 24/11/2015, à 11:12)
Hors ligne
#10 Le 24/11/2015, à 12:09
- drkamine
Re : Demande de scipt
Bonjour je vous remercier toujours pour votre collaboration , mais toujours le script ne fonctionne plus dans crontab
j'ai déjà change le propriété du ficher pour nobody -rwxrwxrwx 1 nobody nogroup 83 nov. 24 11:44 /home/amine/vpn.sh*
*/5 * * * * /home/amine/vpn.sh dans crontab
le contenu du script #!/bin/bash
[[ "$(/usr/sbin/ipsec status)" =~ .*(0 up,).* ]] && ipsec up conn0
Hors ligne
#11 Le 24/11/2015, à 12:25
- erresse
Re : Demande de scipt
[[ "$(/usr/sbin/ipsec status)" =~ .*(0 up,).* ]] && ipsec up conn0
La commande "ipsec" est 2 fois dans la ligne, il faut répéter le chemin "/usr/sbin/...".
Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois le problème solutionné, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.
Hors ligne
#12 Le 25/11/2015, à 15:14
- MicP
Re : Demande de scipt
À mon humble avis, en ce qui concerne le chemin absolu, la proposition de credenhill consistant à modifier la variable PATH aurait été plus simple et efficace :
Cette modification permet d'éviter à avoir à spécifier le chemin absolu pour chaque appel à la commande pour tout le script.
#!/bin/bash
export PATH=$PATH:/usr/sbin
[[ "$(ipsec status)" =~ .*(0 up,).* ]] && ipsec up conn0
=======
…j'ai déjà change le propriété du ficher pour nobody…
Je n'ai pas le temps de faire des essais pour tout vérifier (un RDV), mais si ton compte utilisateur peut exécuter ce fichier (je suppose qu'il s'agit bien du script /home/amine/vpn.sh) et si la tâche cron est créée depuis ton compte utilisateur, il vaudrait mieux laisser les propriétés user et group de ce fichier au compte utilisateur qui a créé le script et la tâche cron (amine peut-être).
Je suppose aussi que le fichier script a l'attribut exécutable (au moins pour son propriétaire).
Hors ligne
#13 Le 25/11/2015, à 15:49
- drkamine
Re : Demande de scipt
Bonjour ,
je remercier tous les collaborateurs , mon script est fonctionnel maintenant
Cordialement
Hors ligne
Pages : 1