Tøm Homebrew-cachen på Mac: brew cleanup -s forklart
AskClean-teamet · Oppdatert 2026-11-02
Kjør brew cleanup -n før du endrer noe, og finn den aktive nedlastingscachen med brew --cache. Vanlig brew cleanup fjerner foreldede låsefiler, utdaterte nedlastinger og gamle installerte formelversjoner. Med -s (--scrub) går ryddingen lenger: Da slettes også nedlastinger av de nyeste versjonene fra cachen, for eksempel for pakker du har hentet, men aldri installert, eller som du senere har avinstallert. Nedlastinger for alt som fortsatt er installert, beholdes i begge tilfeller. brew cleanup --prune=all fjerner cachefiler uansett alder. Homebrew kan i tillegg kjøre autoremove automatisk hvis HOMEBREW_NO_AUTOREMOVE ikke er satt, så vurder ubrukte avhengigheter separat før du rydder.

Skill nedlastingscachen fra installerte verktøy og data
Homebrews nedlastingscache for bottles, kildearkiver og cask-nedlastinger ligger som standard i ~/Library/Caches/Homebrew, men HOMEBREW_CACHE kan endre plasseringen. Installerte formler ligger som versjonerte kegs i Cellar, casks i Caskroom, og aktive lenker under Homebrew-prefikset. Finn de faktiske plasseringene med brew --cache, brew --cellar, brew --caskroom og brew --prefix. Cellar, Caskroom, prefikset, Brewfile, konfigurasjonsfiler, tjenester, databaser, sertifikater og prosjektdata er ikke en cache som kan slettes samlet.
Forhåndsvis hver kandidat uten å endre noe
Mål den aktive cachen med du -sh "$(brew --cache)", og kjør HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n for å se utdaterte nedlastinger og gamle installerte formelversjoner uten automatisk avinstallasjon av ubrukte avhengigheter. Kontroller autoremove separat med brew autoremove --dry-run. Sammenlign viktige verktøy med brew list --versions, og undersøk om et skript eller en tilbakeføringsplan fortsatt trenger en gammel keg. En prøvekjøring er ingen sikkerhetskopi: Fjernede filer havner ikke nødvendigvis i Papirkurven, og samme versjon er kanskje ikke tilgjengelig senere.
- Kjør brew --cache, og mål den oppgitte nedlastingscachen med du -sh "$(brew --cache)".
- Kjør HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n og deretter brew autoremove --dry-run; kontroller hver foreslåtte nedlasting, gamle formelversjon og ubrukte avhengighet separat.
- Sammenlign nødvendige nåværende og gamle versjoner med brew list --versions, og kontroller nettverk, proxy og tilgjengelighet for senere nedlastinger.
- Bruk HOMEBREW_NO_AUTOREMOVE=1 brew cleanup til vanlig vedlikehold; legg til -s eller --prune=all bare etter den tilsvarende prøvekjøringen med -n og når du godtar kostnaden ved nye nedlastinger.
- Mål cachen på nytt, kjør HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n og brew list --versions, og test minst ett viktig Homebrew-verktøy.
En prøvekjøring er ikke en sikkerhetskopi. Bruk samme HOMEBREW_NO_AUTOREMOVE=1 både i prøvekjøringen og den faktiske cleanup-kommandoen, og husk at -s betyr --scrub – ikke «safe». En fjernet gammel keg eller direkte brukt avhengighet kan bryte en udokumentert tilbakeføringsplan eller et skript, og den nøyaktige versjonen kan være umulig å gjenopprette.
Velg den smaleste brew cleanup-kommandoen som er tilstrekkelig
Bruk HOMEBREW_NO_AUTOREMOVE=1 brew cleanup etter den kontrollerte prøvekjøringen til vanlig, aldersstyrt vedlikehold; som standard blir nedlastinger eldre enn 120 dager regnet som kandidater. -s (--scrub) rydder cachen bredere og tar med nedlastinger av de nyeste versjonene, men beholder nedlastinger for installerte formler og casks – se listen med HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n -s først. Skal alle cachefiler bort uansett alder, kjører du først HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n --prune=all og deretter samme kommando uten -n. Senere installasjoner, reinstallasjoner og kildebygg må laste ned bottles, arkiver og store installasjonsfiler på nytt. cleanup avinstallerer ikke gjeldende pakker, men kan fjerne gamle kegs og gjøre en nøyaktig tilbakeføring umulig. Gjelder det bare én pakke, bruker du kommandoene med navnet på formelen eller casken.
Vurder autoremove, brukerdata og resultat separat
brew autoremove er ikke cacheopprydding, men avinstallerer formler Homebrew mener ikke lenger trengs som avhengigheter. Homebrew kan kjøre autoremove automatisk fra brew cleanup og brew uninstall; bruk HOMEBREW_NO_AUTOREMOVE=1 når du vil holde beslutningene atskilt. Kontroller kandidater separat med brew autoremove --dry-run, siden egne skript kan bruke en formel utenfor Homebrews avhengighetsgraf. Ikke bruk rm -rf på prefikset, Cellar, Caskroom eller hele ~/Library/Caches. AskClean kan vise Homebrew-cachen som ett samlet element og sletter det permanent hvis du godkjenner det, men rører ikke gamle kegs i Cellar; pakkebevisste beslutninger om nedlastinger og gamle versjoner tar du med Homebrews egen prøvekjøring.
Slettingsgrenser og gjenopprettingskostnader
Forstå brew cleanup -s (--scrub), forhåndsvis hva som fjernes, rydd gamle nedlastinger og formelversjoner, og beskytt verktøyene og konfigurasjonen du bruker.
| Element eller handling | Kontroller med eller på | Konsekvens |
|---|---|---|
| Skill nedlastingscachen fra installerte verktøy og data | brew --cache | Homebrews nedlastingscache for bottles, kildearkiver og cask-nedlastinger ligger som standard i ~/Library/Caches/Homebrew, men HOMEBREW_CACHE kan endre plasseringen. |
| Forhåndsvis hver kandidat uten å endre noe | HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n | Mål den aktive cachen med du -sh "$(brew --cache)", og kjør HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n for å se utdaterte nedlastinger og gamle installerte formelversjoner uten automatisk avinstallasjon av ubrukte avhengigheter. |
| Velg den smaleste brew cleanup-kommandoen som er tilstrekkelig | HOMEBREW_NO_AUTOREMOVE=1 brew cleanup (eventuelt med -s eller --prune=all) | Bruk HOMEBREW_NO_AUTOREMOVE=1 brew cleanup etter den kontrollerte prøvekjøringen til vanlig, aldersstyrt vedlikehold; som standard blir nedlastinger eldre enn 120 dager regnet som kandidater. |
| Vurder autoremove, brukerdata og resultat separat | brew autoremove --dry-run (ikke cacheopprydding) | brew autoremove er ikke cacheopprydding, men avinstallerer formler Homebrew mener ikke lenger trengs som avhengigheter. |
Vanlige spørsmål
Er brew cleanup trygt å kjøre?
Det er en støttet Homebrew-kommando, men den fjerner både utdaterte nedlastinger og gamle installerte formelversjoner og kan kjøre autoremove automatisk. Forhåndsvis derfor med HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n, og vurder autoremove separat med brew autoremove --dry-run.
Hva gjør brew cleanup -s og --prune=all?
-s (--scrub) fjerner også nedlastinger av de nyeste versjonene fra cachen – for pakker som ikke er installert, for eksempel pakker du har hentet, men aldri installert, eller som du senere har avinstallert. Nedlastinger for formler og casks du fortsatt har installert, beholdes. --prune=all fjerner cachefiler uansett alder. Begge gjør i tillegg den vanlige ryddingen av foreldede låsefiler og gamle formelversjoner, så se den nøyaktige listen med brew cleanup -n -s eller brew cleanup -n --prune=all først, og regn med nye nedlastinger senere.
Er brew autoremove det samme som cacheopprydding?
Nei. brew autoremove avinstallerer formler Homebrew mener ikke lenger trengs som avhengigheter. Vurder kandidatene separat med brew autoremove --dry-run. Husk også at brew cleanup kan utløse autoremove automatisk hvis HOMEBREW_NO_AUTOREMOVE ikke er satt.
Kilder