RFC: Reference counter przy zakładaniu uzytkowników

Tomasz Trojanowski tomek w uninet.com.pl
Pon, 7 Cze 2004, 20:12:59 CEST


On Mon, 7 Jun 2004, Paweł Gołaszewski wrote:

> On Mon, 7 Jun 2004, Tomasz Trojanowski wrote:
> > Dzisiaj na IRCu został ponownie poruszony problem zakładania (i 
> > usuwania) użytkowników w %pre (i %postun). Już kiedys przerabialiśmy 
> > próby rozwiązania tego problemu za pomocą pakietów users-* albo 
> > triggerami. Wydaje mi się że istnieje jeszce jedno rozwiązanie. Możemy w 
> > filesystemie (wstępnie w /var/lib/users) trzymać licznik referencji. I 
> > tak na przykładzie gdm. Dotychczas przy zainstalowanym gdm'ie, 
> > instalacja xdm'a powoduje usunięcie użytkownika xdm, ponieważ skrypt 
> > %postun gdm'a jest wykonywany na samym końcu.
> > 
> > W przypadku zastosowania licznika referencji.
> > 
> > %pre:
> > - jeżeli użytkownik xdm nigdy dotychczas nie istniał w systemie (zatem 
> >   nie ma pliku /var/lib/users/xdm: tworzony jest ten plik, zakładany jest 
> >   użytkownik xdm i w razie powodzenia do /var/lib/users/xdm wpisywana jest 
> >   wartość 1,
> > - jeżeli użytkownik xdm istnieje już w systemie wartość z pliku xdm jest 
> >   zwiększana o 1
> > 
> > %postun
> > - wartość z pliku xdm jest zmniejszana o 1 i jeżeli jest równa 0, 
> >   użytkownik jest usuwany
> > 
> > Komentarze?
> 
> Generalnie - podoba mi się pomysł i nawet mi świta, że coś w ten deseń 
> ktoś już proponował.

Właśnie qboosh coś wspominał, nie pamiętam, być może rzuciło mi się w oczy 
i teraz zaszczepione memy wyewoluowały ;)

Poza tym wpadło mi jeszcze, że mógłby to być jeden plik, coś na modłe 
/etc/passwd, ale miałby tylko pola z nazwą użytkownika i licznikiem 
referencji.

Coś mi świta, że w glibc, są jakieś mechanizmy obsługi takich plików. Wie 
ktoś??

Pozdrawiam

-- 
Tomasz Trojanowski (tomek w uninet.com.pl)

"Between depriving a man of one hour from his life and depriving him of
his life there exist only a difference of degree." (FH, Dune Messiah)



Więcej informacji o liście dyskusyjnej pld-devel-pl