Perintah Linux

Perintah lsof Linux

Perintah lsof Linux
Alat perintah "lsof" di Linux adalah salah satu dari banyak alat bawaan yang sangat berguna untuk memeriksa "daftar file yang terbuka". Ya, istilah "lsof" adalah singkatan dari tugas.

Ada sejumlah proses yang berjalan di sistem sepanjang waktu, mengakses file yang berbeda dari sistem. File-file ini bisa berupa file disk, skrip, soket jaringan, perangkat, pipa bernama, dan lainnya. Menggunakan "lsof", dimungkinkan untuk melakukan banyak hal, seperti debugging. Ini juga sangat berguna bagi admin sistem untuk mengetahui file apa yang sedang diakses oleh proses apa what. Salah satu skenario paling berguna yang saya temukan adalah ketika Anda akan meng-unmount sistem file tetapi masih diakses.

Tanpa basa-basi lagi, mari kita mulai dengan "lsof"! Saya berasumsi bahwa sistem UNIX/Linux Anda saat ini sudah menginstal "lsof".

Lokasi

yang mana

Ini melaporkan path lengkap dari perintah, dalam hal ini, "lsof".

versi "lsof"
lsof -v

Ini akan melaporkan informasi versi "lsof" yang mendalam, termasuk tanggal pembuatan biner, versi kompiler, flag kompiler, dan lainnya.

Penggunaan dasar "lsof"

Jalankan "lsof" dengan sendirinya.

lsof

Ini melaporkan daftar BESAR dari semua file yang sedang diakses oleh sistem pada saat menjalankan perintah.

Sementara semua bidang cukup jelas, sebagian besar bingung tentang kolom "FD" dan "TYPE" dan nilainya. Mari kita periksa mereka.

FD: Singkatan dari "Descriptor File". Itu muncul dengan nilai-nilai berikut:.

Ada juga nilai lain yang akan Anda lihat di kolom, seperti "1u" diikuti oleh u, r, w, dll. nilai. Apa artinya itu??

TYPE: Menjelaskan jenis file dan identifikasinya. Nilai-nilainya adalah sebagai berikut:.

File yang dibuka khusus pengguna

Linux adalah platform multi-pengguna yang brilian. Beberapa pengguna dapat mengakses sistem secara bersamaan dan melakukan operasi yang mereka miliki izinnya permission.

Untuk memeriksa file yang sedang diakses oleh pengguna tertentu, jalankan perintah berikut:.

lsof -u

Namun, untuk memeriksa pengguna dengan peringkat lebih tinggi, "lsof" akan membutuhkan hak istimewa "pengguna super".

sudo lsof -u

Bagaimana kalau memeriksa semua perintah dan file yang diakses pengguna tertentu?? Jalankan yang berikut ini.

lsof -i -u

Sekali lagi, untuk pengguna dengan peringkat lebih tinggi, "lsof" akan membutuhkan hak istimewa "pengguna super".

sudo lsof -i -u

Proses berjalan khusus port

Untuk mengetahui semua proses yang sedang menggunakan port tertentu, panggil “lsof” dengan flag “-i” diikuti dengan protokol dan informasi port.

lsof -i<46><@hostname|host_address>
:

Misalnya, untuk memeriksa semua program yang sedang mengakses port 80 melalui protokol TCP/IP, jalankan perintah berikut:.

lsof -i TCP:80

Metode ini juga dapat digunakan untuk menampilkan semua proses yang menggunakan port dalam rentang tertentu, misalnya 1 hingga 1000. Struktur perintahnya mirip dengan sebelumnya dengan sedikit keajaiban di bagian nomor port.

lsof -i TCP:1-1000

Proses khusus protokol

Berikut adalah 2 contoh yang menunjukkan proses yang saat ini menggunakan protokol IPv4 dan IPv6.

lsof -i 4

lsof -i 6

Mencantumkan koneksi jaringan

