
Ich plane, eine Java-App mit auszuführen nohup ... &
. Die Beschränkung muss für Befehle wie diese gelten.
Antwort1
Die meisten Systeme verwendenPAM, und lassen Sie das pam_limits
Modul Limits basierend auf festlegen /etc/security/limits.conf
. Das Limit pro Benutzer für geöffnete Dateien wird genannt nofile
. Sie können es für jeden Benutzer oder für einen bestimmten Benutzer oder eine bestimmte Gruppe festlegen, und Sie können ein Limit festlegen, das der Benutzer außer Kraft setzen kann (weiches Limit) und ein anderes, das nur Root außer Kraft setzen kann (hartes Limit). DasDokumentationund die limits.conf
Manpage enthält die Details. Um beispielsweise das Limit für alle auf 50000 zu erhöhen, fügen Sie diese Zeile ein /etc/limits.conf
(die Einstellung wird wirksam, wenn Sie sich anmelden):
* - nofile 50000
Antwort2
Sie können hinzufügen fs.file-max = <your number>
. /etc/sysctl.conf
Starten Sie dann neu.
Antwort3
ulimit -n
können Sie die Einstellungen pro Prozess ändern und
/proc/sys/fs/file-max
oder die aufgerufene sysctl-Variable fs.file-max
kann zum Lesen und Setzen des systemweiten Wertes verwendet werden
Antwort4
Verwenden Sie ulimit (Bash-Befehl – man bash oder suchen Sie nach einem ähnlichen Befehl für Ihre Shell) pro Programminstanz. Verwenden Sie keine globalen Systemlimits, wenn Sie nicht wissen, was Sie tun – möglicher DoS-Verstoß.