ubuntuusers.de

Script unter anderem User ausführen?

Status: Gelöst | Ubuntu-Version: Ubuntu
Antworten |

Team-Lab22.de

Avatar von Team-Lab22.de

Anmeldungsdatum:
9. Mai 2007

Beiträge: 620

Wohnort: Gurlach

Hiho,

hab ne kruze Frage.. habe auch gegoogelt.. aber nix gefunden ☹

wie kann ich wenn ich z.B. ein bin habe.. z.B.

"testbinary"

es über die root console als anderen user im hintergrund anstarten, ohne das der andere user z.B. "tesuser" eine bash braucht, und es dann im hintergrund weiterläuft?
wäre klasse wenn das wer weiss ☺ vielen dank! ☺

huygens

Avatar von huygens

Anmeldungsdatum:
1. April 2007

Beiträge: 186

Also wie du das mit dem "als anderer User starten" meinst konnte ich leider nicht ganz nachvollziehen.
Aber das "öffnen im Hintergrund" hört sich für mich wie ein Fall für "screen" an.

> siehe wiki: Screen Das ist quasi ne Taskleiste für die Konsole, nur dass man keine leiste sieht, sondern mit {{{screen -ls}}} erstmal schauen muss welche "Fenster" (=Konsolen) alle so geöffnet sind.
Wenn du jetzt dein Script in so einem Screen startest kannst du vom Screen deattachen (d.h. das Fenster/die Konsole schließen) und das Script läuft weiter. Habe ich gerne benutzt um mit Streamripper im Hintergrund mehrere Streams zu rippen. Einfach 4 Screens aufmachen (natürlich mit nem Script 😀) und weil die alle "unsichtbar" laufen merkt man gar nicht, dass man am rippen ist. Ich hoffe, das kommt ungefähr hin für deine Ansprüche.
Mfg huygens

Team-Lab22.de

(Themenstarter)
Avatar von Team-Lab22.de

Anmeldungsdatum:
9. Mai 2007

Beiträge: 620

Wohnort: Gurlach

jop screen kenn ich.. trotzdem schonmal danke ☺ ich meine:

ich bin als root eingeloggt, möchte dieses script aber von der root console aus, als benutzer "testbenutzter" starten, welcher dann über screen aber direkt in den hintergrund verschwinden soll ☺

huygens

Avatar von huygens

Anmeldungsdatum:
1. April 2007

Beiträge: 186

Ich denke das könnte das sein, was du suchst...
http://www.freebsd.de/archive/de-bsd-questions/de-bsd-questions.200306/0409.html
Wird wohl ein ziemlich langer Befehl 🙄

Team-Lab22.de

(Themenstarter)
Avatar von Team-Lab22.de

Anmeldungsdatum:
9. Mai 2007

Beiträge: 620

Wohnort: Gurlach

hmmm... also das einzigste was es seien könnte:

su -c $Befehl $Benutzer

gibt keine möglichkeit ohne su?

huygens

Avatar von huygens

Anmeldungsdatum:
1. April 2007

Beiträge: 186

Genau das habe ich bei mir ausprobiert und es ging wunderbar.
Ich habe mit dem Befehl "id" getestet.

id

als UserX liefert mir "meine" UID danach root-Konsole auf mit

sudo bash


Jetzt zur Kontrolle nochmal

id


Es kommt die UID von "root".
Und mit dem Befehl

su -c id UserX

bekomme ich wieder die Ausgabe vom Anfang, er hats also als UserX ausgeführt, obwohl ich auf einer root-konsole arbeite.
Warum hast du was gegen su?

Team-Lab22.de

(Themenstarter)
Avatar von Team-Lab22.de

Anmeldungsdatum:
9. Mai 2007

Beiträge: 620

Wohnort: Gurlach

Edit:

geht das auch wenn der andere user keine shell hat??

hab nichts wirksames gegen su ☺

bin nur kein freund von.. weiss auch nicht.. jedre hat ja so seinen g eschmack 😉 also vielen dank *g* 😉

Team-Lab22.de

(Themenstarter)
Avatar von Team-Lab22.de

Anmeldungsdatum:
9. Mai 2007

Beiträge: 620

Wohnort: Gurlach

für alle:

sudo -u {USER} {BEFEHL} 

bringtr das ergebniss 😉

Antworten |