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 :

Envois de commande bash via SSH


Sujet :

Shell et commandes GNU

  1. #1
    Invité
    Invité(e)
    Par défaut Envois de commande bash via SSH
    Bonjour,
    Je possède un raspberry pi4 sur le quel j'ai installer Rasbian et j'ai également un serveur NAS sous openmediavault.
    J'aimerais pouvoir me connecter en SSH avec mon serveur NAS depuis mon raspberry et y exécuter des commandes automatiquement une fois la connexion établie sans qu'on me demande une interaction autre que celle d’exécuter le bash...
    Vous auriez une idée ?

    Merci d'avance!

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 646
    Par défaut
    Bonjour,

    puisque tu as fait des recherches sur internet*, la situation ne doit pas être aussi simple.

    qu'as-tu essayé qui ne fonctionne pas ?

    --
    * c'est un préalable à toute question sur n'importe quel forum.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Enfaîte j'aimerais qu'a l'aide de mon raspberry je démarre mon serveur NAS, qu'il attende 5min le temps qu'il soit bien démarré et en suite que mon raspberry se connecte en SSH en tant qu'utilisateur root et que celui-ci exécute des commandes prés définie.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #!/bin/bash
    sudo etherwake -i wlan0 B8:97:5A:F4:5B:5C
    echo "Server started..."
    sleep 300
    sshpass -p 'psw' ssh login@adress_server
    Je ne sais pas et je ne trouve pas comment je pourrais exécuter ma liste de commande une fois le raspberry connecté en SSH au NAS...

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 646
    Par défaut
    si c'est root qui doit se connecter et exécuter des commandes, autant que tout le script soit "sudoé",
    ensuite, pour ne pas à avoir attendre un délai défini qui peut être dépassé par la mise à jour d'une base de donnée quelconque du serveur, je te recommande de faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    until netcat -z -w 5 $ipServer 22; do : done
    cela attend 5 secondes jusqu'à ce que le port 22 du serveur soit ouvert.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ssh $user@$server 'cmd1; cmd2...'
    cmd1, cmd2, ... seront exécutées sur le serveur.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Invité
    Invité(e)
    Par défaut
    D'accord merci je vais essayer ça mais pour la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ssh $user@$server 'cmd1; cmd2...'
    Je l'ai déjà essayée et ça me demande quand même le mot de passe avant d’exécuter la suite... Il n'y a pas moyen de faire en sorte que le login et le mdp soit sur la même commande ?

  6. #6
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 646
    Par défaut
    ah, si ! il faut "échanger"* les clés publiques entre la machine locale et le serveur.
    --
    * en fait, transférer, avec ssh-copy-id, ou équivalent.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Un tout grand merci j'ai réussis !
    Par hasard, y aurait-il moyen d'exécuter cette commande dans un Screen comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #!/bin/bash
    screen -S programme
    ssh root@192.168.0.25 'cmd1;cmd2;cmd3'
    dans le but de pouvoir avoir le retour de la commande après sur le Terminal.

  8. #8
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 646
    Par défaut
    nouvelle question, nouveau sujet !

    c'est un besoin récurrent, je serais surpris qu'il n'y ait pas une page sur internet qui n'explique pas comment faire. stfw
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

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

Discussions similaires

  1. besoin d'aide sur envoi de commande par script SSH
    Par threepwood dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 16/03/2010, 17h52
  2. envoi d'une commande DOS via C++Builder possible ?
    Par tomguiss dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/01/2008, 10h23
  3. Envoi de commande à un démon via echo
    Par g_d_u_m dans le forum Linux
    Réponses: 9
    Dernier message: 26/03/2007, 15h37
  4. Réponses: 4
    Dernier message: 08/03/2006, 11h43
  5. [Comm] envoi des commandes via interface RS232
    Par bob75018 dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 16/01/2006, 17h22

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