GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So legen Sie nproc-Werte (Hard und Soft) in CentOS / RHEL 5,6,7 fest

Dieser Beitrag beschreibt, wie ein Linux-Systemadministrator die zulässige Anzahl von Prozessen für jeden Benutzer des Betriebssystems begrenzen kann. Es gibt zwei Orte, an denen die maximal zulässige Anzahl von Prozessen (nproc ) konfiguriert werden.

  • /etc/security/limits.conf
  • /etc/security/limits.d/90-nproc.conf ( CentOS/RHEL 5,6 ) und /etc/security/limits.d/20-nproc.conf ( CentOS/RHEL 7 )

von der Manpage von pam_limits

Standardmäßig werden Limits aus der /etc/security/limits.conf übernommen Konfigurationsdatei. Dann einzelne *.conf-Dateien aus der /etc/security/limits.d/ Verzeichnis gelesen werden. Die Dateien werden nacheinander in der Reihenfolge des Gebietsschemas „C“ analysiert. Die Wirkung der einzelnen Dateien ist die gleiche, als ob alle Dateien in der Reihenfolge des Parsings miteinander verkettet würden. Wenn eine Konfigurationsdatei explizit mit einer Moduloption angegeben wird, werden die Dateien im obigen Verzeichnis nicht geparst.

Anzeigen der aktuellen weichen/harten nproc-Limits

Das Red Hat Enterprise Linux-System verwendet zwei Arten von Werten, um die Grenzen zu definieren:soft und hart . Der Unterschied besteht darin, dass das „weiche“ Limit bis zum „harten“ Limit angepasst werden kann, während das „harte“ Limit nur verringert werden kann und es das maximale Ressourcenlimit ist, das ein Benutzer haben kann.

Immer wenn ein Benutzer einen „ulimit -n“-Befehl ausführt, wird ihm das „weiche“ Limit angezeigt. Wenn also in der Datei „/etc/security/limits.conf“ ein fester Wert festgelegt ist, wird dieser standardmäßig nicht angezeigt.

– Um Soft Limits anzuzeigen, verwenden Sie den folgenden Befehl:

# ulimit -u -S

– Um Hard Limits anzuzeigen, verwenden Sie auf ähnliche Weise den folgenden Befehl:

# ulimit -u -H

Wie man nproc (harte und weiche) Limits einstellt

1. Vorübergehendes Setzen von weichen nproc-Limits
Das „weiche“ Limit kann an das „harte“ Limit angepasst werden, wobei N kleiner oder gleich dem „harten“ Limit ist.

# ulimit -n N

Zum Beispiel:

# ulimit -n 1024

Der obige Wert ist nicht dauerhaft und bleibt bei erneuten Anmeldungen nicht bestehen. Sie können den obigen Befehl im Bash-Profil des Benutzers eingeben, sodass das Limit bei jeder Benutzeranmeldung gesetzt wird.

# vim ~/.bash_profile
ulimit -n 1024

2. nproc harte/weiche Limits dauerhaft setzen
– Um das nproc-Limit systemweit auf unbegrenzt zu setzen, die Datei /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits.d/20-nproc. conf (RHEL7) sollte lauten. Standardmäßig werden die Regeln aus der Datei /etc/security/limits.conf gelesen.
– Darüber hinaus können Sie im Verzeichnis /etc/security/limits.d individuelle Konfigurationsdateien speziell für bestimmte Anwendungen oder Dienste erstellen.
– Ein Standardlimit für Benutzerprozesse ist in der Datei /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits.d/20-nproc.conf definiert (RHEL7), um böswillige Denial-of-Service-Angriffe wie Fork Bombs zu verhindern.

Verwenden Sie die folgende Syntax, um ein hartes/weiches Limit für nproc festzulegen.

# vi /etc/security/limits.conf
[domain] [type] [item] [value]

Hier
[domain] kann ein Benutzername, ein Gruppenname oder ein Platzhaltereintrag sein.
[type] gibt die Art des Limits an und kann folgende Werte annehmen:

  • weich :Dies ist eine weiche Grenze, die vom Benutzer geändert werden kann
  • schwer :Dies ist eine Obergrenze für Softlimits, die vom Superuser festgelegt und vom Kernel erzwungen wird

[Element] ist die Ressource, für die das Limit festgelegt werden soll.

Beispiele für das Setzen von nproc-Limits

Nachfolgend finden Sie einige Beispiele für das Festlegen von nproc-Werten mithilfe der Dateien /etc/security/limits.conf und /etc/security/limits.d/90-nproc.conf (RHEL5, RHEL6), /etc/security/limits. d/20-nproc.conf (RHEL7):

1. Im Beispiel unten ist nproc limit auf 2047 gesetzt, da es in der limits.conf eine feste Grenze von 2047 gibt.

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 2047
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
root soft nproc unlimited
test soft nproc 10023
# ulimit -u
2047

2. Hier wird 1022 verwendet, weil der letzte Eintrag „test soft nproc 1022“ ist, die maximale harte Grenze wäre „1025“.

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 2048
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
* hard nproc 1025
root soft nproc unlimited
test hard nproc 1025
test soft nproc 1022
# ulimit -u
1022

3. Hier wird 1025 verwendet, weil „test hard nproc 1025“ gesetzt ist, „test soft nproc 1066“ wird verwendet, weil das Soft-Limit das Hard-Limit überschreitet.

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 1001
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
* hard nproc 1025
root soft nproc unlimited
test hard nproc 1025
test soft nproc 1066
# ulimit -u
1025

4. Hier wird 1066 verwendet, weil der letzte Eintrag „test soft nproc 1066“ ist und 1066 das harte Limit nicht überschreitet.

# cat /etc/security/limits.conf | grep nproc | grep -v ^#
test hard nproc 1001
test soft nproc 16384
# cat /etc/security/limits.d/90-nproc.conf | grep nproc | grep -v ^#
* soft nproc 1024
* hard nproc 1025
root soft nproc unlimited
test hard nproc 1100
test soft nproc 1066
# ulimit -u
1066
Die Datei /etc/security/limits.conf verstehen


Cent OS
  1. So installieren Sie Python 3.5 unter CentOS/RHEL und Fedora

  2. CentOS / RHEL 7 :So stellen Sie Datum, Uhrzeit / NTP und Zeitzone mit timedatectl ein

  3. So installieren und konfigurieren Sie Samba in CentOS / RHEL

  4. So aktivieren Sie FTP in CentOS/RHEL 5 und 6

  5. So extrahieren Sie RAR-Dateien in CentOS/RHEL 7 und 8

So stellen/ändern Sie den Hostnamen in CentOS 8 / RHEL 8

So installieren und verwenden Sie Firewalld in CentOS / RHEL

So installieren Sie Samba auf RHEL und CentOS Stream

So installieren und konfigurieren Sie Jenkins unter CentOS 8 / RHEL 8

So installieren und konfigurieren Sie Smartctl unter CentOS/RHEL 8 und Ubuntu 20.04

So installieren Sie Wine 5.0 auf CentOS, RHEL und Fedora