Saat berjalan tail -f filename
, saya mendapat pesan berikut:
tail: inotify cannot be used, reverting to polling: Too many open files
Apakah itu masalah potensial?
Bagaimana cara mendiagnosis apa yang bertanggung jawab untuk semua file terbuka? Saya memiliki daftar proses yang dicurigai, tetapi jika ternyata tidak menjadi biang keladinya, instruksi yang tidak bergantung pada mengetahui proses mana yang akan diperiksa akan bermanfaat.
filesystem
Andrew Grimm
sumber
sumber
ulimit
?Jawaban:
Anda dapat menggunakan lsof untuk memahami siapa yang membuka begitu banyak file. Biasanya server (web) yang membuka banyak file, tetapi lsof pasti akan membantu Anda mengidentifikasi penyebabnya.
Setelah Anda memahami siapa pria jahat yang Anda bisa
Jika output dari lsof cukup besar coba arahkan kembali ke file dan kemudian buka file
Contoh (Anda mungkin harus Ctrl+ Cperintah pertama)
sumber
lsof | awk '{ print $2; }' | uniq -c | sort -rn | head
uniq
hanya bekerja dengan garis yang berdekatan), jalankan uniq, lalu sortir lagi. Jadilsof | awk '{ print $2; }' | sort -rn | uniq -c | sort -rn | head
.:)
Jika ada orang lain yang membutuhkannya ...
Akan menampilkan semua batas saat ini. Secara khusus
ulimit -n 70000
akan menetapkan batas deskriptor file.Juga...
Akan menampilkan / mengatur batas kernel jika diedit.
Penjelasan lebih rinci dapat ditemukan di ...
Bagaimana cara meningkatkan batas file terbuka untuk pengguna non-root?
sumber