Cara mencari tahu siapa yang menggunakan file di linux

Cara mencari tahu siapa yang menggunakan file di linux

Di artikel ini, kami akan menjelaskan cara mencari tahu siapa yang menggunakan file tertentu di Linux. Ini akan membantu Anda mengetahui pengguna atau proses sistem yang menggunakan file terbuka.

Kita dapat menggunakan perintah LSOF untuk mengetahui apakah seseorang menggunakan file, dan jika mereka, siapa. Itu membaca memori kernel dalam pencariannya untuk file terbuka dan membantu Anda mendaftarkan semua file terbuka. Dalam hal ini, file terbuka mungkin merupakan file biasa, direktori, file khusus blok, file khusus karakter, aliran, file jaringan dan banyak lainnya - karena di Linux semuanya adalah file.

LSOF digunakan pada sistem file untuk mengidentifikasi siapa yang menggunakan file apa pun pada sistem file itu. Anda bisa berlari perintah lsof Pada sistem file linux dan output mengidentifikasi pemilik dan memproses informasi untuk proses menggunakan file seperti yang ditunjukkan pada output berikut.

$ LSOF /DEV /NULL 
Daftar semua file yang dibuka di Linux
Pengguna Perintah PID Tipe FD Ukuran Perangkat /Mati Node Nama Sistemd 1480 Tecmint 0r Chr 1,3 0T0 6 /Dev /NULL SH 1501 TECMINT 0R CHR 1,3 0T0 6 /DEV /NULL SH 1501 TECMINT 1W CHR 1.3 0T0 6 / dev/null dbus-daem 1530 tecmint 0u chr 1,3 0t0 6/dev/null xfce4-SES 1603 tecmint 0r chr 1,3 0t0 6/dev/null xfce4-SES 1603 tecmint 1w chr 1,3 0t0 6/dev/ NULL AT-SPI-BU 1604 TECMINT 0R CHR 1,3 0T0 6 /DEV /NULL DBUS-DAEM 1609 TECMINT 0U CHR 1,3 0T0 6 /DEV /NULL AT-SPI2-R 1611 TECMINT 0U CHR 1.3 0T0 6 /NULL dev/null xfconfd 1615 tecmint 0u chr 1,3 0t0 6/dev/null xfwm4 1624 tecmint 0r chr 1.3 0t0 6/dev/null xfwm4 1624 tecmint 1w chr 1.3 0t0 6/dev/null xfce4-pan 1628 0R CHR 1,3 0T0 6 /DEV /NULL XFCE4-PAN 1628 TECMINT 1W CHR 1,3 0T0 6 /DEV /NULL THUNAR 1630 TECMINT 0R CHR 1,3 0T0 6 /DEV /NULL THUNAR 1630 TECMINT 1W CHR 1,3 0T0 6 /dev /null xfdesktop 1632 tecmint 0r chr 1,3 0t0 6 /dev /null xfdesktop 1632 tecmint 1w chr 1,3 0t0 6 /dev /null… 

Untuk membuat daftar file yang dibuka khusus pengguna, jalankan perintah berikut tecmint dengan nama pengguna yang sebenarnya.

$ lsof -u tecmint 
Daftar file yang dibuka oleh pengguna
Pengguna Perintah PID Tipe FD Ukuran Perangkat /Mati Node Nama Sistemd 1480 Tecmint CWD Dir 8,3 4096 2 /Systemd 1480 Tecmint Rtd Dir 8,3 4096 2 /Systemd 1480 Tecmint TXT Reg 8,3 1595792 3147496 /LIB /SYSTEMD /SYSTEMD SISTEMD 1480 Tecmint memm Reg 8,3 1700792 3150525/lib/x86_64-linux-gnu/libm-2.27.Jadi Systemd 1480 Tecmint memm Reg 8,3 121016 3146329/lib/x86_64-linux-gnu/libudev.Jadi.1.6.9 Systemd 1480 Tecmint memm reg 8,3 84032 3150503/lib/x86_64-linux-gnu/libgpg-error.Jadi.0.22.0 Systemd 1480 Tecmint memm Reg 8,3 43304 3150514/lib/x86_64-linux-gnu/libjson-c.Jadi.3.0.1 Systemd 1480 Tecmint memm Reg 8,3 34872 2497970/usr/lib/x86_64-linux-gnu/libargon2.Jadi.0 Systemd 1480 Tecmint memm Reg 8,3 432640 3150484/lib/x86_64-linux-gnu/libdevmapper.Jadi.1.02.1 Systemd 1480 Tecmint memm Reg 8,3 18680 3150450/lib/x86_64-linux-gnu/libattr.Jadi.1.1.0 Systemd 1480 Tecmint memm reg 8,3 18712 3150465/lib/x86_64-linux-gnu/libcap-ng.Jadi.0.0.0 Systemd 1480 Tecmint memm Reg 8,3 27112 3150489/lib/x86_64-linux-gnu/libuuid.Jadi.1.3.0 Systemd 1480 Tecmint memm Reg 8,3 14560 3150485/lib/x86_64-linux-gnu/libdl-2.27.Jadi… 

Penggunaan penting lainnya lsof adalah mengetahui proses mendengarkan pada port tertentu. Misalnya mengidentifikasi proses mendengarkan di port 80 Menggunakan perintah berikut.

$ sudo lsof -i tcp: 80 
Temukan Port Mendengarkan Proses
Perintah PID Pengguna FD Tipe Ukuran Perangkat/Mati Node Nama Httpd 903 Root 4U IPv6 20222 0T0 TCP *: http (Listen) httpd 1320 Apache 4u ipv6 20222 0T0 TCP *: http (dengarkan) httpd 1481 Apache 4u ipv6 202 (Listen) httpd 1482 Apache 4u ipv6 20222 0t0 tcp *: http (dengarkan) httpd 1493 Apache 4u ipv6 20222 0t0 tcp *: http (dengarkan) httpd 1763 apache 4u ipv6 2022222222222222222222222222222222222222 20222 0T0 TCP *: http (dengarkan) httpd 2029 Apache 4u ipv6 20222 0t0 tcp *: http (dengarkan) httpd 2044 apache 4u ipv6 20222 0t0 tcp *: http (Listen) httpd 319999999999999999 ) httpd 3201 Apache 4u ipv6 20222 0t0 tcp *: http (dengarkan) 

Catatan: Sejak lsof Membaca memori kernel dalam pencariannya untuk file terbuka, perubahan cepat dalam memori kernel dapat mengakibatkan output yang tidak terduga. Ini adalah salah satu kelemahan utama menggunakan perintah LSOF.

Untuk informasi lebih lanjut, lihat lsof Halaman pria:

$ man lsof 

Itu saja! Dalam artikel ini, kami telah menjelaskan cara mengetahui siapa yang menggunakan file tertentu di Linux. Kami telah menunjukkan cara mengidentifikasi pemilik dan memproses informasi untuk proses menggunakan file terbuka. Gunakan formulir umpan balik di bawah ini untuk menghubungi kami untuk pertanyaan atau komentar.