2010-06-24 6 views
20

Als ich versuchte, eine Software auf RedHat EL5 zu installieren, bekam ich den Fehler, dass der erwartete Wert von Soft/Hard Nofile 4096 ist, während der Standardwert 1024 ist die Nummer, aber ich weiß nicht, was die Parameter sind. Beziehen sie sich auf Soft Link und Hard Link?Was bedeutet "Soft/Hard Nofile" unter Linux

So wie ich es ändern ist:

A)

user soft nofile 5000 
user hard nofile 6000 

B) modifizieren, um die /etc/pam.d/system-auth

die /etc/security/limits.conf modifizieren
session required /lib/security/$ISA/pam_limits.so 

C) modifizieren /etc/pam.d/login

session required pam_limits.so 

Nach der Änderung (durch Umschalten auf root). Es scheint, dass ich Maschine neu starten muss, um es zu bewirken. Aber einige Post online sagen, dass es direkt nach der Änderung zum Tragen kommen sollte. Würde mich freuen, wenn jemand es klären kann.

Antwort

31

Dies sind: ein "weicher" und ein "harter" Grenzwert für die Anzahl der Dateien, die ein Prozess möglicherweise gleichzeitig geöffnet hat. Beide beschränken die gleiche Ressource (keine Beziehung zu harten Links oder irgendetwas). Der Unterschied ist: Das Softlimit kann später durch den Prozess, der mit diesen Limits läuft, bis zum Hardlimit verändert werden und das Hardlimit kann nur gesenkt werden - der Prozess kann sich durch Erhöhung des Hardlimits nicht mehr Ressourcen zuweisen (außer laufende Prozesse) mit Superuser-Rechten (als root)). Systemspeicher, CPU-Zeit usw. Siehe setrlimit(2) Manpage oder die Beschreibung IhrDeterm Shell ulimit build-in-Befehl (zB in der bash(1) Handbuch Seite

+4

Eine kleine Ausnahme ist, dass Prozesse, die als "root" ausgeführt werden, sowohl ihre harte Grenze als auch ihre weiche Grenze erhöhen können. –

+0

Danke für die Erinnerung. Ich habe meine Antwort aktualisiert. –

4

:

ähnliche Grenzen können für andere Systemressourcen festgelegt werden. Es ist kein Neustart erforderlich, aber /etc/security/limits.conf wird nur verarbeitet, wenn /lib/security/pam_limits.so ausgeführt wird, was zum Zeitpunkt der Anmeldung der Fall ist, und die Werte werden von untergeordneten Prozessen geerbt Diese Anmeldung erbt die angegebenen Werte.

+0

Danke für die Klarstellung –

1

Als zusätzliche beiseite gehören einige Distributionen /etc/security/limits.d, wo "Schnipsel" von Limit-Konfiguration ationen können platziert werden. Sie können Dateien erstellen, wie folgt aus:

$ ll /etc/security/limits.d/ 
-rw-r--r--. 1 root root 191 Aug 18 10:26 90-nproc.conf 
-rw-r--r-- 1 root root 70 Sep 29 12:54 90-was-filedesc.conf 

Mit Dateien enthalten, was Grenzen Sie festlegen möchten:

$ more /etc/security/limits.d/90-nproc.conf 
# Default limit for number of user's processes to prevent 
# accidental fork bombs. 
# See rhbz #432903 for reasoning. 

*   soft nproc  1024 
root  soft nproc  unlimited 

$ more /etc/security/limits.d/90-was-filedesc.conf 
root  hard nofile 20000 

ich diese Methode finden die Verwendung dieser Art von Überschreibungen mit /etc/security/limits.conf viel sauberer als Ausmisten zu verwalten.

Auch wenn Sie beide weich/hart auf den gleichen Wert setzen möchten, können Sie den - als den Typ verwenden.

$ more /etc/security/limits.d/90-was-filedesc.conf 
root  -  nofile 20000