determinare ulimit per l'utente root


8

crediamo di aver aumentato il massimo descrittori di file aperti per l'utente root. Ciò è stato fatto aggiungendo questa riga a /etc/security/limits.conf:

*         -    nofile            2048

Pensiamo di aver confermato che il limite dell'utente root è stato aumentato perché possiamo dire (non descritto qui) che la nostra applicazione (solr - che è eseguita da root) ha 1098 file aperti. Tuttavia, non possiamo dire con certezza quanti file aperti sono consentiti all'utente root. Ci aspetteremmo che questo comando funzioni, ma non sembra essere:

$ sudo -u root -s "ulimit -Sn"
1024

Qualche idea? Grazie!


Ci sono altre voci per nofile in limits.conf? Forse viene ignorato. Che dire di possibili errori di analisi di limits.conf. Puoi allegare l'intero file?
Andrew Case,

Stai eseguendo selinux? Qual è l'output di: ls -lZ /etc/security/limits.conf
Andrew Case

Risposte:


6

Ottieni il PID del processo in solresecuzione e quindi cat /proc/$SOLR_PID/limits- questo ti dirà i limiti effettivi del processo.

Consiglierei di eseguire cose come solrun utente separato senza privilegi. Quando lo fai hai più opzioni ( limits.conf o aggiungi ulimit -n 2048a allo script init, ...). L'ultimo non è poi così brillante ma funziona per impostazioni rapide e per riavviare il demone

RANT: non dirmi che non puoi riavviare perché perderai il servizio. In tal caso, dovresti comunque avere una configurazione HA :)


5

Dopo aver modificato il numero di file aperti /etc/security/limits.conf, l'utente deve disconnettersi e riconnettersi per avere effetto. Quindi, prova questo:

$ sudo su -
# ulimit -Sn

2

So che questa domanda ha una risposta, ma sembra più una soluzione, non una vera soluzione.

Secondo Ubuntu questo non è un bug ma un problema di documentazione, vedi: https://bugs.launchpad.net/ubuntu/+source/pam/+bug/65244

Grazie per la segnalazione. Come hai detto, questo non è un bug in PAM ma un problema di documentazione. Il fatto di consentire esplicitamente i limiti per l'utente root è stato affrontato qualche tempo fa (30 agosto 2000) ma è necessario nominare esplicitamente l'utente root per applicare i limiti.

Quindi se vuoi cambiare l'ulimit su tutti gli utenti, incluso l'utente root devi specificare:

*         -    nofile            2048
root      -    nofile            2048
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.