Wéi setze Limiten fir Benotzer Lafen Prozesser am Linux


Ee vun de Schéinheeten vum Linux ass datt Dir bal alles iwwer dat kontrolléiere kënnt. Dëst gëtt engem Systemadministrator eng grouss Kontroll iwwer säi System a besser Notzung vun de Systemressourcen.

Wärend e puer vläicht ni dru geduecht hunn dëst ze maachen, ass et wichteg ze wëssen datt am Linux Dir limitéiert wéi vill Ressource en eenzege Benotzer ka benotzen a wéi laang.

An dësem kuerzen Thema wäerte mir Iech weisen wéi Dir d'Zuel vu Prozesser limitéiere kënnt, déi vum Benotzer gestart ginn, a wéi Dir déi aktuell Grenzen iwwerpréift an se ännert.

Ier mer weider goen, ginn et zwou Saachen déi mir musse weisen:

  1. Dir braucht root Zougang zu Ärem System fir d'Benotzergrenzen z'änneren
  2. Dir musst extrem virsiichteg sinn wann Dir plangt dës Limiten z'änneren

Fir Benotzergrenzen opzestellen, musse mir déi folgend Datei änneren:

/etc/security/limits.conf

Dës Datei gëtt benotzt fir ulimit ze gëllen erstallt vum pam_module.

De Fichier huet déi folgend Syntax:

<domain> <type> <item> <value>

Hei wäerte mir ophalen fir jiddereng vun den Optiounen ze diskutéieren:

  • Domain - dëst enthält Benotzernimm, Gruppen, Guideberäicher etc.
  • Typ - mëll an haart Grenzen
  • Artikel - den Artikel deen limitéiert ass - Kärgréisst, Dateigréisst,  nproc etc
  • Wäert - dëst ass de Wäert fir déi uginn Limit

Eng gutt Probe fir eng Limit ass:

@student          hard           nproc                20

Déi uewe genannte Linn setzt eng haart Limit vu maximal 20 Prozesser op der \Student\ Grupp.

Wann Dir d'Limite vun engem bestëmmte Prozess wëllt gesinn, kënnt Dir einfach d'Limitedatei katzen wéi dës:

# cat /proc/PID/limits

Wou PID déi aktuell Prozess ID ass, kënnt Dir Prozess ID erausfannen andeems Dir ps Kommando benotzt. Fir méi detailléiert Erklärung, liest eisen Artikel deen seet - Fannt Lafen Linux Prozesser a Set Prozess Limits Per-User Level

Also hei ass e Beispill:

# cat /proc/2497/limits
Limit                     Soft Limit           Hard Limit           Units     
Max cpu time              unlimited            unlimited            seconds   
Max file size             unlimited            unlimited            bytes     
Max data size             unlimited            unlimited            bytes     
Max stack size            8388608              unlimited            bytes     
Max core file size        0                    unlimited            bytes     
Max resident set          unlimited            unlimited            bytes     
Max processes             32042                32042                processes 
Max open files            1024                 4096                 files     
Max locked memory         65536                65536                bytes     
Max address space         unlimited            unlimited            bytes     
Max file locks            unlimited            unlimited            locks     
Max pending signals       32042                32042                signals   
Max msgqueue size         819200               819200               bytes     
Max nice priority         0                    0                    
Max realtime priority     0                    0                    
Max realtime timeout      unlimited            unlimited            us   

All d'Linnen sinn zimlech selbstverständlech. Wann Dir awer méi d'Astellunge wëllt fannen, kënnt Dir an der limits.conf Datei aginn, da kënnt Dir d'Handbuch kucken, déi hei geliwwert gëtt.

Wann Dir Froen oder Bemierkungen hutt, zéckt net fir se an der Kommentarsektioun hei drënner ofzeginn.