🚨 Hata Sözlüğü

Hata Sözlüğü: 🎬 Bir Linux Hatasının Teşhis Zinciri CI adımı kıpkırmızı: `./deploy.sh: Permission denied`. Dosya ORADA, içeriği DOĞRU — ama çalışmıyor.

🎬 Bir Linux Hatasının Teşhis Zinciri

CI adımı kıpkırmızı: `./deploy.sh: Permission denied`. Dosya ORADA, içeriği DOĞRU — ama çalışmıyor. Bu filmde, sözlükteki her hataya uygulanabilen 5 adımlı teşhis zincirini bu vaka üzerinden izleyeceksin.

Adım 1 — mesajı PARÇALA: "Permission denied" bir sözdizimi hatası değil, bir ERİŞİM reddi. Bash dosyayı çalıştırmayı denemeden kapıda durduruldu — içerik hiç okunmadı bile.

Adım 2 — KATMANI bul: sorun izin mi, PATH mi, disk mi, ağ mı? "Permission denied" izin katmanının sesidir — script'in içeriğini düzeltmeye çalışmak yanlış katmanda kürek çekmektir.

Adım 3 — DEĞİŞTİRMEYEN komutla kanıt topla: `ls -l deploy.sh` → `-rw-r--r--`. İşte kanıt: x biti HİÇBİR seyircide yok. Teşhis artık tahmin değil, gözlem.

Adım 4 — en küçük GÜVENLİ düzeltme: `chmod u+x deploy.sh` — sadece owner'a, sadece execute. `chmod 777` de "çözerdi" — ama herkese yazma yetkisi vererek, paylaşılan CI makinesinde güvenlik deliği açarak.

Adım 5 — KANITLA: başarısız olan komutu AYNEN tekrar çalıştır. `./deploy.sh` artık çalışıyor. Hata "kayboldu" değil — ANLAŞILDI ve kökünden çözüldü.

Final — zincir: mesajı parçala → katmanı bul → değiştirmeyen kanıt → en küçük güvenli düzeltme → aynı komutla kanıtla. Java refleksinin aynısı: stack trace'te ilk satır + "Caused by" okunur, rastgele satır silinmez. Aşağıdaki sözlükteki her hata bu zincirle çözülür.

Adım Adım: Linux Hata Teşhis Refleksi

Mesajın türünü ayırt et

"Permission denied" erişim, "No such file or directory" path/isim, "command not found" PATH, "No space left on device" disk sorunudur — mesajın kendisi katmanı fısıldar.

Dört aday katman: izin (ls -l), konum/path (pwd, ls), ortam (echo $PATH, env), kaynak (df -h, free). Hata mesajının işaret ettiği TEK katmanda çalış.

Değiştirmeyen kanıt topla

Önce hiçbir şeyi bozamayan komutlar: ls -l, pwd, whoami, df -h, ss -tulpn. `sudo`, `rm`, `chmod 777` gibi kalıcı hamlelerle ASLA başlama.