Perché '/etc/sysctl.conf' non determina la mia impostazione 'kern.maxfiles'?

0

Ho avuto un errore persistente "troppi file aperti nel sistema" sulla mia macchina (OSX 10.7.5).

Quando eseguo sysctl kern.maxfiles e sysctl kern.maxfilesperproc , entrambi output 2048 .

Questo articolo dice che le impostazioni predefinite sono 12.288 e 10.240 , rispettivamente. Dice che puoi modificare in modo permanente le impostazioni modificando /etc/sysctl.conf .

L'ho fatto. I contenuti di quel file sono ora:

kern.maxfiles=12288
kern.maxfilesperproc=10240

Le autorizzazioni su di esso sono -rw-r--r-- , e appartiene a root nel gruppo wheel .

Questo file non ha alcun effetto su ciò che il mio sistema sta facendo. Dopo il riavvio, se controllo le impostazioni del max file, sono invariate.

C'è qualcos'altro che controlla queste impostazioni, rendendo le mie impostazioni predefinite più basse di quelle che dovrebbero essere e sovrascrivendo le mie impostazioni esplicite?

Come posso correggere queste impostazioni?

Aggiornamento

Da allora ho provato, senza successo:

Limiti inferiori

Impostandoli su 4000 e 3500 nel caso in cui il sistema ignori le impostazioni su una determinata soglia.

Uso di /etc/rc.common

Ho inserito quanto segue, non in /etc/sysctl.conf , ma in /ect/rc.common :

sysctl -w kern.maxfiles=4000
sysctl -w kern.maxfilesperproc=3500

Uso del file di configurazione della mia shell

Ho inserito gli stessi comandi di cui sopra nella mia .zshrc , ma non funzionano senza sudo.

    
posta Nathan Long 14.12.2012 - 18:07
fonte

1 risposta

2

Visualizza /etc/launchd.conf

Per qualche motivo, ho avuto questo in /etc/launchd.conf :

limit maxfiles 2048

Questo apparentemente ha annullato le mie impostazioni in /etc/sysctl.conf , sia perché è considerato più importante sia per essere eseguito successivamente nel processo di avvio.

Dopo aver rimosso e riavviato, le mie impostazioni da /etc/sysctl.conf hanno avuto effetto.

    
risposta data 14.12.2012 - 21:06
fonte

Leggi altre domande sui tag