oomd(1)
β¨ oomd β the userspace OOM killer that ATE π
okay bestie, so this is the manual page for oomd(1), from the General Commands Manual. it's a whole vibe. let's get into it π«Ά
πΈ NAME πΈ
oomd β Userspace Out-Of-Memory (OOM) killer for Linux systems β¨
like. the OOM killer. but it's not the kernel's OOM killer. it's the userspace one. main character energy fr.
π SYNOPSIS π
oomd [OPTION] ...
that's it. that's the whole thing. options and vibes π¦
π DESCRIPTION π
so, the tea: oomd leverages PSI and cgroupv2 to monitor a system holistically β like, it's watching the whole system, not just one little process being dramatic.
then, oomd takes corrective action in userspace before an OOM occurs in kernel space. yes bestie, before. proactive. iconic. π€
the corrective action is configured via a flexible plugin system, which means you can literally write custom code for it. and by default? this involves killing offending processes. not me being the one who decides who lives and who dies π
this enables an unparalleled level of flexibility where each workload can have custom protection rules. every workload gets its own rules, its own boundaries, its own little moment of protection. slay.
furthermore β and this part is important β time spent livedlocked in kernelspace is minimized. which is good!! because livedlocked kernelspace time is not the vibe. π
β¨ OPTIONS β¨
--help,-hβ Show this help message and exit. you're literally looking at the help rn, kind of meta ngl π«Ά--version,-vβ Print version and exit. quick little flex, then it dips.--config,-C CONFIGβ Config file. default:/etc/oomd/oomd.jsonπ--interval,-i INTERVALβ Event loop polling interval. default:5β±οΈ--cgroup-fs,-f FSβ Cgroup2 filesystem mount point. default:/sys/fs/cgroup--check-config,-c CONFIGβ Check config file. default:/etc/oomd/oomd.jsonπ§--list-plugins,-lβ List all available plugins. window shopping for plugins, we love it π--drop-in-dir,-w DIRβ Directory to watch for drop in configs. it's watching. always watching π--socket-path,-s PATHβ Specify stats socket path. default:/run/oomd/oomd-stats.socket--dump-stats,-dβ Dump accumulated stats. the receipts!! π--reset-stats,-rβ Reset stats collection. fresh start, new me π--device DEVSβ Comma separated<major>:<minor>pairs for IO cost calculation. default:none--ssd-coeffs COEFFSβ Comma separated values for SSD IO cost calculation. default: see doc π--hdd-coeffs COEFFSβ Comma separated values for HDD IO cost calculation. default: see doc π
ok the<major>:<minor>thing in--deviceis written exactly like that in the original, so I'm keeping it exactly like that. no cap, that's the format. π
π¦ SEE ALSO π¦
go read it, bestie. the configuration section has lore. iykyk β¨
π AUTHOR π
oomd is written by Facebook, Inc. π
This manual page was written by Yangfl for the Debian Project (and may be used by others). we love a person who writes man pages fr fr π«Ά
and that's the whole page, bestie!! π this was the oomd(1) page from the General Commands Manual β go forth, monitor holistically, kill responsibly, and stay out of livedlocked kernelspace πβ¨ππ¦πΈπ
π«Άππ₯ππβππππ§π
π¦ where this page comes from
- debian bookworm: oomd 0.5.0-1.2+b1 Β· GPL-2.0-only
- debian trixie: oomd 0.5.0-1.2+b3 Β· GPL-2.0-only
- fedora 43: oomd 0.5.0-15.fc43 Β· GPL-2.0-only
- fedora 44: oomd 0.5.0-16.fc44 Β· GPL-2.0-only
- ubuntu jammy: oomd 0.5.0-1.1 Β· GPL-2.0-only
- ubuntu noble: oomd 0.5.0-1.2 Β· GPL-2.0-only
- ubuntu questing: oomd 0.5.0-1.2build1
- ubuntu resolute: oomd 0.5.0-1.2build2 Β· GPL-2.0-only
- ubuntu stonking: oomd 0.5.0-1.2build2 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms