Linux a cdrom (mountovani, prava a lilo)

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Úterý Prosinec 24 13:28:40 CET 2002


On Wed, 11 Dec 2002, Pavel Dvorak wrote:

> Jeste bych sam sebe doplnil. Prijde mi to, ze mount pri mountovani
> ISO filesystemu defaultne nastavi prava cteni pro vsechny (v poradku).
> Pokud ke zmene tohoto chovani pouzijeme parametr mount pouzitelny
> pro ISO9660 filesystem (napr mode=0640), tento parametr sice zafunguje
> jak ma, ale pouze (!) na soubory, coz je podle meho nazoru spatne.

Fakt je, ze nedava prilis smysl nechat nekoho jen prohlizet obsah
adresare...

> I kdyz si myslim, ze tohle by mount proste _mel_ umet, prijde mi to
> jako elementarni administrativni moznost.

Mount nemuze umet neco, co neumi filesystem v jadre (ostatne vetsinu toho,
co vidi za -o, predava mount k vyrizeni rovnou do jadra). Takze rada je
jednoducha: otevrit soubor /usr/src/linux/fs/isofs/inode.c a upravit.
Asi nejmene invazivni by byla uprava isofs_read_inode(), kde by se ve
vetvi, kde se nastavuji pristupova prava adresaru, tj. tesne za prikazem

	if (de->flags[-high_sierra] & 2)

udelalo neco na zpusob

	mode_t m1 = inode->i_sb->u.isofs_sb.s_mode & S_IRUGO;
	mode_t m2 = inode->i_sb->u.isofs_sb.s_mode & S_IXUGO;
	inode->i_mode = m1 | m2 | (m1 >> 2) | (m2 << 2) | S_IFDIR;

(bez zaruky)

Trosku systemovejsi by bylo si ta pristupova prava pro adresare predem
predpripravit (vyzaduje upravu struct isofs_sb_info v iso_fs_sb.h) nebo
mozna je dokonce nechat zadavat zvenku (viz parse_options()).

--Pavel Kankovsky aka Peak  [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."



Další informace o konferenci Linux