2012-12-28 13 views
7

Um die FD Limit für alle Prozesse auf einem Ubuntu Linux-Maschine erhöhen wir Änderungen in /etc/security/limits.conf Sitzung pam_limits.so in /etc/pam.d/login erforderlich haben folgendeWie erhalten Sie /etc/security/limits.conf Änderungen für Prozesse, die unter kopflosen Benutzer laufen?

soft nofile 10000 
hard nofile 10000 

Wir haben auch hinzugefügt. Die Änderungen wurden für alle Benutzer übernommen, die sich abgemeldet und erneut angemeldet haben. Was auch immer neue Prozesse unter diesen Benutzern beginnen, bekommen neue FD-Grenzen.

Aber für die Prozesse, die unter dem kopflosen Benutzer laufen, werden die Änderungen nicht berücksichtigt. Wie können die Änderungen für die Prozesse widergespiegelt werden, die auch unter kopflosen Benutzern ablaufen?

+1

Was meinst du mit kopflosen Benutzer? – Atropo

Antwort

5

Ich hatte das gleiche Problem (mit root/myuser) und konnte keine endgültige Antwort finden. Ich landete nur das Hinzufügen

ulimit -n 64000

Zum init.d-Skript, das den Prozess (Elastic Suche in diesem Fall) startet, und dies scheint den Trick zu tun.

Hoffentlich weiß jemand anderes eine bessere Lösung!

+0

Sie müssen das init.d-Skript mit sudo-Rechten starten, aufgrund dessen ulimit -n möglicherweise funktioniert. In meinem Fall wird das Skript, das den Prozess startet, nicht unter root-Rechten ausgeführt. Daher ist die Verwendung von ulimit, das Root-Rechte erfordert, keine Option. – Ameliorator

+1

Ja, das ist richtig. Ich verstehe nicht, warum die Datei "/ etc/security/limits.conf" nicht auf das init.d-Skript zutrifft. (Ich kann es manuell nach der Tat starten und die Grenzen sind wie erwartet!) – Spike

+0

In meinem speziellen Fall wurde die Anwendung, die ich ausgeführt wurde, mit Sudo begonnen. Ich glaubte, dass die Grenzwerte daher vom Konto des Root-Benutzers übernommen würden. Ich habe mich geirrt. Stattdessen stellte ich fest, dass die Anwendung, obwohl sie als root ausgeführt wurde, die Grenzwerte waren, die dem Benutzer gehörten, der die Anwendung gestartet hatte. – MaasSql