Comment utiliser la commande lsof sous Linux pour répertorier les fichiers ouverts

Açık Dosyaları Listelemek için Linux’ta lsof Komutu Nasıl Kullanılır

⌛ Reading Time: 4 minutes

Linux’un iyi yanı, önyükleme işleminden yazılım paketlerinin kurulumuna kadar her şeyi kolayca görüntüleyip yönetebilmenizdir. Burada, açık dosyaları ve bunları kullanan işlemleri görüntülemek için Linux’ta lsof komutunu nasıl kullanabileceğinizi tartışıyoruz. Bunu nasıl göreceğinizi bilmek, sistemin nasıl çalıştığını anlamanıza ve hatta belirli süreçler için gerekli önlemleri almanıza yardımcı olabilir.

Lsof Komutanlığı

Açık dosyaları ve bunlardan sorumlu kullanıcıları veya süreçleri görüntülemek için, lsof Yarar. Varsayılan olarak, lsof çoğu dağıtımda önceden yüklenmiştir.

Ancak, kurulu değilse, sisteminize kurmak için paket yöneticisini kullanabilirsiniz.

Debian/Ubuntu

Debian’da şu komutu çalıştırın:

Kemer/Manjaro

Manjaro ve diğer Arch tabanlı dağıtımlarda, şu komutu çalıştırarak pacman’ı kullanın:

CentOS/REHL/Fedora

CentOS ve REHL ailesi için dnf’yi kullanabilirsiniz:

Bir Linux İşleminde Açık Dosyaları Listelemek için lsof Komutunu Kullanın

Çoğu Linux komutu gibi, lsof yardımcı programının kullanımı inanılmaz derecede basittir. Komutu yazarak başlayın lsof:

Yukarıdaki komutu çalıştırdığınızda, lsof, sistemdeki açık dosyalar hakkında bilgi vermelidir.

Not: sudo ayrıcalıklarınız varsa, komutu şununla çalıştırın: sudo belirli dosyalarda “izin reddedildi” hatalarını önlemek için.

Yukarıdaki çıktıda gösterildiği gibi, lsof çıktısı aşağıdaki sütunlara sahiptir:

Kolon temsil
Emretmek Hedef dosyayı kullanan işlemin adını gösterir.
PID Dosyayı kullanan işlemin benzersiz tanımlayıcısı.
TID Sütun, iplik tanımlayıcısını gösterir.
TASKCMD Görev komutunun adı.
KULLANICI İşlemi çalıştıran kullanıcının kullanıcı adı veya UID’si.
FD Dosya ve modların dosya tanımlayıcısı.
TİP Hedef dosyayla ilişkili düğüm.
CİHAZ Virgülle ayrılmış cihaz numarası.
BOYUT/KAPALI Dosya ofset boyutunun bayt cinsinden dosya boyutu
DÜĞÜM Yerel dosyanın inode değeri. göstermek için stat komutunu kullanabilirsiniz. inode dosya için bilgi.
İSİM Dosyanın bağlama noktası.

Artık lsof komutunun çıktısının içeriğinin neyi temsil ettiğini anladığınıza göre, belirli bilgileri filtrelemek için komutu kullanalım.

Spesifik Süreç için Nasıl Filtrelenir

Yalnızca belirli işlem tarafından açılan belirli dosyaları filtrelemek için işlem adını veya PID değerini kullanabiliriz.

Örneğin, firefox işlemi tarafından kullanılan dosyaları göstermek için şu komutu kullanabiliriz:

Komut, firefox işlemi tarafından açılan tüm dosyaları gösterecektir.

İşlem kimliğine göre filtrelemek için -p seçeneğini seçin ve işlem kimliğini iletin. kullanabilirsiniz top hedef işlemin işlem kimliğini almak için komut.

Örneğin, firefox işleminin PID’sini almak için şu komutu kullanabiliriz:

Hedef işlemin PID’sine sahip olduğunuzda, açık dosyaları göstermek için lsof kullanın:

Lsof Pid

Yukarıdaki komut, süreç tarafından açılan dosyaları belirtilen PID ile yazdıracaktır.

Belirli Bir Kullanıcı İçin Nasıl Filtrelenir

Yalnızca belirli bir kullanıcı tarafından açılan dosyaları görüntülemek için şunu kullanabiliriz: -u bayrak. Örneğin, Debian kullanıcısını filtrelemek için şu komutu kullanın:

Lsof U Debian

Belirli Bir Dosya İçin Nasıl Filtrelenir

Yalnızca süreci ve belirli bir dosyayı açan kullanıcıyı bilmek istediğinizi varsayalım. Bunu yapmak için dosyanın adını lsof’a iletin:

Uyku

Yukarıdakiler yalnızca belirli dosya için filtre uygular ve kullanıcı, işlem kimliği ve daha fazlası dahil olmak üzere ilgili bilgileri döndürür.

Toplama

Bu basit eğitimde, Linux’ta lsof komutunu kullanarak açık dosyalar hakkında bilgi için sistemin nasıl sorgulanacağını tartıştık. Terminaldeki bir dizinin içeriğini listelemeniz için bazı ek komutlar.

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.