Linux/shell simple

Résolu
Bonjour, j'ai un petit soucis dans mon script quand je lance mon script shell :"

sh nomdemonscript.sh" il me met ceci " cd : 4: can't cd to /home/c*****/openvpn/2.0

Pourtant j'ai vérifier le chemin c'est exactement le même donc ca ne viens pas de ca

Je suis sur ubuntu 9.04

S'il vous plaît, aidé moi ;-(



--
J'aimerais changer le monde, mais ils ne me donnera pas le code source.

4 réponses

  1. Modérateur
    Salut,

    Affiche le contenu de ton script, on n'est pas devin ;-\
    0
    1. #!/bin/bash
      echo " ========== Script pour générer une clé et un certificat ========="
      echo " "
      cd /home/clinique/openvpn/2.0
      echo "Entrer le mot de passe Administrateur :"
      #-----Commandes exécutées en tant que root-----
      su -c
      #Initialisation des variables nécessaire pour les scripts build-xx
      /home/clinique/openvpn/2.0/cat/ ./vars

      echo " "
      echo "Entrer le nom du client :"
      read nomclient
      echo " "
      #Lancement du script pour créer une clé et un certificat pour le client
      ./build-key $nomclient
      echo " "
      echo "########### Clé et certificat générés ###########"

      echo " "
      echo " ##### Création du fichier de configuration pour $nomclient ##### "
      cheminconf=/home/clinique/openvpn/2.0/keys/$nomclient.ovpn
      echo "#Fichier de configuration de $nomclient" > $cheminconf
      echo "client" >> $cheminconf
      echo " " >> $cheminconf
      echo "#Périphérique virtuel" >> $cheminconf
      echo "dev tun" >> $cheminconf
      echo "dev-node VPNOceane" >> $cheminconf
      echo " " >> $cheminconf
      echo "#Informations de connexion vers le serveur" >> $cheminconf
      echo "proto tcp" >> $cheminconf
      echo "remote ***.***.***.* ****" >> $cheminconf
      echo "resolv-retry infinite" >> $cheminconf
      echo "nobind" >> $cheminconf
      echo " " >> $cheminconf
      echo "#Option de persistance si reboot machine" >> $cheminconf
      echo "persist-key" >> $cheminconf
      echo "persist-tun" >> $cheminconf
      echo " " >> $cheminconf
      echo "#Clé et certificats utilisés" >> $cheminconf
      echo "ca ca.crt" >> $cheminconf
      echo "cert $nomclient.crt" >> $cheminconf
      echo "key $nomclient.key" >> $cheminconf
      echo " " >> $cheminconf
      echo "#Cryptage et compression utilisé" >> $cheminconf
      echo "cipher BF-CBC" >> $cheminconf
      echo "comp-lzo" >> $cheminconf
      echo " " >> $cheminconf
      echo "#Degrés de verbosité du log" >> $cheminconf
      echo "verb 3" >> $cheminconf
      echo " " >> $cheminconf

      echo " ##### Fichier de configuration créé ##### "

      #-----Fin des commandes en tant que root-----
      echo " "
      echo "========= Fin du script =========="

      0
      1. Modérateur
        As-tu les droits nécessaires pour entrer dans ce répertoire ?
        0
      2. dans mon script il y a "su -c" donc normalement il y a juste a entrer le mot de passe
        0
      3. Modérateur
        Le 'su -c' est après le "cd ...." donc ;-(
        0
      4. ca me met la meme chose :(
        0
      5. Modérateur
        Exécute ton script en mode débogage (rajoute "set -xv" après le shebang) :

        #!/bin/bash
        set -xv
        echo " ========== Script pour générer une clé et un certificat ========="
        echo " " 
        0
    2. j'ai taper la commande readlink -f sh et ca me met /home/c*****/sh
      0
      1. Modérateur
        Rend ton script exécutable :

        chmod u+x ton_script


        et lance-le ensuite :

        ./ton_script
        0
    3. Cool un problème en moins, les chemins fonctionnent:

      Ils me marquent toujours ca :

      ========== Script pour g?n?rer une cl? et un certificat =========

      : commande introuvable
      Entrer le mot de passe Administrateur :
      : Aucun fichier ou dossier de ce type./vars

      Entrer le nom du client :
      plop
      » : identifiant non valable line 11: read: « nomclient

      ./Generer_cle_certificat.sh: line 14: ./build-key: Aucun fichier ou dossier de ce type

      ########### Cl? et certificat g?n?r?s ###########

      ##### Cr?ation du fichier de configuration pour #####
      : commande introuvablet.sh: line 49:
      ##### Fichier de configuration cr?? #####
      : commande introuvablet.sh: line 51:


      Comme tu vois j'entre un nom de clien ici "plop" puis après avoir appuyez sur entrée il me sort des erreurs

      0
      1. Modérateur
        #Initialisation des variables nécessaire pour les scripts build-xx
        /home/clinique/openvpn/2.0/cat/ ./vars


        Le souci viendrait de là apparemment ;-(

        Tu veux faire quoi exactement là ?
        0
      2. je met juste /home/clinique/openvpn/2.0/cat/ ./vars ou je met "cd ou source " devant

        je veux créer un script pour créer automatiquement des certificat et clé pour client
        0
      3. Modérateur
        Quel est (sont) le(s) fichier(s) à sourcer ?
        0
      4. dans /home/c*****/openvpn/2.0 c'est là que j'ai mes fichiers dont j'ai besoin
        0
      5. Modérateur
        Ça ne répond pas à ma question ;-(

        Il y en a plusieurs ?
        Quels sont-ils ?
        0