ComSubVie
07-07-2002, 21:46
Hi!
Ich habe ein Perl-Script, welches mir die nächste freie UID zurückliefert
while ( defined( getpwuid( $USER_ID ) ) )
$USER_ID++;
Das Skript funktioniert auch problemlos, allerdings nur als root. Gibt es irgendeine Möglichkeit das auch als Nicht-Root zu ermöglichen? (suid ist keine Lösung, /etc/passwd auch nicht, da ein Teil der User in LDAP steht)? Im Moment habe ich ein suid-C-Programm, welches mir den Eintrag zurückliefert, aber ständig dieses Programm exec'en (ok, das programm liefert schon die höchste id) ist auch nicht die Lösung.
Nebenbei: Was ist eigentlich performanter? exec, system oder gar fork'en?
Ich habe ein Perl-Script, welches mir die nächste freie UID zurückliefert
while ( defined( getpwuid( $USER_ID ) ) )
$USER_ID++;
Das Skript funktioniert auch problemlos, allerdings nur als root. Gibt es irgendeine Möglichkeit das auch als Nicht-Root zu ermöglichen? (suid ist keine Lösung, /etc/passwd auch nicht, da ein Teil der User in LDAP steht)? Im Moment habe ich ein suid-C-Programm, welches mir den Eintrag zurückliefert, aber ständig dieses Programm exec'en (ok, das programm liefert schon die höchste id) ist auch nicht die Lösung.
Nebenbei: Was ist eigentlich performanter? exec, system oder gar fork'en?