[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: xawtv lässt sich nur als root starten!



Mathias Gygax <mg@trash.net>:
>> Hast Du daran gedacht, Dich nach dem adduser aus- und wieder ein zu
>> loggen?
>
>warum?

Damit durch Aufruf der Kernelfunktion setgroups() dem Kernel mitgeteilt
wird, in welchen Gruppen der User ist.

>newgrep video

?

>~$ echo $SHLVL
>5
>~$ newgrp video
>~$ groups
>video [...]
>~$ echo $SHLVL
>6

Diese Lösung habe ich nicht erwähnt, da sie sich nur auf das aktuelle
Fenster bezieht und daher verwirrend ist, speziell wenn Frank auch
Programme aus der Taskbar starten möchte.


Hintergrund:

Der Kernel weiss nicht von selber, in welchen Gruppen ein User ist.
Es muss ihm mitgeteilt werden. Dazu gibt es die Funktion setgroups().
Sie kann nur von root aufgerufen werden und wirkt sich auf den aktuellen
Prozess und seine Unterprozesse aus.

setgroups() wird üblicherweise in /bin/login aufgerufen, kurz bevor
das root-Recht abgegeben und die Shell gestartet wird. Damit wird die
Gruppenliste für alle aus der Shell aufgerufenen Programme, insbesondere
auch X-Windows-Manager und deren Unterprogramme, gesetzt.

Auch andere Programme rufen setgroups() auf: su, sudo, newgrp, xdm,
ftpd, cron, at usw. Die Zuordnung gilt aber jeweils nur für den
aktuellen Prozess und seine Unterprozesse und geht nach Beendigung
desselben wieder verloren.

Gruss, Harald

-- 
Harald Weidner                               hweidner@gmx.net

-- 
-----------------------------------------------------------
Um sich aus der Liste auszutragen schicken Sie bitte eine
E-Mail an debian-user-de-request@lehmanns.de die im Subject
"unsubscribe <deine_email_adresse>" enthaelt.
Bei Problemen bitte eine Mail an: Jan.Otto@Lehmanns.de
-----------------------------------------------------------

1063 eingetragene Mitglieder in dieser Liste.


Reply to: