Zamceni souboru - flock/fcntl

Martin Mačok martin.macok na underground.cz
Čtvrtek Říjen 12 09:12:38 CEST 2000


On Thu, Oct 12, 2000 at 07:51:19AM +0200, Juraj Hiľovský wrote:
> > On Wed, Oct 11, 2000 at 04:58:36PM +0200, David Pavlis wrote:
> > > Mam dotaz. Potrebuji v programu v C-ku uzamknout soubor tak aby na
> > > nej nemohly zadne jine aplikace.  Zkousel jsem to jak s flock, tak
> > > s fcntl, ale vzdy je mozne soubor otevrit jinym programem - napr.
> > > "vi" a zapsat do nej.
> >
> > Takto obecne to nepujde, budete si to muset obejit nejakym trikem,
> > napriklad docasnym prejmenovanim souboru, docasnym chmod 0 souboru
> > nebo
> 
> Ked to takto obecne nejde, tak by ma zaujimalo, preco je to tak. Preco
> treba pouzivat nejake triky na nieco, co by mal zvladnut samotny OS ?

Je pravda, ze napriklad pristup k /etc/passwd by tento systemovy zamek
jiste uvital, protoze snad na vsech distribucich Linuxu existuji tak
zhruba 3 nekompatibilni pristupy k zamykani tohoto souboru pri zapisu
(ruzne moduly PAM, vipw, shadow password suite (alias shadow-utils na
redhatu) ...). [zdroj: konference Linux Security Audit Project]

Ale UNIX byl proste takto navrzen a je dohodou, ze takoveto veci se resi
v userlandu a explicitne. Je snahou ponechat kernel maximalne
jednoduchy a jeho semantiku co nejjednodussi. Pokud se domnivate, ze
mate hodne dobry duvod takovou novou vlastnost do UNIXu protlacit,
muzete sve aktivity obratit na komisi POSIX, www.unix-systems.org apod
...

bye

-- 
< Martin Mačok    .-=  martin.macok na underground.cz  =-.   < iso-8859-2 > 
  \\. http://kocour.ms.mff.cuni.cz/~macok/  http://underground.cz/ .//
    \\\..         `-=    t.r.u.s.t   n.0  o.n.e     =-'        ..///


Další informace o konferenci Linux