IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

[shell] useradd "mal" interprété


Sujet :

Shell et commandes GNU

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 7
    Points : 6
    Points
    6
    Par défaut [shell] useradd "mal" interprété
    Hello à toutes et à tous,

    J'ai un soucis que je ne comprend pas :
    Dans un shell, Je souhaite créer un user ftp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    read -p "Nom du compte à créer : " user_name
    read -p "Homedir désiré : " homedir
    useradd -s /bin/true –d $homedir $user_name
    A l'exécution, il me donne le useradd -h, comme si il y avait une erreur dans ma commande.
    J'ai mis un echo au début de la dernière ligne, la commande qui s'affiche semble bonne mais si je la copie et que je la colle, même problème.
    En revanche, si je la réécrit manuellement elle passe sans problème.
    Mes deux variables sont pourtant bonnes.

    Bref, HELP je deviens chèvre.

    Merci d'avance

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    As-tu essayé en "protégeant" tes variables avec des guillemets ?
    Pour mieux suivre l'exécution tu peux aussi passer en mode très verbeux, en lançant un set -vx au début du script.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Pas mieux.
    Les guillemets n'ont rien changé (j'avais déjà essayé) et le mode verbeux (que je ne connaissait pas, merci du tuyau ) ne montre rien de particulier.
    Le problème reste le même : la commande n'est pas interprétée alors que si je la tape manuellement elle passe sans soucis.

  4. #4
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    T'as essayé de récupérer le code retour ($?) de la commande ?

    D'après le man :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    VALEURS DE RETOUR
           La commande useradd retourne les valeurs suivantes en quittant :
     
           0
               succès
     
           1
               impossible de mettre à jour le fichier des mots de passe
     
           2
               erreur de syntaxe
     
           3
               paramètre non valable pour l'option
     
           4
               UID déjà utilisé (et pas d'option -o)
     
           6
               le groupe spécifié n'existe pas
     
           9
               nom d'utilisateur déjà utilisé
     
           10
               impossible de mettre à jour le fichier des groupes
     
           12
               impossible de créer le répertoire personnel
     
           14
               can't update SELinux user mapping
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Code erreur 2 : erreur de syntaxe.

    Alors que si je tape la même commande au caractère près en dehors du script elle est bonne 0o

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Peux-tu nous montrer le résultat de:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    read -p "Nom du compte à créer : " user_name
    read -p "Homedir désiré : " homedir
    echo "useradd -s /bin/true –d $homedir $user_name" | od -bc

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Hello,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    read -p "Nom du compte à créer : " user_name
    read -p "Homedir désiré : " homedir
    echo "useradd -s /bin/true –d $homedir $user_name"
    echo "useradd -s /bin/true –d $homedir $user_name" | od -bc
    echo $?
    Et le résultat :
    Nom du compte à créer : test
    Homedir désiré : /home/wwwroot/site/www
    useradd -s /bin/true –d /home/wwwroot/site/www test
    0000000 165 163 145 162 141 144 144 040 055 163 040 057 142 151 156 057
    u s e r a d d - s / b i n /
    0000020 164 162 165 145 040 342 200 223 144 040 057 150 157 155 145 057
    t r u e 342 200 223 d / h o m e /
    0000040 167 167 167 162 157 157 164 057 163 151 164 145 057 167 167 167
    w w w r o o t / s i t e / w w w
    0000060 040 164 145 163 164 012
    t e s t \n
    0000066
    0
    Le problème semble venir du "-" de l'option -d qui sort en hexa mais je ne sais pas pourquoi.

    Mais le diag avance grâce à ça. Merci

  8. #8
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    Aurais-tu créé ton script en faisant un copier coller d'un exemple sur un site internet ou un document (pdf, traitement de texte) ?
    Remplace le tiret qui précède le d par celui qui précède le s, ça devrait passer beaucoup mieux.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Mékilékon ! effectivement ça marche mieux.

    J'ai tout tapé avec mes mimines mais j'ai fait pas mal de copier-coller dont certains entre mon notepad++ et mon serveur en connexion ssh + parfois du FTP au milieu.

    Merci mille fois.

  10. #10
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 842
    Points
    7 842
    Par défaut
    Citation Envoyé par sYph0s Voir le message
    Le problème semble venir du "-" de l'option -d qui sort en hexa mais je ne sais pas pourquoi.
    Tu utilisais un tiret long (—) au lieu d'un tiret « normal » (-)
    ɹǝsn *sıɹɐlos*

  11. #11
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Comme quoi, od -bc c'est quand même top pour repérer les erreurs de codage de caractères!

    PS: tu pouvais aussi faire un type monscript pour voir ce qu'il en pense.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Une requête de base mal interprétée ?
    Par MatthieuC dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/05/2007, 15h40
  2. [HTML] caracteres speciaux mal interprété
    Par xclam dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 24/05/2007, 17h47
  3. type de variable mal interprêté
    Par hisy dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 10/04/2007, 11h09
  4. Servlet mal interprétée
    Par Séb@s dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 01/12/2006, 14h52
  5. Réponses: 4
    Dernier message: 29/06/2005, 11h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo