Çekirdek hata ayıklama: kdump, crash ve ftrace
Çekirdek çöktüğünde bellek dökümü alır ve crash ile incelersin; oops, panic ve kilitlenme mesajlarını okur, ftrace ile çekirdeğin içinde ne olduğunu izlersin.
Seviye 501 · 15 ders · 12 pratik lab
Dersler
Mesajları okumak
- Oops ve panic mesajının anatomisi
- Lekeli çekirdek bayrakları
- Yığın izini kaynak satırına çevirmek
- Kısa görev: üç oops mesajından sorumlu modülü bul
Döküm
- kdump kurmak: ayrılmış bellek ve ikinci çekirdek
- Döküm almak ve doğrulamak
- crash aracıyla döküm incelemek
- Son mesajları ağ ve seri konsolla yakalamak
- Kısa görev: hazır dökümde kilitlenmenin nedenini bul
Canlı izleme
- ftrace: function ve function_graph izleyicileri
- trace-cmd ve KernelShark
- Dinamik hata ayıklama iletileri
- Kısa görev: çekirdekteki bir gecikmeyi ftrace ile kanıtla
Kapanış
- Dağıtıma ve geliştiricilere iyi bir hata raporu
- Bitirme görevi: sık çöken sunucudan döküm al, nedeni bul ve geçici önlem uygula
Pratik lablar
- Çekirdek hata iletisinden sorumlu modülü oku: Verilen oops çıktısında hatanın türünü, işlev adını ve ilgili modülü belirle.
- Çekirdeğin leke bayraklarını çözümle: Leke değerini bayraklarına ayır ve hangi olayın çekirdeği lekelediğini çekirdek kaydından zamanıyla bul.
- Yumuşak kilitlenme uyarısının kaynağını bul: Tekrarlayan kilitlenme uyarılarının çağrı izlerini karşılaştır, ortak işlevi ve tetikleyen iş yükünü belirle.
- kdump'ı kur ve çalıştığını sına: Çökme çekirdeği için bellek ayır, kdump servisini etkinleştir ve tek kullanımlık sanal makinede sınama çöküşüyle döküm üret.
- Hazır dökümde çöküş anını incele: Dökümü crash aracıyla aç; panik iletisini, çöken sürecin adını ve geri izini çıkar.
- Dökümden kök nedeni kanıtlarıyla çıkar: Hazır dökümde çekirdek kaydı, süreç listesi ve bellek durumunu birleştirerek paniğe yol açan olay zincirini rapor halinde yaz.
- ftrace ile bir işlevin çağrılarını izle: İşlev izleyicisini tek bir çekirdek işlevine süz ve on saniyede kaç kez çağrıldığını say.
- trace-cmd ile zamanlama gecikmesini kaydet: Zamanlayıcı olaylarını kaydet ve bir sürecin uyanmasıyla çalışması arasındaki en uzun gecikmeyi rapordan bul.
- Dinamik yoklamayla işlev değişkenlerini yakala: Dosya açma yolundaki çekirdek işlevine yoklama koy, dosya adını ve dönüş değerini kaydederek hata dönen çağrıları ayıkla.
- Donan sistemden SysRq ile bilgi al: Seri konsoldan SysRq ile bellek ve süreç durumunu çekirdek kaydına yazdır ve güvenli yeniden başlatma sırasını uygula.
- Askıda kalan görev uyarısını depolamaya bağla: Yüz yirmi saniye bloke uyarısı veren görevin izinden hangi aygıtta beklediğini bul ve G/Ç hatalarıyla ilişkilendir.
- Çekirdek sürümleri arasında hatayı ikiye bölerek bul: İki hazır çekirdek arasında ortaya çıkan donma sorununu, ara sürümleri sınayarak tek bir değişikliğe indir ve bulguyu belgele.
Kurs hakkında
Çekirdek çöktüğünde bellek dökümü alır ve crash ile incelersin; oops, panic ve kilitlenme mesajlarını okur, ftrace ile çekirdeğin içinde ne olduğunu izlersin.
Ne öğreneceksin
- Mesajları okumak
- Döküm
- Canlı izleme
- Kapanış
Ön koşullar
Aynı yolun 401 düzeyine kadar olan konularında deneyimli olmalısın.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde geçer. Kurulum gerekmez; lab her derste temiz başlar.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 501 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.