Örneklerle Linux’ta Lsof Komutu Nasıl Kullanılır

Merhabalar,

Bu bizim devam eden Linux komut serimizdir ve bu makalede pratik örneklerle lsof komutunu inceleyeceğiz. ‘Liste Açık Dosyaları’ anlamına gelen lsof, hangi dosyaların hangi işlemle açıldığını bulmak için kullanılır. Hepimizin bildiği gibi, Linux/Unix her şeyi bir dosya (pipes, sockets, directories, devices vb.)  olarak düşünür.lsof komutunu kullanmanın nedenlerinden biri, dosyaların kullanıldığını söylediği için bir diskin bağlantısının kaldırılamamasıdır. Bu komut yardımıyla kullanımda olan dosyaları kolayca bulabiliriz.

 

1. Tüm Açık Dosyaları lsof Komutuyla Listeleme:

Aşağıdaki örnekte, Command, PID, USER, FD, TYPE vb. sütunları görüntüleyen bazılarının daha iyi anlaşılması için çıkarılan açık dosyaların uzun bir listesini gösterecektir.Açık olan  dosyalar arka planda çok fazla olduğu için  shell üzerinde direk görüntülemiyorum bu nedenle  tüm çıkışı bir dosyaya yönlendireceğim.

lsof > Desktop/KOMUTLAR/lsof.txt

 

 

Bölümler ve değerleri kendiliğinden açıklayıcıdır. Ancak, FD & TYPE sütunlarını daha net olarak inceleyelim.

FD – Dosya tanımlayıcı anlamına gelir ve bazı değerleri aşağıdaki gibidir.

cwd geçerli çalışma dizini
rtd kök dizini
txt program metni (code and data)
mem bellek eşlemeli dosya

Ayrıca FD sütunlarında 1u gibi sayılar gerçek dosya tanımlayıcısıdır ve ardından erişim bilgisi için  u,r,w’si gelir.

r okuma erişimi için.
w yazma erişimi için.
u okuma ve yazma erişimi için.

 

TYPE – dosyaların türü ve kimliği.

DIR – Dizin
REG – Normal dosya
CHR – Karakter özel dosyası.
FIFO – İlk Giren İlk Çıkar

2. Kullanıcıya Özel Açılan Dosyaları Listeleme:

Aşağıdaki komut, firatcanoglu kullanıcısının tüm açık dosyalarının listesini görüntüleyecektir.

lsof -u firatcanoglu > Desktop/KOMUTLAR/lsof.txt

 

3. Belirli Bağlantı Noktasında Çalışan İşlemleri Bulun:

Belirli bir bağlantı noktasının tüm çalışan işlemlerini bulmak için, -i seçeneğiyle aşağıdaki komutu kullanmanız yeterlidir. Aşağıdaki örnek, 9922 numaralı bağlantı noktasının tüm çalışan işlemlerini listeleyecektir.

lsof -i TCP:9922

 

4. Yalnızca IPv4 ve IPv6 Açık Dosyalarını Listeleme:

Aşağıdaki örnekte yalnızca IPv4 ve IPv6 ağ dosyalarının ayrı komutlarla açıldığı gösterilmektedir.

lsof -i 4



lsof -i 6

 

5. TCP Bağlantı Noktasının  Belirli Aralıktaki Portların  Açık Dosyaları Listeleme 1-1024:

lsof -i TCP:1-1024

 

 

6. Belirli Bir Kullanıcıyı ‘^’ Karakteriyle Hariç Tutma:

lsof -i -u^root

Burada root kullanıcısını hariç tutalım.Belirli bir kullanıcıyı yukarıda gösterildiği gibi komutla ‘^’ kullanarak hariç tutabiliriz.

 

7. Kimin Hangi Dosyaları ve Komutları baktığını Öğrenme:

lsof -i -u firatcanoglu

 

 

8. Tüm Ağ Bağlantılarını Listeleme:

‘-i’ seçeneği ile aşağıdaki komut, Dinlenen (LISTEN) & yada bağlantı kurulan (ESTABLISHED)’ tüm ağ bağlantılarının listesini gösterecektir.

lsof -i

 

9. PID ile arama yapma:

Aşağıdaki örnek yalnızca PID’si 4200 olan ları görüntüleyecek.

lsof -p 4200

 

10. Belirli Bir Kullanıcının Tüm İşlemlerini Sonlandırma:

Bazen belirli bir kullanıcı için tüm işlemleri öldürmeniz gerekebilir. Aşağıdaki komut, firatcanoglu kullanıcısının tüm işlemlerini öldürür.

kill -9 `lsof -t -u firatcanoglu`

Bu eğitim yazımızın sonuna geldik.Bu yazıda size bütün parametrelerle ilgili örnek yapmam çok mümkün değil maalesef.Bir çok parametre var.Man lsof komutu ile daha detaylı bir şekilde lsof komutu ile ilgili bilgi alabilirsiniz.

Umarım bu eğitim yazısı sizler için faydalı olur.

 

 

Bu eğiticiye oy ver
[Total: 3 Average: 5]
Firat CANOĞLU TAĞ