Cara Menggunakan Perintah lsof di Linux untuk Daftar File Terbuka

Hal yang baik tentang Linux adalah Anda dapat dengan mudah melihat dan mengelola semuanya, mulai dari proses boot hingga penginstalan paket perangkat lunak. Di sini kita membahas bagaimana Anda dapat menggunakan perintah lsof di Linux untuk melihat file yang terbuka dan proses menggunakannya. Mengetahui cara melihatnya dapat membantu Anda memahami cara kerja sistem dan bahkan mengambil tindakan yang diperlukan untuk proses tertentu.

Perintah Lsof

Untuk melihat file yang terbuka dan pengguna atau proses yang bertanggung jawab untuknya, kami menggunakan utilitas lsof. Secara default, lsof sudah diinstal sebelumnya di sebagian besar distribusi.

Namun, jika Anda belum menginstalnya, Anda dapat menggunakan pengelola paket untuk menginstalnya di sistem Anda.

Debian/Ubuntu

Di Debian, jalankan perintah:

sudo apt-get install lsof

Arch/Manjaro

Di Manjaro dan distro berbasis Arch lainnya, gunakan pacman dengan menjalankan perintah:

sudo pacman -S lsof

CentOS/REHL/Fedora

Untuk CentOS dan keluarga REHL, Anda dapat menggunakan dnf:

sudo dnf instal lsof

Gunakan Perintah lsof untuk Mencantumkan File Terbuka untuk Proses Linux

Seperti kebanyakan perintah Linux, utilitas lsof sangat mudah digunakan. Mulailah dengan mengetikkan perintah lsof:

sudo lsof

Setelah Anda menjalankan perintah di atas, lsof harus mengembalikan informasi tentang file yang terbuka di sistem.

PERINTAH PID TID TASKCMD USER FD TYPE DEVICE SIZE / OFF NODE NAME init 1 root cwd DIR 8,48 4096 2 / init 1 root rtd DIR 8,48 4096 2 / init 1 root txt REG 0,19 632048 281474976743906 / init init 1 root 0u CHR 1,3 0t0 15362 / dev / null init 1 root 1u CHR 1,3 0t0 15362 / dev / null init 1 root 2u CHR 1,3 0t0 15362 / dev / null init 1 root 3w CHR 1,11 0t0 15367 / dev / kmsg init 1 root 4u sock 0,8 0t0 22689 protokol: AF_VSOCK init 1 root 5r REG 0,4 0 4026532185 mnt init 1 root 6r REG 0,4 0 4026532201 mnt init 1 root 7r DIR 8,48 4096 240 / home / cap init 1 root 8u DIR 8,48 4096 2 / init 1 root 9u sock 0,8 0t0 21853 protokol: AF_VSOCK

Catatan: jika Anda memiliki hak sudo, jalankan perintah dengan sudo untuk menghindari kesalahan “izin ditolak” pada file tertentu.

Seperti yang ditunjukkan pada keluaran di atas, keluaran lsof memiliki kolom berikut:

Kolom

Perwakilan

Memerintah

Menunjukkan nama proses menggunakan file target.

PID

Pengidentifikasi unik untuk proses menggunakan file.

TID

Kolom menunjukkan pengidentifikasi utas.

TASKCMD

Nama perintah tugas.

PENGGUNA

Nama pengguna atau UID pengguna yang menjalankan proses.

FD

Deskriptor file dari file dan mode.

JENIS

Node yang terkait dengan file target.

PERANGKAT

Nomor perangkat dipisahkan dengan koma.

UKURAN/MATI

Ukuran file dalam byte ukuran offset file

NODE

Nilai inode dari file lokal. Anda dapat menggunakan perintah stat untuk menampilkan informasi inode untuk file tersebut.

NAMA

Titik pemasangan file.

Sekarang setelah Anda memahami isi dari lsof command printout, mari kita gunakan perintah untuk memfilter informasi tertentu.

Cara Memfilter untuk Proses Tertentu

Untuk memfilter hanya file tertentu yang dibuka oleh proses tertentu, kita dapat menggunakan nama proses atau nilai PID.

Misalnya untuk menampilkan file yang digunakan oleh proses firefox, kita dapat menggunakan perintah:

sudo lsof -c firefox

Perintah akan menampilkan semua file yang dibuka oleh proses firefox.

Untuk memfilter menurut ID proses, kita dapat menggunakan opsi -p dan meneruskan ID proses. Anda dapat menggunakan perintah top untuk mendapatkan ID proses dari proses target.

Misalnya untuk mendapatkan PID dari proses firefox, kita bisa menggunakan perintah:

sudo ps aux | grep firefox

Setelah Anda memiliki PID dari proses target, gunakan lsof untuk menampilkan file yang terbuka:

sudo lsof -p 2121

Perintah di atas akan mencetak file yang dibuka oleh proses dengan PID yang ditentukan.

Cara Memfilter untuk Pengguna Tertentu

Untuk melihat hanya file yang dibuka oleh pengguna tertentu, kita dapat menggunakan flag -u. Misalnya, untuk memfilter pengguna Debian, gunakan perintah:

sudo lsof -u debian

Cara Memfilter untuk File Tertentu

Misalkan Anda hanya ingin mengetahui proses dan pengguna yang membuka file tertentu. Untuk melakukan ini, berikan nama file ke lsof:

sudo lsof / bin / tidur

Di atas hanya akan memfilter file tertentu dan mengembalikan informasi terkait, termasuk pengguna, ID proses, dan lainnya.

Membungkus

Dalam tutorial sederhana ini, kita membahas cara menanyakan sistem untuk informasi tentang file terbuka menggunakan perintah lsof di Linux. Berikut adalah beberapa perintah tambahan bagi Anda untuk mencantumkan konten direktori di terminal.

Related Posts

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *