Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> sistemi >> Linux >> .

Come correggere l'errore "Troppi file aperti" in Linux

Soluzione:aumentare il limite

I sistemi Linux impongono limiti al numero di file aperti a cui un utente può accedere contemporaneamente. L'errore "troppi file aperti" si verifica quando il numero di file aperti supera questi limiti. Per risolvere questo problema, aumentare il limite sui file aperti.

Modifica il file `/etc/security/limits.conf` corrispondente a seconda che tu stia tentando di applicare la modifica a livello globale o a un utente specifico.

Se tenti di aumentare il limite per ogni utente, modifica `/etc/security/limits.conf`:

```

sudo nano /etc/security/limits.conf

```

Per modificare il limite per un particolare utente denominato "nomeutente", modifica il file `/etc/security/limits.d` corrispondente:

```

sudo nano /etc/security/limits.d/username.conf

```

All'interno del rispettivo file, individuare e modificare i parametri “nofile” per impostare i nuovi limiti:

```

* morbido file 65535

*nofile rigido 65535

```

Ecco cosa fanno questi parametri:

- “soft” imposta un limite soft che può essere temporaneamente ignorato in circostanze particolari.

- “duro” stabilisce un limite rigido che non può essere superato.

Il valore numerico (“65535” nell'esempio) indica il numero massimo desiderato di file aperti.

Dopo aver salvato le modifiche ed essere uscito dall'editor, esegui i seguenti comandi per applicare i nuovi limiti. (Sostituisci "nome utente" con l'utente di destinazione se modifichi un utente specifico):

```

sudo ulimit -n 65535 (Per la sessione corrente)

```

```

sudo sysctl -w fs.file-max=65535 (da ogni sessione in poi)

```

Controlla le modifiche al limite del file con il comando:

```

ulimit -n

```

Se ottieni il limite aumentato come output, la modifica è effettiva e l'errore "troppi file aperti" dovrebbe essere risolto.

Soluzione alternativa:chiudi i file inutilizzati

Se aumentare il limite dei file non è pratico, valuta la possibilità di chiudere tutti i file aperti non necessari per evitare di raggiungere il limite. Verificare la presenza di processi in background o applicazioni non necessari che utilizzano descrittori di file.

Esegui il comando seguente per ottenere una panoramica degli handle di file aperti:

```

lsof -Fn | grep eliminato

```

Cerca eventuali handle non necessari e termina i processi corrispondenti per rilasciarli.

 

sistemi © www.354353.com