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

Solaris Discussion :

Comment passer le mot de passe en paramètre à la commande "su - user -c"


Sujet :

Solaris

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 7
    Par défaut Comment passer le mot de passe en paramètre à la commande "su - user -c"
    Chers tous;
    J'ai un sérieux problème et je ne trouve nulle par sur la toile un début de solution.
    Voila, j'écris un script Shell qui à un moment donnée récupère une liste d'imprimante, fait des test et connecte le compte qui a le rôle d'impression pour les redémarre
    (y'en a un peu plus d'une centaine).
    Je suis en environnement UNIX.
    Donc à un moment du code j'ai ceci:

    su - cptrole -c "disable $fic;enable $fic"

    Seulement voilà j'ai le prompt me demandant le mot de passe pour chaque imprimante. Ce n'est vraiment pas le but.
    L'objectif étant justement d'automatiser cette tache.

    Pourriez vous m'indiquer comment passer mon mot de passe automatiquement à mon script.

  2. #2
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 288
    Par défaut
    Bonjour,

    les pages de manuel sont très claires:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    su - Changer d'identifiant d'utilisateur ou devenir superutilisateur
    Ce n'est pas ce que tu cherches. Toi, tu veux sudo.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo, sudoedit — execute a command as another user

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 7
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Bonjour,

    les pages de manuel sont très claires:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    su - Changer d'identifiant d'utilisateur ou devenir superutilisateur
    Ce n'est pas ce que tu cherches. Toi, tu veux sudo.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo, sudoedit — execute a command as another user


    Bonsoir Flodelarab et merci de ton retour.
    Cependant il me semble que la commande sudo n'existe pas sous unix (je suis sous solaris et j'ai le message command not found).
    En fait comme tu le dis, su - me permet de changer d'identifiant sans mon script. Mais à l'exécution suis pas censé être présent et le srcipt attend évidemment un mot de passe.

    Je cherche un moyen de passer ce mot de passe en paramètre

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 7
    Par défaut
    Citation Envoyé par blaky Voir le message
    Bonsoir Flodelarab et merci de ton retour.
    Cependant il me semble que la commande sudo n'existe pas sous unix (je suis sous solaris et j'ai le message command not found).
    En fait comme tu le dis, su - me permet de changer d'identifiant sans mon script. Mais à l'exécution suis pas censé être présent et le srcipt attend évidemment un mot de passe.

    Je cherche un moyen de passer ce mot de passe en paramètre

  5. #5
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 288
    Par défaut
    Citation Envoyé par Wikipedia
    sudo (abréviation de substitute user do, en anglais : « exécuter en se substituant à l'utilisateur ») est une commande informatique utilisée principalement dans les systèmes d'exploitation de type Unix.
    (...)
    sudo est disponible sans être installé par défaut sur la plupart des systèmes Unix : BSD, Sun Solaris, Linux, etc.

  6. #6
    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
    Par défaut
    Vérifie d'abord que sudo n'est pas installé dans un répertoire absent de ton PATH, genre /usr/gnu/bin, /usr/sfw/bin, /usr/local/bin ou autre.

    Sinon, il n'est pas possible (simplement) de passer un mot de passe à "su" car pour des raisons de sécurité, il ouvre /dev/tty pour dialoguer avec l'utilisateur.

    Une façon de contourner le problème peut consister à configurer ssh pour que cptrole accepte un login sans mot de passe à partir de ton compte. Il faut pour cela créer une clef publique/privée dans ton .ssh si ce n'est pas déjà fait, puis ajouter la clef publique dans le .ssh/authorized_keys de l'utilisateur cible.

    Ensuite, la commande à lancer serait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ssh cptrole@localhost "disable $fic;enable $fic"

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2011
    Messages : 7
    Par défaut
    Bonsoir Flodelarab et merci de ton retour.
    Cependant il me semble que la commande sudo n'existe pas sous unix (je suis sous solaris et j'ai le message command not found).
    En fait comme tu le dis, su - me permet de changer d'identifiant sans mon script. Mais à l'exécution suis pas censé être présent et le srcipt attend évidemment un mot de passe.

    Je cherche un moyen de passer ce mot de passe en paramètre

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/10/2007, 16h22
  2. Réponses: 3
    Dernier message: 21/11/2006, 15h17
  3. Réponses: 5
    Dernier message: 17/12/2004, 09h25
  4. Comment cacher un mot de passe ?
    Par benxitd dans le forum Windows
    Réponses: 2
    Dernier message: 02/12/2004, 10h59
  5. Comment changer le mot de passe sous Interbase
    Par ETOKA dans le forum InterBase
    Réponses: 3
    Dernier message: 05/08/2004, 11h25

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