Özet
opensnoop [-a|-A|-ceFghstvxZ] [-f yol_adı] [-n ad] [-p PID]
Açıklama
opensnoop, dosya açma işlemlerini izler. Bir süreç dosya açma isteğinde bulunduğunda, UID, PID ve yol adı (pathname) gibi ayrıntılar yazdırılır.
Döndürülen dosya tanımlayıcısı (file descriptor) yazdırılır; -1 değeri bir hata oluştuğunu gösterir. Bu, uygulamaların var olmayan dosyaları açmaya çalışıp çalışmadığını belirleyerek sorun giderme işlemlerinde yararlı olabilir.
DTrace kullandığından, bu komutu yalnızca root ayrıcalıklarına sahip kullanıcılar çalıştırabilir.
Seçenekler
-a: tüm verileri yazdırır-A: tüm verileri boşlukla ayrılmış olarak döker-c: sürecin mevcut çalışma dizinini yazdırır-e: errno değerini yazdırır-F: open çağrısına iletilen bayrakları (flags) yazdırır-g: komutun tüm argümanlarını yazdırır-s: başlangıç zamanını mikro saniye (us) cinsinden yazdırır-t: kullanıcı yığın izini (stack trace) yazdırır-v: başlangıç zamanını dize (string) olarak yazdırır-x: yalnızca başarısız dosya açma işlemlerini yazdırır-Z: bölge adını (zonename) yazdırır-f yol_adı: gözlemlenecek dosya yolu-n ad: gözlemlenecek süreç adı-p PID: gözlemlenecek süreç kimliği (PID)
Örnekler
Varsayılan çıktı, gerçekleştikleri anda süreçlerin dosya açma işlemlerini yazdırır,
# opensnoop
Okunabilir zaman damgalarını yazdırır,
# opensnoop -v
Hata kodlarını görün,
# opensnoop -e
Yalnızca bu dosyayı gözlemleyin,
# opensnoop -f /etc/passwd
Alanlar
ZONE Bölge adı
UID Kullanıcı kimliği (User ID)
PID Süreç kimliği (Process ID)
PPID Üst süreç kimliği (Parent Process ID)
FD Dosya Tanımlayıcı (File Descriptor, -1 hatadır)
FLAGS open çağrısına iletilen bayraklar (Flags)
ERR errno değeri (bkz. /usr/include/sys/errno.h)
CWD sürecin mevcut çalışma dizini
PATH açılan dosya yolu
COMM sürecin komut adı
ARGS süreç için argüman listesi
TIME açma olayı için zaman damgası, us
STRTIME açma olayı için zaman damgası, dize
Belgeler
Docs dizini altındaki daha fazla belge için DTraceToolkit'e bakın. DTraceToolkit belgeleri, çıktıyı açıklayan ayrıntılı açıklamalar içeren tam çalışılmış örnekleri içerebilir.
Çıkış
opensnoop, Ctrl-C tuşlarına basılana kadar sonsuza kadar çalışacaktır.
Hatalar
Bazen açılan dosyanın yol adı okunamayabilir ve aşağıdaki hata görülebilir:
dtrace: error on enabled probe ID 6 (...): invalid address
bu normal bir davranıştır.
Yazar
Brendan Gregg [Sidney, Avustralya]
Ayrıca Bakınız
dtrace(1M), truss(1)