====== Zugriff auf Ressourcen beschränken ====== ===== CGroups mit systemd ===== CPU-Zeit, Block-IO, RAM, ... beschränken: systemd-run -p CPUQuota=10% -p CPUAccounting=true /usr/bin/stress -c 5 === Dokumentation === man systemd.resource-control ===== pam_limits ===== ''/etc/security/limits.conf'' : ==== Anzahl logins ==== testuser - maxlogins 2 === testen === ssh testuser@localhost 3 x wiederholen ==== CPU Zeit, RAM, offene Dateien und mehr ==== testuser - cpu 1 testuser soft nproc 10 testuser hard nproc 15 testuser - priority 5 === testen === ps -p $$ -o pid,user,nice,cmd ulimit -a forkbomb(){ forkbomb | forkbomb & }; forkbomb oder kurz :(){ :|:& };: ===== Dateizugriffsrechte ===== siehe [[Dateirechte]] ===== Plattenplatz ===== siehe [[quota]] ===== CPU Auswahl ===== Stichwort: taskset ===== Disk IO ===== Stichwort: ( ab Kernel 2.6.13 mit CFQ io scheduler ) ionice ''/usr/src/linux/Documentation/block/ioprio.txt'' Prozess als Idle laufen lassen ionice -c 3 dd if=/dev/zero of=/tmp/ionice-test Prozess in die Best Effort (== unknown) Klasse hochstufen ionice -c 2 -n 0 -p 5432 ===== Load ===== ist unter Linux eher eine system load als eine CPU load und etwas konfus: * https://www.brendangregg.com/blog/2017-08-08/linux-load-averages.html ====== Links ===== * http://www.pro-linux.de/artikel/2/1464/ressourcen-verwaltung-mit-control-groups-cgroups.html * [[ http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/limits.h|aktuelle Beschränkungen im Linux-Kernel ]]