Kurze Antwort zu deiner Frage : die Anzahl der Verfahren möglich, in das linux-system ist UNBEGRENZTE.
Aber es gibt eine Begrenzung für die Anzahl der Prozesse pro Benutzer(außer root, die hat kein limit).
Und Sie können überprüfen Sie Ihre Benutzer-Grenzen mit den nachstehenden Befehl (treffend zu "max user processes").
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 256447
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 128000
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 500000
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
Wenn Sie möchten, erhöhen Sie die Begrenzung für die Anzahl der Prozess für einen bestimmten Benutzer(zB: hadoop ) , die Sie brauchen, um unten den Eintrag in /etc/security/limits.conf
kernel.pid_max ist ein limitierender Faktor, aber mindestens genauso wichtig ist kernel.threads-max. Es ist erwähnenswert, dass die Standard-nproc ulimit für jeden Benutzer ist kernel.threads-max geteilt durch zwei, und, dass jeder thread zählt in Richtung des Benutzers nproc begrenzen. So ps -u $USER kann es scheinen, dass ein Benutzer nicht erschöpft nproc limit, aber ps -L -u $USER konnte, erzählen eine ganz andere Geschichte.
Ihren kernel exportieren dieser Informationen in
procfs
:Dies ist die maximale Anzahl an eindeutigen Prozess-IDS kann das system unterstützen.
Da ist es eine Datei, die
/proc/sys/kernel/pid_max
besichtigt werden kann aus jeder Lage Programmiersprache.InformationsquelleAutor der Antwort
oder
Vorgeschlagen von Ninefingers.
Für Vollständigkeit, Sie können ändern Sie vorübergehend durch schreiben in /proc/syskernel/pid_max oder dauerhaft, indem Sie hinzufügen:
in /etc/sysctl.conf. 4194303 ist die maximale Grenze für x86_64 und 32767, die für x86.
InformationsquelleAutor der Antwort Lester Cheung
Kurze Antwort zu deiner Frage : die Anzahl der Verfahren möglich, in das linux-system ist UNBEGRENZTE.
Aber es gibt eine Begrenzung für die Anzahl der Prozesse pro Benutzer(außer root, die hat kein limit).
Und Sie können überprüfen Sie Ihre Benutzer-Grenzen mit den nachstehenden Befehl (treffend zu "max user processes").
Wenn Sie möchten, erhöhen Sie die Begrenzung für die Anzahl der Prozess für einen bestimmten Benutzer(zB: hadoop ) , die Sie brauchen, um unten den Eintrag in /etc/security/limits.conf
InformationsquelleAutor der Antwort Ankit Singhal
kernel.pid_max
ist ein limitierender Faktor, aber mindestens genauso wichtig istkernel.threads-max
. Es ist erwähnenswert, dass die Standard-nproc ulimit für jeden Benutzer istkernel.threads-max
geteilt durch zwei, und, dass jeder thread zählt in Richtung des Benutzers nproc begrenzen. Sops -u $USER
kann es scheinen, dass ein Benutzer nicht erschöpft nproc limit, aberps -L -u $USER
konnte, erzählen eine ganz andere Geschichte.InformationsquelleAutor der Antwort Andy Grimm
Meinst du, dass ein mongodb-Prozess kann nur mit
max nproc = threads-max /2
?Weil ich versuche zu erhöhen, nproc als unbegrenzt.
Habe ich versucht, Grenzen setzen
/etc/security/limits.conf
wie diese:mongodb soft nproc unlimited
mongodb hard nproc unlimited
mongodb soft nofile 50000
mongodb hard nofile 50000
mongodb soft sigpending unlimited
mongodb hard sigpending unlimited
Jedoch es didn ' r reflektieren mongodb-Prozess auch nach kompletten Neustart.
Dann habe ich
ulimit -u unlimited
Befehl/etc/init.d/mongodb
aber nachdem ich versucht zu starten mit dieser Datei, die ich bekam/etc/init.d/mongodb: 67: ulimit: Illegal option -u
Fehler. Ist dies
kernel.threads-max
ist die Begrenzung von mongodb max-Prozesses zählen?InformationsquelleAutor der Antwort hardc0der