Мне нужно ограничить использование ЦП, памяти и пропускной способности сети для большинства процессов для каждого пользователя. Фактически, пользователь - это всего лишь логическая группа для нескольких процессов-демонов, а не реальных людей. Таким образом, у разных пользователей одинаковый (но не обязательно идентичный) набор запущенных процессов.
К сожалению, я даже не опытный пользователь Linux, поэтому понятия не имею, как его получить. Не могли бы вы указать на возможные способы этого?
Ограничения подключаемых модулей аутентификации (PAM) позволят вам применить многие из этих ограничений квот для каждого входа в систему: http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/sag-pam_limits.html и Руководство администратора Linux
Если честно, кто-то другой ответит намного лучше, чем я, но вы можете начать с «man setrlimit».
ulimit
может многое из этого сделать, хотя и на более низком уровне. Ты можешь использовать iptables
для ограничения сети.
Используйте виртуализацию. Тогда вы можете быть очень строгими, и они могут быть root своих собственных виртуальных машин, если захотят.
Если вы используете RedHat или какой-нибудь клон, например CentOS, вы можете редактировать /etc/security/limits.conf
для ограничения ресурсов на пользователя или на группу. В других дистрибутивах этот файл конфигурации может быть расположен в другом месте.