如何限制特定用户或进程的RAM使用率?


8

我正在使用不时泄漏内存的后台服务。为了避免使用Alt+ SysRq REISUB[ 1 ],我想限制一个进程或系统用户的RAM使用率。

我真的很想说:x用户可能使用1 GB的最大RAM。

这可行吗?我需要某种虚拟机吗?我正在使用Ubuntu 9.10。

Answers:


10

ulimit是你的朋友。检出-m标志。我认为您是在启动过程之前设置的,并且此后适用(在当前shell中)。


谢谢,很好的提示!据我了解,ulimit限制了所有用户的内存/进程/所有消耗。我只想将其限制为一个用户/流程和子流程。
guerda

1
ulimit是一个shell命令,仅影响执行ulimit之后从同一shell启动的进程。您可以使用ulimit命令在shell脚本中启动该进程,以使其仅影响该进程。
KeithB

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.