=?ISO-8859-2?Q?Jakub_Piotr_C=B3apa?= wrote:
Andrzej Krzysztofowicz wrote:
=?ISO-8859-2?Q?Jakub_Piotr_C=B3apa?= wrote:
Może dodać do wszystkich serwerów jakiegoś bogusowego needa? Niech wymagają idle, a idle się ,,odpali'' tylko jeśli system load spadnie poniżej iluśtam/po zwyczajnym sleepie/need gdm a potem sleep. Oczywiście zawartość takiego skryptu zależałaby od konfiguracji komputera. W /etc/sysconfig/rc-scripts ustawialibyśmy sobie np. ROLE=desktop lub server.
Obciazenie systemu oczywiscie trzeba kontrolowac. Ale takie wyroznianie jednej konkretnej konfiguracji jest bez sensu, Nalezy to rozwiazac bardziej ogolnie (jakis desktop.template zawierajacy opcje).
No tak, ale tego się chyba nie da zrobić całkiem uniwersalnie. Może wystarczy, żeby łatwo można było dokonfigurować sobie do dowolnego skryptu startowego jakis bogusowy need, a potem coś zaspokajającego tego
Nie rozumiem dlaczego "bogusowy" ? W danym systemie jak najbardziej rzeczywisty. Tyle, ze IMO warto pomyslec o rozdrobnieniu potencjalnych "celow" takich wymagan (zamontowanie konkretnego fs-u, podniesiony konkretny if,...)
W zasadzie tak. Nazwałem bogusowy, dla odróżnienia od prawdziwych usług.
No właśnie - co z rozdrobnieniem. Wszystko zależy od tego jak będzie wyglądał nasz need, bo jakoś nie bardzo sobie wyobrażam tworzenia osobnych skryptów dla każdego if-a i każdego fs-u. Choć może tak to właśnie będzie trzeba zrobić...
needa i tam wrzucić wszystko co nam potrzebne. Domyślnie możemy dodać kilka takich ,,zaspokajaczy'' dla typowych zastosowań i w /etc/sysconfig/system dla nich globalny config, a jeśli ktoś będzie potrzebował dokładniejszego tuningu to doda sobie dodatkowe needy ( nazwę ustawi w configu dla danej usługi) i dopisze ,,zaspokajacze''.
Trzeba taz przewidziec sytuacje, gdy ktos dopisze, ze mysql wymaga gdm-a, a w nowej wersji gdm-a sie okaze, ze jest dokladnie odwrotnie... (sprzeczne wymagania)
System oparty na need(8) się zwyczajnie zdeadlockuje - user będzie musiał dojść do tego, czemu nie działa (wykrywanie czegoś takiego automatem byłoby wykonalne, ale dośc trudne). W systemie BSDowym (który mnie się mniej podoba, choć ma on pewne zalety) da się pewnie takie rzeczy wykrywać. Tak długo jak w pakietach nie będziemy takich pętli dostarczać, tak długo chyba będzie ok.
Może powinienem jakiś przyklad dać dla jasności?
Ciągle pozostaje problem informowania o stanie (startuje/zwija się/zdechła/wyłączona) działających usług. Bardzo byłoby to przydatne do nadzorowania startu systemu i póżniejszej z nim zabawy.
Ano.
Miałem pomysł na tworzenie plików gdzieś w systemie (siakies *.pid). Do tego np. FAM (stąd mój fileschanged.spec - szkoda tylko, ze nie działa...). Zdechłe miałyby nieprawdziwe pidy w środku (choc jest ryzyko, że coś wlezie w to samo miejsce - dodatkowo sprawdzanie nazwy?), a całość byłaby na tmpfs, więc jednoczesnie znikałaby po restarcie i była wydajna.
Sprowadzałoby się to w zasadzie do przewędrowania z istniejącymi *.pidami w jedno miejsce. Wtedy pozostaje już tylko jakoś identyfikować te pliki i dopasowywać do nazw usług. (no właśnie - co z dopasowaniem: nazwa rc-skryptu => nazwa .pida => zjadliwa dla usera nazwa usługi)
BTW: w obecnym ukladzie skryptow startowych trzeba by sie niezle nagimnastykowac, zeby uzystac cos takiego:
/home po NFS /home/services lokalne /home/services/swap jako swap ;)
Na koniec rsync /dev/drzewo /dev/brain :D
Ten przykład byłby wykonalny, ale wymagałby osobnego skryptu dla każdego systemu plików i osobnego pliku konfiguracyjnego, żeby pozwolić na zmiane needów bez ręcznej edycji skryptu. No chyba, że zrobimy sobie jakiś generator rc-scriptsów...
-- z wyrazami szacunku, Jakub Piotr Cłapa
smime.p7s
Description: S/MIME Cryptographic Signature
