readonly filerendszer

Fórumok

readonly filerendszer

Hozzászólások

Ha jol emlekszem, az FHS szerint a /tmp es a /var kivetelevel minden egyebet tudni kell readonly-ra mountolni, ami pl. flashdisk-rol vagy cd-rol bootolva eleg hasznos, de szerver eseten is megkonnyiti a mentest/ellenorzest, ha lehet epiteni arra, hogy rendes mukodes soran mi valtozhat es mi nem.
Ezzel szemben a kovetkezo dolgok igenylik az irhato fs-t maguk alatt:
- init /dev/initctl
- syslogd: /dev/log
- gpm: /dev/gpmdata
- pppd: /etc/resolv.conf
- ifupdown: /etc/network/ifstate
- samba: /etc/mtab, /etc/samba/MACHINE.SID
- adjtimex: /etc/adjtime
(A listaban csak azokat irtam, amit nem tudtam atconfigolni mashov, de lehet, hogy meg ez iskiegeszitesre szorul.)
Eddig ezeket devfs-sel meg symlinkekkel oldottam meg, de szeretnelek megkerdezni benneteket, hogy tudtok-e kulturaltabb megoldast? Elore is koszi.

Az érdekes lehet, amikor a /dev RO....

Zsiráf

A /dev-vel az volt a gond, hogy ha a root fs RO, es a /dev azon van, akkor az is RO lesz, ergo nincs /dev/initctl meg /dev/log, marpedig a syslogd minel elobb indul, annal jobb (beagyazott rendszer, ha vmi gallyra megy, csak ebbol lehet megtudni), az initctl meg ugye kell.
Tehat a /dev-nek kulon fs-en kell lenni, pl. shmfs-en, viszont arra ki masolja fel a node-okat, ha az egesznek elnie kell mar az init indulasakor az initctl miatt? A kor bezarult :(. A devfs pont jo volt erre, mert a kernel fel tudta mountolni automatikusan, na ez lett most obsolete, es van helyette egy userspace megoldas, amihez viszont futnia kell az legalabb az initnek, tehat mire egyaltalan elindulhatna, mar reg keso. Marad az initrd, amihez kell egy image, init-tel, shell-lel, minden szukseges dologgal. Ez az egesz kerdes viszont egy olyan vezerlonel vetodott fel, ahol volt alattam 16M flashdisk meg 16M ram...

Hali!

Az, hogy a devfs obsolate egy dolog. Az udev még elég köhögős, és sajna még nem fully funkc... Szóval én a helyedben a devfs-nél maradnák (mindent kezel amit kell :-)

Amúgy egész egyszerű a dolog, ugyanis a /usr/sbin/init file-t indítja el a kernel....
szóval, átnevezed az init-et mondjuk init.bin-re, majd csinálsz egy init scriptet (#! /bin/bash), ami elindulva szépen létrehozza a ramdiszkeden a dev strukturát, majd felmount-olod a /dev alá és meghívod a /usr/sbin/init-et...

Ekkor irható olvasható /dev-ed van, a RO / alatt :-)

Zsiráf

Azt a leborult szivarvegit! Ez a hamis init-es trukk hatarozottan tetszett :)! Amugy devfs-sel oldottuk meg, mukodik szepen, csak anno domini meg nem minden szerette a devfs-t. Remeljuk, mire vegkepp kikerul a kernelbol, lesz helyette valami.