
Linux’ta VS Code Disk Sorunu: Gigabyte’larca Yer Açın
Dünyanın en popüler kod editörlerinden biri olan Visual Studio Code (VS Code), hafif yapısı ve geniş eklenti desteğiyle bilinir. Ancak Linux kullanıcıları için son zamanlarda bu “hafiflik” kavramı, yerini disk doluluğu uyarılarına bırakmış durumda. Eğer Linux dağıtımınızda (Ubuntu, Fedora, Arch vb.) diskinizin anlamsızca dolduğunu fark ettiyseniz, suçlu hiç beklemediğiniz bir yerde, VS Code’un arka plan dosyalarında gizleniyor olabilir.
Techneiro olarak, son günlerde forumlarda ve teknik topluluklarda sıkça dile getirilen, bazı kullanıcıların yüzlerce gigabyte depolama alanını işgal eden VS Code sorununu derinlemesine inceledik. İşte sorunun kaynağı ve çözüm yolları.
Sorunun Kaynağı: Sessiz Bir Depolama Canavarı “Crashpad”
Sorunun temelinde VS Code’un çökme raporlama mekanizması yatıyor. VS Code, Google tarafından geliştirilen açık kaynaklı bir kilitlenme raporlama sistemi olan Crashpad‘i kullanır. Teorik olarak, editör çöktüğünde veya bir hata oluştuğunda, bu sistem geliştiricilere gönderilmek üzere küçük bir döküm dosyası (dump file) oluşturur.
Ancak Linux sistemlerinde yaşanan bir hata döngüsü, bu dosyaların asla silinmemesine ve sürekli birikmesine neden oluyor. Özellikle arka planda çalışan eklentiler hata verdiğinde veya VS Code düzgün kapatılamadığında, sistem ~/.config/Code/Crashpad klasörü altına sürekli veri yazıyor. Bazı kullanıcılar, aylar içinde bu klasörün 100 GB’ın üzerine çıktığını rapor etmiştir.
Neden Sadece Linux?
Windows ve macOS sistemlerinde işletim sistemi düzeyindeki temizleme mekanizmaları veya VS Code’un bu platformlardaki farklı dosya yönetim protokolleri, bu sorunun büyümesini engelliyor. Ancak Linux’ta, kullanıcı izinleri ve geçici dosya yönetimi (tmp files) yapılandırmasına bağlı olarak, bu dosyalar “önemli kullanıcı verisi” gibi algılanıp sonsuza kadar saklanabiliyor.
Suçluyu Tespit Etme: Disk Kullanım Analizi
Sorunun VS Code’dan kaynaklanıp kaynaklanmadığını anlamak için terminal üzerinden basit bir kontrol yapmanız yeterlidir.
Öncelikle terminali açın ve VS Code’un yapılandırma klasörünün boyutunu kontrol edin:
du -h --max-depth=1 ~/.config/Code | sort -hr
Eğer çıktı listesinin en üstünde Crashpad veya User/workspaceStorage klasörlerini devasa boyutlarda (GB seviyesinde) görüyorsanız, sorunu tespit ettiniz demektir. Normal şartlarda bu klasörlerin toplamı birkaç yüz megabyte’ı geçmemelidir.
Çözüm Yöntemleri
Bu disk alanını geri kazanmak güvenli ve basittir. Ancak işlem yapmadan önce VS Code’u tamamen kapattığınızdan emin olun.
1. Crashpad Klasörünü Temizlemek
Bu klasördeki dosyalar, geçmiş kilitlenme raporlarıdır ve silinmeleri VS Code’un çalışmasını, ayarlarınızı veya projelerinizi etkilemez.
Terminal üzerinden şu komutu uygulayarak biriken çöp dosyaları silebilirsiniz:
rm -rf ~/.config/Code/Crashpad/completed/*
rm -rf ~/.config/Code/Crashpad/pending/*
Not: Eğer Crashpad klasörünün tamamını silerseniz, VS Code bir sonraki açılışta bu klasörü temiz bir şekilde yeniden oluşturacaktır.
2. Workspace Storage (Çalışma Alanı Önbelleği) Temizliği
Bir diğer disk canavarı ise workspaceStorage klasörüdür. VS Code, açtığınız her proje için burada bir veritabanı dosyası tutar. Sildiğiniz veya yıllardır açmadığınız projelerin kalıntıları burada birikmeye devam eder.
Bu klasörü manuel silmek yerine, “Profile Switcher” veya “Cleaner” gibi VS Code eklentileri kullanarak kullanılmayan proje önbelleklerini temizlemek daha güvenli bir yöntemdir. Ancak manuel temizlik isterseniz:
# Dikkat: Bu işlem açık olan projelerin durum bilgisini (hangi dosyanın açık olduğu vb.) sıfırlayabilir.
rm -rf ~/.config/Code/User/workspaceStorage/*
3. Kalıcı Çözüm: Döküm Oluşturmayı Kısıtlamak
Sildikten sonra dosyaların tekrar birikmesini engellemek için, VS Code’un çökme raporlarını tamamen kapatabilir veya sınırlandırabilirsiniz.
Bunun için argv.json dosyasını düzenlemeniz gerekebilir (Komut Paleti: Preferences: Configure Runtime Arguments):
"enable-crash-reporter": false,
"crash-reporter-directory": "/tmp/vscode-crashes"
Not: Bu ayar bazı VS Code sürümlerinde deneysel olabilir ve tam desteklenmeyebilir.
Teknik Tablo: Normal vs. Sorunlu Kullanım
Aşağıdaki tablo, sağlıklı bir VS Code kurulumu ile “şişmiş” bir kurulum arasındaki farkları göstermektedir.
| Klasör Yolu | İçerik Türü | Normal Boyut | Sorunlu Boyut |
|---|---|---|---|
~/.config/Code/Crashpad | Hata Raporları | 5 MB – 50 MB | 10 GB – 200 GB+ |
~/.config/Code/User/workspaceStorage | Proje Önbelleği | 100 MB – 500 MB | 5 GB – 20 GB |
~/.config/Code/CachedData | Derlenmiş Kod Önbelleği | 200 MB – 1 GB | 2 GB – 5 GB |
~/.vscode/extensions | Eklenti Dosyaları | 500 MB – 2 GB | 2 GB – 5 GB |
Sıkça Sorulan Sorular
1. Crashpad klasörünü silersem eklentilerim veya ayarlarım gider mi?
Hayır. Crashpad sadece hata raporlarını tutar. Ayarlarınız User/settings.json dosyasında, eklentileriniz ise .vscode/extensions klasöründe saklanır. Bu işlem güvenlidir.
2. Bu sorun Windows veya macOS’ta yaşanır mı?
Nadir de olsa yaşanabilir ancak Linux dağıtımlarındaki dosya sistemi yapısı ve izin mekanizmaları nedeniyle en çok Linux kullanıcılarını etkilemektedir.
3. VS Code’u silip yeniden yüklemek sorunu çözer mi?
Kısmen. Eğer ~/.config/Code klasörünü manuel olarak silmezseniz, uygulamayı kaldırıp yükleseniz bile eski yapılandırma dosyaları (ve dolayısıyla şişmiş Crashpad klasörü) yerinde kalabilir. Tam temizlik için manuel silme şarttır.
4. Bu dosyaların birikmesini önleyen bir eklenti var mı?
Doğrudan Crashpad’i temizleyen resmi bir eklenti yoktur. Ancak “Clear Cache” gibi eklentiler önbellek dosyalarını yönetmenize yardımcı olabilir. En iyi yöntem ayda bir kez disk kullanımını kontrol etmektir.
5. Neden VS Code bu dosyaları otomatik silmiyor?
Bu, VS Code’un Linux çekirdeği ile etkileşimindeki bir hatadan (bug) kaynaklanmaktadır. Geliştirici ekibin (Microsoft) ilerleyen güncellemelerde bu dosyalar için bir “yaşam süresi” (TTL) veya boyut kotası getirmesi beklenmektedir.
Önemli Çıkarımlar
Visual Studio Code, modern yazılım geliştirmenin vazgeçilmez bir parçası olsa da, Linux sistemlerde “Crashpad” klasörü üzerinden sessizce disk alanınızı tüketebilir. Kullanıcıların düzenli olarak
~/.config/Codedizinini kontrol etmesi, gigabyte’larca alanı geri kazandırabilir ve sistem performansını artırabilir. Sorun, editörün kendisinden çok, hata raporlama sisteminin temizlik mekanizmasındaki bir eksiklikten kaynaklanmaktadır.
Bunları da Okuyun: