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

Applications et environnements graphiques Discussion :

pb avec awk et ssh


Sujet :

Applications et environnements graphiques

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 299
    Par défaut pb avec awk et ssh
    Bonjour, je désire tuer tous les processus qui s'appellent "out" sur tous les noeuds du cluster que j'utilise. Donc à partir du noeud maitre (le n0) je dois faire un ssh sur tous les noeuds et faire un kill des PID correspondant à mon "out". Voici un début de code (pour un noeud) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    #!/bin/sh
     
    res=`ssh n1 ps -e | awk 'NF == "out" {print $1}'`
    echo $res
    et là rien ne s'affiche. Si ce machin marche, je pourrais faire ensuite une boucle. Lorsque je fais ps -e, j'ai comme sortie :

    5818 ? 00:00:00 sshd
    6168 ? 00:00:00 out
    6176 ? 00:00:00 out
    6177 ? 00:00:00 sshd
    6182 ? 00:00:00 sshd
    6537 ? 00:00:00 out
    6545 ? 00:00:00 out
    12620 ? 00:00:00 out
    13069 ? 00:00:00 out
    14476 ? 00:00:00 out
    14941 ? 00:00:00 out
    17441 ? 00:00:00 out
    18109 ? 00:00:00 out
    18244 ? 00:00:00 out
    6143 ? 00:00:00 sshd
    6148 ? 00:00:00 sshd
    6155 ? 01:07:05 out
    6163 ? 00:00:00 out
    6164 ? 00:00:00 sshd
    6170 ? 00:00:00 sshd
    pouvez-vous m'aider s'il vous plait ?
    Merci.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 299
    Par défaut
    Re,
    je viens de voir que la fonction killall out réglait mes problèmes. Mais comment faire pour la lancer sur tous les noeuds du cluster simultanément ?

  3. #3
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Par défaut
    sinon tu peux aussi faire
    Pour ce qui est de parcourir les noeuds, aucune idée
    Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
    N'oubliez pas de consulter les FAQ Linux et les cours et tutoriels Linux

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 299
    Par défaut
    Citation Envoyé par ggnore Voir le message
    sinon tu peux aussi faire
    Pour ce qui est de parcourir les noeuds, aucune idée
    très bien cette commande pidof : je ne la connaissais pas et elle remplace bien mon awk...
    je me renseigne pour parcourir tous les noeuds.
    Merci

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 299
    Par défaut
    OK, j'ai trouvé. Voici mon script (pas optimisé, mais bon, il marche...)

    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
     
    #!/bin/sh
     
    PROCNAME=out2 # nom du processus a tuer
     
    MACHINES='n1 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13'
     
     
    for i in ${MACHINES}
    do
      echo "node $i :"
      res=`ssh $i ps -Al | grep $PROCNAME | awk '{print $4}'`
      echo $res
      `ssh $i kill -9 $res`
    done

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 17/02/2012, 11h57
  2. Erreur avec Awk
    Par Longrais dans le forum Linux
    Réponses: 26
    Dernier message: 27/10/2005, 11h09
  3. Réponses: 5
    Dernier message: 09/01/2005, 19h54
  4. Réponses: 33
    Dernier message: 15/10/2004, 16h19
  5. Problème sur une cmd avec AWK
    Par OrangeBud dans le forum Linux
    Réponses: 3
    Dernier message: 02/06/2004, 10h51

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