Mac’te Homebrew Önbelleği ve Eski Sürümler Nasıl Temizlenir?
AskClean Ekibi · Güncellendi 2026-11-02
Herhangi bir şeyi değiştirmeden önce brew cleanup -n çalıştırın. Normal bir cleanup eski kilit dosyalarını, güncelliğini yitirmiş indirmeleri ve formula’ların eski sürümlerini kaldırır. -s (--scrub) seçeneği bir adım daha ileri gider: En son sürümlerin önbellekteki indirmelerini de siler; örneğin indirip hiç kurmadığınız ya da sonradan kaldırdığınız paketlerinkini. Hâlâ kurulu olan her şeyin indirmeleri her iki durumda da korunur. Etkin önbellek konumunu brew --cache ile doğrulayın.

İndirme önbelleğini eski keg’lerden ve güncel araçlardan ayırın
Homebrew bottle, kaynak arşivi ve cask indirmelerini varsayılan olarak ~/Library/Caches/Homebrew altında tutar; HOMEBREW_CACHE bu konumu değiştirebilir. Kurulu formula’ların sürümlü keg’leri Cellar’da, cask’ler Caskroom’da, etkin bağlantılar da Homebrew prefix’i altında bulunur. Gerçek konumları brew --cache, brew --cellar, brew --caskroom ve brew --prefix ile bulun. Cellar, Caskroom, prefix, Brewfile, dotfile’lar, servisler, veritabanları ve proje dosyaları topluca silinebilecek önbellek değildir.
Her adayı önizlemeyle denetleyin
Etkin önbelleği du -sh "$(brew --cache)" ile ölçün ve brew cleanup -n çalıştırın. Önizleme eski indirmeleri, kurulu formula’ların önceki sürümlerini ve “Would autoremove” başlığı altında kaldırılacak bağımlılıkları gösterir. Önemli araçları brew list --versions çıktısıyla karşılaştırın; betiklerinizin veya geri dönüş planınızın eski bir keg’e ihtiyaç duyup duymadığını denetleyin. Önizleme yedek değildir: gerçek temizlikten sonra dosyaları Çöp Sepeti’nde bulacağınızı ve aynı eski sürümün ileride indirilebilir kalacağını varsaymayın.
- brew --cache çalıştırın ve dönen indirme önbelleğini du -sh "$(brew --cache)" ile ölçün.
- brew cleanup -n çalıştırıp önerilen her indirmeyi, eski formula sürümünü ve “Would autoremove” adayını inceleyin.
- Gerekli güncel ve eski sürümleri brew list --versions ile karşılaştırın; sonraki indirmeler için ağ, proxy ve kaynak erişimini doğrulayın.
- Olağan bakım için brew cleanup kullanın; daha geniş bir temizlik için önce brew cleanup -n -s veya brew cleanup -n --prune=all ile önizleyip ardından aynı komutu -n olmadan çalıştırın.
- Önbelleği yeniden ölçün, brew cleanup -n ve brew list --versions çalıştırın ve en az bir önemli Homebrew aracını sınayın.
brew cleanup -n yalnızca önizlemedir. Silinen eski bir keg, belgelenmemiş bir geri dönüş yolunu veya betiği bozabilir ve daha sonra aynı biçimde yeniden kurulamayabilir.
Amaca uyan en dar cleanup komutunu seçin
Denetlediğiniz önizlemeden sonra olağan, yaşa bağlı bakım için brew cleanup kullanın. -s (--scrub), kurulu olmayan paketlerin (indirilip hiç kurulmamış ya da sonradan kaldırılmış olanların) en son sürüm indirmelerini de temizliğe katar; hâlâ kurulu formula ve cask’lerin indirmeleri korunur. Önce brew cleanup -n -s ile önizleyin. Yaşı ne olursa olsun tüm önbellek dosyalarını kaldırmak istiyorsanız önce brew cleanup -n --prune=all, ardından bilinçli olarak brew cleanup --prune=all çalıştırın. Sonraki kurulum, yeniden kurulum veya kaynaktan derleme bottle’ların, arşivlerin ve büyük yükleyicilerin yeniden indirilmesini gerektirir. cleanup tüm güncel paketleri kaldırmaz; yine de eski keg’leri silebilir ve birebir geri dönüşü zorlaştırabilir.
autoremove’u, kullanıcı verilerini ve sonucu ayrı değerlendirin
brew autoremove önbellek temizliği değildir; Homebrew’un artık gerekmeyen bağımlılık saydığı formula’ları kaldırır. Paket adı verilmeden çalıştırılan brew cleanup da HOMEBREW_NO_AUTOREMOVE ayarlı değilse aynı kaldırmayı yapar. Kendi betikleriniz bu araçları doğrudan kullanıyor olabileceği için bu kararı brew autoremove --dry-run ile ayrıca denetleyin; bağımlılıkların kurulu kalmasını istiyorsanız temizlikten önce HOMEBREW_NO_AUTOREMOVE değişkenini ayarlayın. cleanup sonrasında önbelleği tekrar ölçün, brew cleanup -n ve brew list --versions çalıştırıp önemli komutları başlatın. AskClean, boyut eşiğini aşan Homebrew önbelleğini bir bütün olarak gösterebilir ve onaylarsanız kalıcı olarak siler; paket bazındaki adaylar ve eski keg’ler için belirleyici olan Homebrew’un kendi dry run çıktısıdır.
Silme sınırları ve kurtarma maliyetleri
Homebrew önbelleğini brew cleanup ile temizleyin: -s (--scrub) ve --prune=all seçeneklerinin neyi sildiğini önizleyin, güncel araçları ve ayarları koruyun.
| Öğe veya işlem | Nerede ya da neyle denetlenir | Sonuç |
|---|---|---|
| İndirme önbelleğini eski keg’lerden ve güncel araçlardan ayırın | brew --cache | Homebrew bottle, kaynak arşivi ve cask indirmelerini varsayılan olarak ~/Library/Caches/Homebrew altında tutar; HOMEBREW_CACHE bu konumu değiştirebilir. |
| Her adayı önizlemeyle denetleyin | brew cleanup -n | Etkin önbelleği du -sh "$(brew --cache)" ile ölçün ve brew cleanup -n çalıştırın. |
| Amaca uyan en dar cleanup komutunu seçin | brew cleanup / brew cleanup -s / brew cleanup --prune=all | Denetlediğiniz önizlemeden sonra olağan, yaşa bağlı bakım için brew cleanup kullanın. |
| autoremove’u, kullanıcı verilerini ve sonucu ayrı değerlendirin | brew autoremove --dry-run (önbellek temizliği değildir) | brew autoremove önbellek temizliği değildir; Homebrew’un artık gerekmeyen bağımlılık saydığı formula’ları kaldırır. |
SSS
Mac’te brew cleanup çalıştırmak güvenli mi?
Desteklenen bir Homebrew bakım komutudur; ama önce brew cleanup -n ile önizleyin. Eski indirmelerin yanında kurulu formula’ların önceki sürümlerini ve HOMEBREW_NO_AUTOREMOVE ayarlı değilse artık hiçbir şeyin ihtiyaç duymadığı bağımlılıkları da kaldırır; bu yüzden hiçbir iş akışınızın eski bir keg’e veya listelenen bir bağımlılığa dayanmadığından emin olun.
brew cleanup -s ne anlama gelir?
-s, --scrub demektir; “safe” (güvenli) ya da “her şeyi sil” anlamına gelmez. Kurulu olmayan paketlerin, yani indirip hiç kurmadığınız ya da sonradan kaldırdığınız paketlerin en son sürümlerine ait önbellekteki indirmeleri de temizler. Hâlâ kurulu formula ve cask’lerin indirmeleri korunur. Gerçek adayları önce brew cleanup -n -s ile görün. --prune=all ise yaş sınırını kaldırır; onu da brew cleanup -n --prune=all ile önizleyin.
Ardından brew autoremove çalıştırmalı mıyım?
Çoğu zaman gerek yoktur: HOMEBREW_NO_AUTOREMOVE ayarlı değilse genel bir brew cleanup aynı kaldırmayı zaten yapar. Ayrıca çalıştıracaksanız önce brew autoremove --dry-run ile bakın. autoremove, Homebrew’un artık gerekmeyen bağımlılık saydığı formula’ları kaldırır; indirme önbelleğini temizlemez ve betiklerinizin doğrudan kullandığı bir aracı silebilir.
Kaynaklar