Andreas Flückiger: Systemkommandos unter anderem Usernamen

Hallo!!!

Wie kann ich mit Perl Systemkommandos unter einem anderem Usernamen aber auf dem gleichem Server (UNIX) ausführen? Ich versuchte es mal mit Net::Telnet, doch dort brach die Verbindung meisten ab, auch wenn ich den Timeout höher stellte. Kennt jemand eine andere Lösung?

Gruss
Andreas

  1. Hallo!!!

    Wie kann ich mit Perl Systemkommandos unter einem anderem Usernamen aber auf dem gleichem Server (UNIX) ausführen? Ich versuchte es mal mit Net::Telnet, doch dort brach die Verbindung meisten ab, auch wenn ich den Timeout höher stellte. Kennt jemand eine andere Lösung?

    Schau dir mal su an. Oder mach das Programm SetUID.

    1. Hallo Erik

      Schau dir mal su an. Oder mach das Programm SetUID.

      su könnte mir weiterhelfen, aber wie mache ich das in Perl? Folgende Varianten funktionieren beide nicht.

      system("su $username");
      system($password);

      system("su $username\n$password");

      1. su könnte mir weiterhelfen, aber wie mache ich das in Perl? Folgende Varianten funktionieren beide nicht.

        system("su $username");
        system($password);

        system("su $username\n$password");

        Hab's gefunden:

        open(SU,"su $username");
        print SU $password;
        close(SU);