Cuando ejecuto tail -f filename
, recibí el siguiente mensaje:
tail: inotify cannot be used, reverting to polling: Too many open files
¿Es eso un problema potencial?
¿Cómo diagnostico qué es responsable de todos los archivos abiertos? Tengo una lista de procesos sospechosos, pero si no resultan ser los culpables, serían útiles las instrucciones que no dependen de saber qué proceso verificar.
filesystem
Andrew Grimm
fuente
fuente
ulimit
?Respuestas:
Puede usar lsof para comprender quién está abriendo tantos archivos. Por lo general, es un servidor (web) que abre tantos archivos, pero lsof seguramente lo ayudará a identificar la causa.
Una vez que entiendes quién es el malo que puedes
Si el resultado de lsof es bastante grande, intente redirigirlo a un archivo y luego abra el archivo
Ejemplo (puede que tenga que hacer Ctrl+ Cel primer comando)
fuente
lsof | awk '{ print $2; }' | uniq -c | sort -rn | head
uniq
solo funciona con líneas adyacentes), ejecutar uniq, luego ordenar nuevamente. Por lo tantolsof | awk '{ print $2; }' | sort -rn | uniq -c | sort -rn | head
.:)
En caso de que alguien más lo necesite ...
Mostrará todos los límites actuales. Específicamente
ulimit -n 70000
establecerá el límite del descriptor de archivo.También...
Mostrará / establecerá el límite del núcleo si se edita.
Una explicación mucho más detallada se puede encontrar en ...
¿Cómo aumento el límite de archivos abiertos para un usuario no root?
fuente