Perintah berikut akan melaporkan semua koneksi jaringan dari sistem saat ini.

lsof -i

Tidak termasuk dengan ^

Ya, kami dapat mengecualikan pengguna tertentu, port, FD, dan lainnya menggunakan karakter “^”. Yang harus Anda lakukan adalah menggunakannya dengan hati-hati agar Anda tidak mengacaukan seluruh output.

Dalam contoh ini, mari kita kecualikan semua proses dari "root" pengguna.

lsof -u^root

Ada cara lain untuk menggunakan mekanisme pengecualian ini dengan "lsof", misalnya, dengan bendera seperti "-c", "-d" dll. Tidak semua flag mendukung mekanisme ini. Itu sebabnya saya merekomendasikan untuk mencoba demo dengan metode ini dengan flag apa pun sebelum menerapkannya ke dalam beberapa skrip.

pencarian PID

PID adalah properti penting dari setiap proses yang berjalan di sistem. Ini memungkinkan penunjukan yang lebih baik ke proses tertentu. Nama proses tidak cukup membantu dalam banyak situasi karena biner yang sama dapat membuat salinan dirinya sendiri dan melakukan tugas yang berbeda secara paralel.

Jika Anda tidak tahu cara mendapatkan PID dari suatu proses, cukup gunakan "ps" untuk membuat daftar semua proses yang berjalan dan filter output menggunakan "grep" dengan nama proses dan/atau perintah.

ps -A

Sekarang, lakukan penyaringan menggunakan "grep".

ps -A | grep

Sekarang, periksa file apa yang diakses PID.

lsof -p

Mencantumkan file yang terbuka untuk perangkat tertentu

Fungsionalitas "lsof" tidak hanya terbatas pada fungsi-fungsi ini. Anda juga dapat memfilter hasil "lsof" berdasarkan perangkat. Untuk tujuan ini, perintahnya akan terlihat seperti ini.

lsof

Perintah ini sangat berguna untuk mengetahui semua proses yang berjalan dengan info pemiliknya mengakses sistem file tertentu particular. Jika Anda mengalami masalah saat melepas sistem file, ini adalah cara terbaik untuk melakukannya.

lsof

Daftar file yang dibuka di bawah direktori

Mirip dengan contoh sebelumnya, cukup berikan jalur direktori ke "lsof" untuk mengetahui apakah ada proses yang mengaksesnya.

Catatan: "lsof" akan memeriksa direktori secara rekursif, sehingga dapat memakan waktu.

=lsof +D

Bonus: hentikan semua aktivitas pengguna

Berhati-hatilah dengan bagian ini karena dapat mengacaukan semua yang dilakukan pengguna. Perintah berikut akan mematikan semua proses pengguna yang sedang berjalan.

sudo kill -9 'lsof -t -u Pikiran terakhir

Fitur "lsof" tidak hanya berhenti di sini. Yang disebutkan di sini adalah yang paling kita butuhkan setiap hari. Ada banyak fungsi lain dari "lsof" yang dapat berguna (dalam kasus tertentu, tentu saja).

Untuk semua fitur yang tersedia dan penggunaannya, lihat halaman manual dan info "lsof".

pria lsof

info lsof

lsof -?

Nikmati!

Cara Menggunakan Cheat Engine GameConqueror di Linux
Artikel ini mencakup panduan tentang menggunakan mesin cheat GameConqueror di Linux. Banyak pengguna yang bermain game di Windows sering menggunakan a...
Emulator Konsol Game Terbaik untuk Linux
Artikel ini akan mencantumkan perangkat lunak emulasi konsol game populer yang tersedia untuk Linux. Emulasi adalah lapisan kompatibilitas perangkat l...
Distro Linux Terbaik untuk Gaming pada tahun 2021
Sistem operasi Linux telah berkembang jauh dari tampilan aslinya, sederhana, berbasis server. OS ini telah sangat meningkat dalam beberapa tahun terak...