OOM killer, něco jiného než kill

OOM killer, něco jiného než kill
« kdy: 16. 06. 2020, 10:00:37 »
Dá se nastavit aby se při nedostatku paměti proces "killnul" jinak než killem?
Na notebooku spouštím ve virtuálu widle. Někdy se zapomenu po přepnutí do linuxu, pootevírám hromadu tabů v chrome a OOM sestřelí virtuál.
Asi bych si uměl napsat script který bude kontrolovat paměť a spustí uložení virtuálu pokud paměť dochází.
Existuje už něco takového? Nechci znova vynalézat kolo.


Re:OOM killer, něco jiného než kill
« Odpověď #1 kdy: 16. 06. 2020, 10:16:45 »
Nejjednodusi reseni je zvetsit si swap, popr pridat sekundarni swapfile s nizsi prioritou.

Re:OOM killer, něco jiného než kill
« Odpověď #2 kdy: 16. 06. 2020, 10:31:23 »
co ten EarlyOOM a nastavit chrome velkou prioritu? pak bude zabit chrome

https://www.root.cz/zpravicky/fedora-32-bude-zrejme-mit-earlyoom-pro-pripady-nedostatku-pameti/

Re:OOM killer, něco jiného než kill
« Odpověď #3 kdy: 16. 06. 2020, 10:32:27 »
earlyoom - Early OOM Daemon

Posila nejdriv SIGTERM. SIGKILL az potom. Nestacilo by?

Re:OOM killer, něco jiného než kill
« Odpověď #4 kdy: 16. 06. 2020, 10:37:24 »
Pro hlavní OS je totiž ta virtuálka jako jeden proces, nevidí do něj, OOM killer chrání ostatní procesy, aby nespadly.

Schovej si chrome také chrome do cgroupy, jiné virtuálky a omez mu také pameť. Můžeš nastavit jinou prioritu pro virtuálku či jí úplně vyloučit z oome killeru, pak ale náhodně zabije něco jiného. Osobně bych začal nastavením swapu a omezováním chromu.