Posso usare ulimit ma penso che influisca solo sulla mia sessione di shell. Voglio che il limite sia aumentato per tutti i processi. Questo è su Red Hat.
Posso usare ulimit ma penso che influisca solo sulla mia sessione di shell. Voglio che il limite sia aumentato per tutti i processi. Questo è su Red Hat.
Risposte:
La risposta di Justin ti dice come aumentare il numero di file aperti disponibili in totale per l'intero sistema. Ma penso che stai chiedendo come aumentare il limite per utente, a livello globale. La risposta a ciò è quella di aggiungere le seguenti righe a /etc/security/limits.conf
:
* soft nofile 2048
* hard nofile 2048
(Dove * indica tutti gli utenti.)
C'è un po 'di documentazione di riepilogo nel file stesso e in man limits.conf
. Questo è implementato tramite il pam_limits.so
modulo che viene chiamato per vari servizi configurati in /etc/pam.d/
.
E, devo ammetterlo, non ho idea da dove provenga quel default 1024. E credimi, ho guardato. Ho anche provato senza il modulo pam_limits configurato ed è ancora lì. Deve essere codificato da qualche parte, ma non sono esattamente sicuro di dove.
Secondo l'articolo Linux Aumenta il numero massimo di file / descrittori di file aperti (FD) , puoi aumentare il limite di file aperti aggiungendo una voce a /etc/sysctl.conf
.
Aggiungere una direttiva di configurazione come segue:
fs.file-max = 100000
Quindi salva e chiudi il file. Gli utenti devono disconnettersi e riconnettersi per rendere effettive le modifiche oppure possono semplicemente digitare il comando seguente:
# sysctl -p
Puoi anche verificare le tue impostazioni con il comando:
# cat /proc/sys/fs/file-max
Aumenta il numero massimo di file ulimit aperti in Linux
1.Passo: apri sysctl.conf
e aggiungi questa riga fs.file-max = 65536
$ vi /etc/sysctl.conf
aggiungi nuova riga e
fs.file-max = 65536
salva ed esci.
2.Step:
$ vi /etc/security/limits.conf
e aggiungi sotto il menzionato
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
salva ed esci verifica max file aperto ulimit
# ulimit -a
....
open files (-n) 65535
Ma se stai cercando di aumentare il numero massimo di file aperti di un servizio come MariaDB o qualcos'altro (usando systemd ) devi farlo direttamente nel file .service
/lib/systemd/system/<servicename>.service
Sarà qualcosa del genere:
[Unit]
Description=Some Daemon
After=syslog.target network.target
[Service]
Type=notify
LimitNOFILE=49152
ExecStart=/usr/sbin/somedaemon
[Install]
WantedBy=multi-user.target
La risposta completa è qui: aumentare nproc per i processi avviati da systemd su CentOS 7
systemd
insieme ai suoi cambiamenti in corso stanno aumentando in tutto l'ecosistema Linux. Tuttavia, suggerirei di modificare la risposta cp -r /lib/systemd/system/mariadb.service /etc/systemd/system/
e apportare le modifiche a quel file, piuttosto che al file di servizio a livello di sistema fornito dal pacchetto.
suplement:
È possibile trovare la configurazione in un altro posto: /etc/security/limits.d/*.conf
Ho dovuto modificarlo. Non ha funzionato senza di essa. Il formato è lo stesso dilimits.conf