Zurück zur Übersicht

Begriff

Ulimit (User Limit)

Linux System Administration S2
2 Quellen 0 Lernpfade 0 Backlinks enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Linux erlaubt dir viel, aber nicht alles. Damit ein einzelner User oder ein amoklaufendes Programm nicht den ganzen Server lahmlegt, gibt es Grenzen: ulimits. Sie regeln:

  • Wie viele Dateien darfst du gleichzeitig offen haben?
    Musterantwort: Beginne mit dem konkreten Fall, prüfe die Fakten und erkläre den Begriff daran. Für diesen Abschnitt gilt: Anzeigen: ulimit -a (Zeigt alle Limits). ulimit -n (Anzahl offener Dateien, oft 1024 - zu wenig für Webserver!).
  • Wie viele Prozesse darfst du starten?
    Musterantwort: Beginne mit dem konkreten Fall, prüfe die Fakten und erkläre den Begriff daran. Für diesen Abschnitt gilt: Anzeigen: ulimit -a (Zeigt alle Limits). ulimit -n (Anzahl offener Dateien, oft 1024 - zu wenig für Webserver!).
  • Wie viel Speicher darfst du nutzen? Wenn du das Limit erreichst, sagt Linux: "Stopp. Error: Too many open files."

Merksatz: Ein Linux-Befehl und Mechanismus, um systemweite Ressourcenbeschränkungen (Dateideskriptoren, Prozesse, Speicher) für Benutzer und Shells zu setzen.


Quick-Check

  1. Gilt das pro Prozess oder pro User?
    Kompliziert. nofile (Open Files) gilt meist pro Prozess. nproc (Prozesse) gilt pro User (Summe aller Prozesse des Users).
  2. Docker?
    Container erben oft die Limits vom Docker Daemon oder Host. Du kannst sie aber setzen: docker run --ulimit nofile=1024:1024. Wichtig für Datenbank-Container!
  3. Unterschied zu Cgroups?
    Ulimit ist alt (pro User/Shell). Cgroups sind modern (pro Prozess-Gruppe/Container) und können viel mehr (CPU %, I/O Throttling). Ulimit ist eher eine harte Obergrenze, Cgroups sind Ressourcen-Management.