Ada dua alasan lsof | wc -l
tidak menghitung deskriptor file. Salah satunya adalah daftar hal-hal yang bukan file terbuka, seperti perpustakaan yang dimuat secara dinamis dan direktori kerja saat ini; Anda perlu memfilternya. Lainnya adalah lsof
itu membutuhkan waktu untuk berjalan, sehingga dapat melewatkan file yang dibuka atau ditutup saat sedang berjalan; oleh karena itu jumlah file terbuka yang terdaftar adalah perkiraan. Melihat /proc/sys/fs/file-nr
memberi Anda nilai pasti pada titik waktu tertentu.
cat /proc/sys/fs/file-nr
hanya berguna saat Anda membutuhkan angka yang tepat, terutama untuk memeriksa habisnya sumber daya. Jika Anda ingin membuat daftar file yang terbuka, Anda perlu memanggil lsof
, atau gunakan beberapa metode yang setara seperti menjaring /proc/*/fd
secara manual.
Informasi proses disimpan secara dinamis oleh sistem dalam direktori di bawah /proc. Misalnya proses dengan PID 1234 akan memiliki direktori bernama /proc/1234.
Ada cukup banyak informasi di sana tetapi saat ini Anda tertarik dengan /proc/1234/fd subdirektori.
CATATAN:Anda harus memiliki izin root untuk melihat atau membuka file untuk proses yang bukan milik Anda, serta untuk proses SetUID.
Contoh:
[email protected]:/proc# ls -l 2443/fd
total 0
lr-x------ 1 johan johan 64 Feb 27 10:26 0 -> pipe:[13637]
l-wx------ 1 johan johan 64 Feb 27 10:26 1 -> /home/johan/.xsession-errors
lrwx------ 1 johan johan 64 Feb 27 10:26 10 -> anon_inode:[eventfd]
lrwx------ 1 johan johan 64 Feb 27 10:26 11 -> anon_inode:[eventfd]
lrwx------ 1 johan johan 64 Feb 27 10:26 12 -> socket:[39495]
lrwx------ 1 johan johan 64 Feb 27 10:26 13 -> anon_inode:[eventfd]
lr-x------ 1 johan johan 64 Feb 27 10:26 14 -> anon_inode:inotify
lrwx------ 1 johan johan 64 Feb 27 10:26 15 -> anon_inode:[eventfd]
l-wx------ 1 johan johan 64 Feb 27 10:26 16 -> pipe:[37885]
lr-x------ 1 johan johan 64 Feb 27 10:26 17 -> pipe:[37886]
l-wx------ 1 johan johan 64 Feb 27 10:26 2 -> /home/johan/.xsession-errors
l-wx------ 1 johan johan 64 Feb 27 10:26 21 -> pipe:[167984]
lr-x------ 1 johan johan 64 Feb 27 10:26 22 -> pipe:[167985]
l-wx------ 1 johan johan 64 Feb 27 10:26 23 -> pipe:[170009]
lr-x------ 1 johan johan 64 Feb 27 10:26 24 -> pipe:[170010]
lrwx------ 1 johan johan 64 Feb 27 10:26 3 -> anon_inode:[eventfd]
lr-x------ 1 johan johan 64 Feb 27 10:26 4 -> pipe:[14726]
lrwx------ 1 johan johan 64 Feb 27 10:26 5 -> socket:[14721]
l-wx------ 1 johan johan 64 Feb 27 10:26 6 -> pipe:[14726]
lrwx------ 1 johan johan 64 Feb 27 10:26 7 -> socket:[14730]
lrwx------ 1 johan johan 64 Feb 27 10:26 8 -> socket:[13984]
lrwx------ 1 johan johan 64 Feb 27 10:26 9 -> socket:[14767]
[email protected]:/proc# cat 2443/fdinfo/2
pos: 1244446
flags: 0102001
Lihat juga file lainnya di bawah /proc ... banyak informasi berguna dari sistem berada di sini.