[Ubuntu 18.04] geheugengebruik tegenstrijdige info

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • iGadget
  • Registratie: Januari 2000
  • Laatst online: 06-07 11:46
Op mijn laptop met Ubuntu 18.04 merk ik dat hoe vaker ik suspend-resume, hoe minder werkgeheugen er beschikbaar is. Na een tijd wordt de boel echt baggertraag (logisch als het systeem alleen maar aan het swappen is), maar krijg ik geen enkele waarschuwing dat er wellicht een geheugen-vol-probleempje is (bonuspunten als je hier ook nog een fix voor weet ;) ).

At any rate - ik ben vaak met zoveel dingen tegelijk bezig (langlopende projecten) dat ik redelijk wat browsertabs tegelijk open heb (50+ is geen uitzondering). En deze tabs staan vaak dagen tot wekenlang open.
Feitelijk reboot ik alleen als het systeem me daartoe 'dwingt', bijvoorbeeld bij een kernelupdate.

Dus toen de boel vandaag weer eens niet voorruit te branden was, ben ik eerst maar eens browser tabs en vensters gaan sluiten, te beginnen met Chromium. Nadat alles dicht was, inclusief webapps voor WhatsApp en Trello, pakte ik htop erbij. Maar nog steeds zag ik heel veel chromium processen.

Dus dan maar met de botte(re) bijl - killall chromium-browser in de console. Geen foutmelding, dus kennelijk sluimerde er nog wat op de achtergrond.
Toen weer in htop gekeken... wtf... nog altijd heel veel chromium-browser processen?!

Okee, nog een keer - killall chromium-browser.

Maar toen viel m'n mond wel even open van verbazing:
Afbeeldingslocatie: https://tweakers.net/i/TPgHQEhZrDfLEUa6dLOFHCgLhjc=/800x/filters:strip_exif()/f/image/cSEBTfHrwOLevsszw9SfSMYp.png?f=fotoalbum_large
Misschien heb ik de hele Unix fundamentals niet begrepen, maar dit zou toch niet moeten kunnen?
What's going on here?

Never mind - had Google Calendar nog open staan. Maar.... waarom werd deze niet gekilled (en daarna zelfs niet eens meer gevonden) door killall?

[ Voor 9% gewijzigd door iGadget op 04-04-2020 10:58 . Reden: nieuwe info ]

"I'll just use my Go-Go-Gadget handbook!"

Beste antwoord (via iGadget op 04-04-2020 12:31)


  • Cyphax
  • Registratie: November 2000
  • Laatst online: 21:56

Cyphax

Moderator LNX
Ik denk dit:
There are actually a few subtly different versions of the command name that are used by ps, killall, etc.

The two main variants are: 1) the long command name, which is what you get when you run ps u; and 2) the short command name, which is what you get when you run ps without any flags.
Lijkt erop dat killall met die naam die processen niet matcht op naam.

Saved by the buoyancy of citrus

Alle reacties


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • Cyphax
  • Registratie: November 2000
  • Laatst online: 21:56

Cyphax

Moderator LNX
Ik denk dit:
There are actually a few subtly different versions of the command name that are used by ps, killall, etc.

The two main variants are: 1) the long command name, which is what you get when you run ps u; and 2) the short command name, which is what you get when you run ps without any flags.
Lijkt erop dat killall met die naam die processen niet matcht op naam.

Saved by the buoyancy of citrus


Acties:
  • 0 Henk 'm!

  • iGadget
  • Registratie: Januari 2000
  • Laatst online: 06-07 11:46
Cyphax schreef op zaterdag 4 april 2020 @ 11:01:
Ik denk dit:

[...]

Lijkt erop dat killall met die naam die processen niet matcht op naam.
Dus toch mijn beperkte Unix kennis. Weer wat geleerd, dank!

For future reference:
Focus on achieving your goal, not on fixing the specific tool. If you're trying to kill Chromium's tab processes but not the main process, start by comparing their command lines, e.g. using ps -efww or pgrep -alf chromium.

You'll see that all "child" processes have a parameter like --type=zygote or --type=renderer. Since this directly describes the process' purpose, it will be more reliable than relying on minor differences in the executable name (which has nothing to do it as all Chromium subprocesses are named the same; the fact that "chromium-browser" used to work was just an artifact of Ubuntu's packaging).
Since this is part of the command line, you'll have to use pkill -f to match it:

code:
1
2
3
pkill -f -- "--type=renderer"

pkill -f -- "chromium-browser --type=renderer"

[ Voor 61% gewijzigd door iGadget op 04-04-2020 12:34 . Reden: more info ]

"I'll just use my Go-Go-Gadget handbook!"