On Fri, Mar 07, 2003 at 03:54:12PM +0000, François Boisson wrote:
> Mar  6 15:38:30 yoda kernel: VM: killing process named
> Mar  6 15:41:34 yoda kernel: VM: killing process apache

Tuer des process au hasard tu ne dois pas...
 
> -> Pourquoi named et apache et pas d'autres processus?

Quand il est à court de mémoire, Linux 2.4 tue des process
plus ou moins au hasard (et malloc() ne renvoie pratiquement
jamais 0, je crois). Linux 2.2 ne tue que le process qui
essayait d'allouer plein de mémoire (en fait, malloc()
renvoie 0 et le process fait ce qu'il veut).

C'est un problème de philosophie: que faire? 2.4 pense qu'il
peut liberer en tuant des process qui peuvent être inutiles,
en esperant que ça suffira pour satisfaire le process qui
utilise plein de mémoire.

Personnellement, je trouve ça débile...

> -> La machine avait bien récupérée et il aurait suffit que
> named se relance tout seul. Script dans cron (me parait
> une bonne idée mais la crontab devient chargée), entrée
> dans inittab + respawn (il faut maitriser le sujet
> notamment le comportement au boot d'une telle entrée)

Et c'est pour ça que c'est débile: on ne sait pas ce qui
meurt, donc on ne sait pas quoi relancer.

Peut-être que mettre simplement une crontab qui relance le
runlevel x pour forcer le relancement de tous les démons qui
auraient pu mourrir? Ou bien utiliser Linux 2.2...

/Y

Répondre à