SHH in C



  • Hallo

    ich stelle mich gerade an wie die Kuh beim Eierlegen:

    Ich habe mehrere Rasperries in einem Netzwerk.

    Im moment logge ich mich via Putty mit ssh pi@192.168.0.xx von meinem Tablet auf jeden einzeln ein,IP Adressen sind fest gesetzt,
    navigiere zu dem Ordner in dem mein Skript liegt
    und führe es mit nohup ./sim & aus.
    Das funktioniert super
    meine Skripte laufen alle

    Allerdings würde ich mich gerne nur auf ein Raspberry, immer das gleiche, einloggen, und dann in das Skript was auf diesem händisch zum laufen gebracht wird die Skripte auf den anderen Raspberries starten

    Die beste Variante ware natürlich,
    dass das Skript auf jedem Rasperry beim hochfahren gestartet wird, habe ich auch schon mit einem Daemon versucht, allerings benötige ich WLAN und ich weiß nicht was ich konfigurieren muss, sodas zuerst das Wlan gestartet wird und dann mein Skript

    Ich habe keine Ahnung wie
    ich hoffe mir kann jmd helfen

    Danke

    Lg


  • Mod

    Man könnte dir fast helfen, wenn du bloß deine Gedanken noch einmal ordnen würdest und dann die Frage noch einmal stellst. Beachte:
    -Wir haben keine Ahnung, wovon du redest, es sei denn, du erklärst es uns
    -Wir wissen nicht, was du erreichen möchtest, es sei denn, du erklärst es uns
    -Nimm nicht an, die Lösung zu kennen. Frag nach dem, was du erreichen möchtest, nicht danach, wie du denkst, wie du es erreichen könntest.

    Mit diesen Gedanken im Hinterkopf:

    Ra_Sch schrieb:

    Ich habe mehrere Rasperries in einem Netzwerk.

    Im moment logge ich mich via Putty mit ssh pi@192.168.0.xx von meinem Tablet auf jeden einzeln ein,IP Adressen sind fest gesetzt,
    navigiere zu dem Ordner in dem mein Skript liegt
    und führe es mit nohup ./sim & aus.
    Das funktioniert super
    meine Skripte laufen alle

    Ok, soweit alles klar. Mehrere Rechner, du loggst dich auf jedem Rechner ein. Du startest jeweils ein Script dort. Unklar: Ist noch jeweils Nutzeraktion erforderlich oder ist wirklich das Aufrufen des sim-Scripts alles, was getan werden muss und jedes Mal gleich?

    Nun wird's ein bisschen verworren:

    Allerdings würde ich mich gerne nur auf ein Raspberry, immer das gleiche, einloggen, und dann in das Skript was auf diesem händisch zum laufen gebracht wird die Skripte auf den anderen Raspberries starten

    Ok, verstehe ich. Aber wieso nicht einfach auf deinem Tablett ein Script haben, dass sich automatisch auf den Raspberries einloggt und dort die Simulationen startet?

    Die beste Variante ware natürlich,
    dass das Skript auf jedem Rasperry beim hochfahren gestartet wird, habe ich auch schon mit einem Daemon versucht, allerings benötige ich WLAN und ich weiß nicht was ich konfigurieren muss, sodas zuerst das Wlan gestartet wird und dann mein Skript

    😕 Also willst du erreichen, dass die Raspberries automatisch, ganz ohne dein Zutun die Simulationen starten? Wieso ein Daemon? Daemon = Hintergrundprozess != Autostartprozess. Was klappt nicht mit dem Daemon? Wer braucht warum WLAN? Die Simulation? Verbindet sich der Raspberry denn nicht automatisch mit dem Netzwerk? Falls nein, wie hast du das denn vorher gemacht? Denn du hast dich doch vom Tablet aus mit den Raspberries verbunden und nicht umgekehrt.

    Und zu guter Letzt: Was hat das alles mit C zu tun? Starten von Prozessen, SSH-Verbindungen, Automatisierung. Das klingt alles eher nach einem Fall für Shellscripte. Man kann das natürlich auch in C machen, wenn man sich das Leben schwer machen möchte, aber wieso sollte man?



  • is

    ssh user@host 'cd /work/dir; ./myscript'

    wenn du eine tty brauchst um interactiv zu sein,
    passwort für su, yes no antwort im script

    ssh -t user@host 'cd /work/dir; ./myscript'

    als Antwort genug?


Anmelden zum Antworten