À l'époque, je maudissais le tueur OOM pour être trop agressif et tuer les applications que j'utilisais. Maintenant, alors que je regarde périodiquement mon système thrash pendant 15 minutes à cause d'un programme mal comporté, puis que j'ai finalement recours à une mise hors tension forcée car il ne répond pas au clavier, je me rends compte que je l'avais mieux que je ne le pensais à l'époque.
Comment puis-je restaurer l'OOM-killer à ses anciennes méthodes sanguinaires?
limits.conf
Réponses:
Je diminuerais la quantité d'espace de swap dont vous disposez. Les installations typiques tentent de nos jours d'allouer autant de swap qu'il y a de mémoire physique (ou parfois deux fois plus). Le problème est que lorsque quelque chose se passe mal, le système passe en une mort spirale de tenter de « mélanger » les choses de la mémoire sur le disque, et à l' arrière, et il commence à faire si une grande partie de ce qu'il n'a pas le temps de répondre à l'entrée utilisateur.
Dans les bons jours, des processus entiers étaient échangés sur disque (et retour), donc de gros échanges étaient nécessaires.
Dans les systèmes de mémoire virtuelle modernes, la mémoire est échangée en blocs (plutôt qu'en processus entiers), vous pouvez donc vous en tirer avec des échanges plus petits. Dans votre scénario, il vaudrait mieux que les processus soient tués, donc l'exécution avec un swap plus petit fera que le MOO commencera à tuer les processus plus tôt (plutôt que de laisser le système passer des quantités excessives de temps à échanger des trucs vers / depuis le disque).
la source
Voici ce qui a fonctionné pour moi:
C'est juste pour cette botte. Vous pouvez tester en exécutant ce qui suit dans l'onglet console de l'inspecteur de votre navigateur:
Si vous êtes satisfait de ce paramètre, vous pouvez définir la valeur par défaut pour toutes les futures bottes:
la source