Tôi đang gặp phải một vấn đề bất ngờ; tất cả các ứng dụng của tôi và máy chủ đều chạy tốt và đột nhiên tôi thấy số lượng tệp đang mở tăng lên.
Tôi đang kiểm tra nó bằng lệnh này:
cat /proc/sys/fs/file-nr
Khi tôi kiểm tra với nó, nó hiển thị 44544 0 128000
, vì vậy, 44044 là số lượng tệp đang mở.
Nhưng khi tôi kiểm tra với lệnh này - lsof | wc -l
nó hiển thị - 28384.
Vậy cái nào đúng?
Giới hạn tệp mở tối đa của tôi là 65535
ulimit -a
open files (-n) 65535
Tôi muốn biết 5 quy trình hàng đầu đang sử dụng các tệp mở hơn. Tôi có thể lấy cái này từ lsof
nhưng số đếm hiển thị ở đây rất khác so với lệnh khác mà tôi đã đề cập ở trên.
Tôi có thể lấy chi tiết về các quy trình được tính bằng lệnh này cat /proc/sys/fs/file-nr
không?
Theo liên kết được đề cập dưới đây, chúng tôi nói rằng chúng tôi không thể, Cách hiển thị mô tả tệp đang mở nhưng không sử dụng lệnh lsof
Có một công việc xung quanh cho tôi? Tôi cần tìm quá trình bắt đầu sử dụng nhiều tệp đang mở đột ngột.
CẬP NHẬT Xin lỗi các bạn cho những rắc rối. Tôi đã tìm thấy lỗi mà tôi đang làm Tôi KHÔNG kiểm tra lsof | wc -l từ root. đó là lý do tôi đã thấy một sự khác biệt rất lớn
vẫn có sự khác biệt giữa đầu ra của tệp -nr và lsof | wc -l (từ gốc). số lsof nhiều hơn số tập tin -nr. Lý do cho điều này là, tập tin -nr bỏ qua một số thư mục (được coi là tập tin của lsof) tôi tìm thấy lý do này bởi một nghiên cứu litle trên chính google. Dù sao đi nữa! Cảm ơn các bạn vì tất cả sự giúp đỡ!
lsof | wc -l
thực sự hiển thị một số âm?