
我想限制特定用戶在任何時刻可以使用的 CPU 核心數量。我該如何在 Linux 上執行此操作?
答案1
據我所知,除了使用 docker 作為虛擬環境並將整個容器限制為選定的核心之外,您不能這樣做。例子:
docker run --cpuset-cpus="0"
大多數時候,您不應該被迫使用這樣的解決方案。如果其中一位使用者導致問題,請使用/etc/security/limits.conf
新增條目:
username - priority 19
這應該使所有用戶進程都以優先權 19(最低)運行,即使消耗大量 CPU,也不應該幹擾電腦上的其他程式。
另外,如果這是單一進程(而不是使用者)的問題,那麼您可以使用nice
或cpulimit
/cgroups