← retour aux snippets

prlimit: limiter ressources d'un process à l'exec

Lancer une commande avec des limites CPU/mémoire/fichiers ouvertes sans changer le shell.

bash process #prlimit#rlimit#limits

objectif

Contenir un process (RAM, CPU, nofile) sans modifier des unités systemd ni ulimits globales.

code minimal

# limiter RSS à 512 MiB et fichiers ouverts à 4096
prlimit --rss=512M --nofile=4096 -- ./app --serve

utilisation

# limiter CPU à 60s de temps CPU
prlimit --cpu=60 -- ./task.sh

variante(s) utile(s)

# consulter les limites d'un PID existant
prlimit --pid $(pgrep -xo app)

notes

  • valeurs acceptent suffixes (K,M,G).
  • ne remplace pas des cgroups mais utile rapidement.