ShellScript

  • Also ich hab einen shellscript gemacht und wenn ich den jetzt unter z.B. web1 ausführe soll er ihn mit dem benutzer web2 ausführen also das der script sich selbstständig in einen anderen user einloggt.
    Gibt es dafür einen befehl?
    das mit su ........
    das geht nicht weil der script nicht unter root ausgefüht wird!

  • das funst dafür nicht.
    weil der script dann nach dem pw fragt und das kann ich ja nicht eingeben.
    das ist ja das prob der script soll sich selbstständig in den anderen user einloggen.
    also muss der username und das dazugehörige passwort igeendwo im script untergebracht werden :wink:

  • also muss ich die passworter in dieser komischen sudo datei eintragen oder was??
    EDIT: ich peil das alles nicht ich hab mir jetzt die manual durgelesen aber ich check das nicht :(


    Also nochmal was ich jetzt genau will:
    Also ich führe mit dem Apache user(www-data) per php(shell_exec("")) einen .sh script aus und der sh script soll ein programm starten welches einem anderen user gehoert

  • Ich würde es ganz einfach machen:


    - Du schreibst den kompletten *.sh-script fertig.
    - Und legst den in den gleichen ordner wie die PHP-datei.
    - Übergibst den Script an den User der ausführen soll und auch im PHP-Script steht; mit allen Rechten meintewegen.
    - Du schreibst ins ins Interface als ausführendes Komando

    PHP
    <?php
     ....
     shell_exec("man sudo [-u user|#uid] ./script.sh *start*");
     ....
     ?>


    (ich hab nun die Option 'start' mit in die Zeile in *-Zeichen geschrieben, weil ich meine Scripte immer mit vielen Optionen ausstatte und auch so ausführe.)


    Dies Ganze gehört aber nun zu Webcoding, da, wie wir schon wissen, der oben genannte Befehl in PHP-code ist.


    Verbessert mich wenn was falsch ist :wink:


    MfG Hitman

  • Zitat von Hitman
    PHP
    <?php
     ....
     shell_exec("man sudo [-u user|#uid] ./script.sh *start*");
     ....
     ?>


    ...
    Verbessert mich wenn was falsch ist :wink:


    Ich würde für den Fragesteller noch die Ausgabe vom ersten Teil, also "man sudo" in irgendeine Datei umleiten oder anders ausgeben. So wie's dasteht wird's aber auf keinen Fall was. :twisted:
    Ansonsten meine Aussage die mir selber langsam langweilig wird:
    Ohne Wissen rootserver an der Backe: runterfahren, kündigen, zu Hause sehr viel lernen...


    Cheers


    tcs

    Wer ständig überall dranpinkeln muß kommt schnell in den Verdacht ein keifendes Schoßhündchen zu sein.
    (Bezug auf einen bestimmten Forumsuser ist unvermeidlich)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!