[BSD] dyndns + apache és subversion

Adam Szilveszter sziszi at bsd.hu
2007. Jan. 11., Cs, 06:46:37 CET


Szia!

On Thu, Jan 11, 2007 at 04:44:31AM +0100, Kollar Csaba wrote:
> On Tue, 2007.01.09. at 17:56 +0100, Zahemszky Gábor wrote: 
> > megjelentek a szkriptbe írható kulcsszavak. Szóval mi lenne, ha az
> 
> Arulja mar el valaki hogy ez jelenleg mukodik e a
> /usr/local/etc/rc.d alatt es ha igen, akkor hogy?. Nemreg belefutottam 

Szerintem műküdik, legalábbis nálam minden szkript ami ott van már
konvertálva van az új stílusra. Más kérdés, hogy a régiek is működnek
még elvileg, hála az /etc/rc.d/localpkg scriptnek, ami kimondottan
ezeket keresi és indítja.

Hogy hogyan, hát úgy, hogy ezeket is sorbarakja az rcorder, te is
láthatod, hogy milyen sorrendbe, ha kiadod a

rcorder /etc/rc.d/* /usr/local/etc/rc.d/*

parancsot.

> egy problemaba, szinten rc script inditas sorrend kapcsan, es nagyon ugy 
> tunik hogy egyszeruen tojik magasrol a rendszer a provider/require/before 
> stb.. keywordokre.

És biztos, hogy jól volt a scripted megírva? Pl nem mindegy, hogy 
a keywordoket hogyan használod, aztán arra is ügyelni kell, hogy a
scriptjeid végrehajtási joggal legyenek ellátva... van
itt egy doksi az rc scriptingről, talán érdemes megnézni:

http://www.freebsd.org/doc/en_US.ISO8859-1/articles/rc-scripting/

> Gugliztam egy kicsit, talaltam az egyik devel
> listan egy 2005 -os hozzaszolast ami szerint jelenleg (marmint
> akkor) az rcorders csak a /etc/rc.d alatt mukodik. Nyugtasson meg
> valaki hogy ez mostmar nem igy van. Ha meg meg mindig igy van az
> eleg gaz..:( 

Hát azért elég sok idő telt már el azóta... és már működik.

> Meg egyaltalan, mi a francert kellett ezt ennyire megbonyolitani?
> Miert nem jo a file -ok elejere a prefix (xxx.akarmi.sh, mint
> regen). Van ennek valami kezzel foghato elonye? 

Több okból. Az egyik, hogy az a rendszer nem volt moduláris, minden
script írását előről kellett kezdeni, mert nem tudta a már meglevő
részeket hogyan felhasználni. Ez nem optimális. Most pl van egy igencsak
tekintélyes méretű /etc/rc.subr állomány, amiben az "ész" nagy része
benne van, ezt minden script használhatja. Az eredmény az, hogy egy-egy
"újfajta" rc.d-s script mérete pár sor csupán, lényegében az itt
található funkciókat hívogatja meg. Régebben azért ez nem így volt.

Másrészt a prefixekkel a látszat ellenére nem lehet rendesen kezelni
azt, hogy mi milyen sorrendben induljon. Egyrészt azért, mert valójában
rendszerint nem az volt a lényeg, hogy abszolútértékben hanyadik egy
script, hanem az, hogy minden függősége induljon el mielőtt ő elindul,
másrészt meg azért, mert senki nem tudja, hogy egy adott gépen pontosan
melyik scriptnek hanyadikként kellene indulni, kivéve a helyi gép
gazdáját- ugyanakkor a tapasztalatok azt mutatták, hogy a helyi gazdik
nem álltak neki minden új szoftver telepítésénél átnézni és ha kell
átszámozni a scripteket, hanem szépen mindent hagytak a defaulton, ami
aztán így vagy működött vagy nem. Ebből jöttek aztán azok a vicces
dolgok, mint a "nekünk biztosan korán kell indulni, úgyhogy legyen a
mienk a 000 prefix" típusú hackek, amivel legfeljebb akkor volt gáz, ha
kiderült, hogy a 000 már foglalt az adott gépen, vagy éppen akkor, ha az
alaprendszer indító scriptjei máshol voltak és azok már elindultak,
mikorra a "nekünk korán kell futni" script sorra került volna, mert az
meg az /usr/local/etc/-be került. (Persze mindez nem tűnt fel annyira az
átlag L****x használó gazdinak egyrészt azért, mert ott sokszor mit sem
hallottak az alaprendszer - third party programok különbségtételről,
másrészt azért sem, mert ha minden szoftver az adott disztribúció adott
verziójához készült csomagból került fel, akkor lehetett bízni benne,
hogy az agymunkát már valaki más elvégezte. Gond legfeljebb akkor volt,
ha forrásból fordított valaki, de akkor elég gyakran...)

A mostani rendszerrel ez mind nem gond, a scriptek azt mondják meg, hogy
mire van szükségük és mit nyújthatnak mások számára, és az rcorder
szépen sorba állítja őket függetlenül attól, hogy melyik rc.d
könyvtárban vannak. Simán lehet (és van is) olyan, hogy egy
/usr/local-os script hamarabb fut le, mint egy /etc-s, mert a sorrend
ezt kívánja. Másrészt a sorrend nem abszolút, ha beteszel egy új
scriptet a sorba, az is "magától" tudni fogja hol a helye anélkül, hogy
a többit előbb át kellene számozni.

A BSD rendszereket pontosan az ilyen elegáns és korrekt megoldások miatt
szeretem bizonyos más rendszerekkel szemben ahol kevésbé sikerült... 

Sz.
-- 
BSD: An Operating System, Not a Religion.



További információk a(z) BSD levelezőlistáról