Näin tyhjennät Homebrew-välimuistin ja poistat vanhat versiot Macissa
AskClean-tiimi · Päivitetty 2026-11-02
Esikatsele ennen muutoksia komennolla HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n. Tavallinen brew cleanup poistaa vanhentuneet lukkotiedostot ja lataukset sekä asennettujen formula-pakettien vanhat versiot, ja ellei HOMEBREW_NO_AUTOREMOVE ole asetettu, se poistaa myös riippuvuudet, joita mikään ei enää tarvitse. Valitsin -s eli --scrub menee pidemmälle: se poistaa välimuistista myös uusimpien versioiden lataukset, esimerkiksi sellaisten pakettien, jotka olet hakenut mutta jättänyt asentamatta tai jotka olet sittemmin poistanut. Edelleen asennettujen pakettien lataukset säilyvät joka tapauksessa. --prune=all poistaa välimuistitiedostot iästä riippumatta. Tarkista aktiivinen välimuistipolku komennolla brew --cache.

Erota latausvälimuisti asennetuista työkaluista
Homebrew säilyttää bottle-tiedostot, lähdearkistot ja cask-lataukset tavallisesti polussa ~/Library/Caches/Homebrew; HOMEBREW_CACHE voi muuttaa sijaintia. Asennetut formula-paketit ovat versiokansioina Cellarissa, cask-paketit Caskroomissa ja aktiiviset linkit Homebrewin prefix-hakemistossa. Etsi oikeat sijainnit komennoilla brew --cache, brew --cellar, brew --caskroom ja brew --prefix. Cellar, Caskroom, prefix, Brewfile, asetustiedostot, palvelut, tietokannat ja projektitiedostot eivät ole yleistä välimuistia.
Esikatsele jokainen ehdokas muuttamatta mitään
Mittaa aktiivinen välimuisti komennolla du -sh "$(brew --cache)" ja esikatsele cleanup ilman riippuvuuksien automaattista poistamista komennolla HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n. Esikatselu näyttää sekä vanhentuneet lataukset että asennettujen formula-pakettien aiemmat versiot. Suorita lisäksi brew autoremove --dry-run erillisenä tarkistuksena. Vertaa tärkeiden työkalujen versioita komennolla brew list --versions ja tarkista, tarvitseeko jokin skripti tai palautussuunnitelma vanhaa versiota. Esikatselu ei ole varmuuskopio: varsinaisen siivouksen jälkeen tiedostot eivät välttämättä ole roskakorissa eikä täsmällistä versiota ehkä enää saa lähteestä.
- Suorita brew --cache ja mittaa sen ilmoittama latausvälimuisti komennolla du -sh "$(brew --cache)".
- Suorita HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n ja sen jälkeen brew autoremove --dry-run; tarkista jokainen ehdotettu lataus, formula-paketin vanha versio ja käyttämätön riippuvuus.
- Vertaa tarvittavia nykyisiä ja vanhoja versioita komennolla brew list --versions ja tarkista verkon, välityspalvelimen sekä lähteiden saatavuus myöhempiä latauksia varten.
- Käytä tavalliseen ylläpitoon komentoa HOMEBREW_NO_AUTOREMOVE=1 brew cleanup tai suorita vastaavan --prune=all-esikatselun jälkeen sama komento ilman -n-valitsinta, jos haluat poistaa välimuistin ikärajasta riippumatta.
- Mittaa välimuisti uudelleen, suorita brew cleanup -n ja brew list --versions ja testaa vähintään yksi tärkeä Homebrew-työkalu.
Esikatselu ei ole varmuuskopio. Käytä samaa HOMEBREW_NO_AUTOREMOVE=1-asetusta esikatselussa ja varsinaisessa cleanup-suorituksessa. Poistettu vanha versio tai suoraan skriptistä käytetty riippuvuus voi rikkoa dokumentoimattoman palautusmenettelyn tai skriptin, eikä täsmällistä versiota ehkä voi enää palauttaa.
Valitse suppein riittävä brew cleanup -komento
Käytä tarkistuksen jälkeen komentoa HOMEBREW_NO_AUTOREMOVE=1 brew cleanup tavalliseen, nykyisin 120 päivän ikärajaan perustuvaan ylläpitoon ilman käyttämättömien riippuvuuksien automaattista poistamista. Jos haluat kaikki välimuistitiedostot pois iästä riippumatta, suorita ensin HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n --prune=all ja vasta sitten sama komento ilman -n-valitsinta. Valitsin -s (--scrub) laajentaa siivouksen myös tuoreisiin, uusimpien versioiden latauksiin mutta säilyttää asennettujen pakettien lataukset; se ei tarkoita ”turvallista” eikä koko välimuistin tyhjentämistä, ja --prune=all muuttaa eri asiaa eli ikärajaa. Esikatsele tarkka yhdistelmä, esimerkiksi brew cleanup -n -s. Tulevat asennukset, uudelleenasennukset ja lähdekäännökset joutuvat lataamaan bottle-tiedostot, arkistot ja suuret asentimet uudelleen. cleanup ei yleisesti poista nykyisiä paketteja, mutta se voi poistaa vanhoja versioita ja tehdä täsmällisestä palautuksesta mahdottoman.
Käsittele autoremove, käyttäjän data ja tarkistus erikseen
brew autoremove ei ole välimuistin tyhjennystä, vaan poistaa formula-paketteja, joita Homebrew ei enää pidä tarvittuina riippuvuuksina. Homebrew voi kutsua autoremovea automaattisesti komennoista brew cleanup ja brew uninstall; aseta suoritukselle HOMEBREW_NO_AUTOREMOVE=1, kun haluat arvioida riippuvuuksien poistamisen erikseen. Esikatsele ehdokkaat komennolla brew autoremove --dry-run, sillä oma skripti voi käyttää tällaista työkalua Homebrewin riippuvuusgraafin ulkopuolella. Mittaa siivouksen jälkeen välimuisti uudelleen, suorita brew cleanup -n ja brew list --versions ja testaa tärkeät komennot. AskClean voi näyttää Homebrew-välimuistin yhtenä tarkistettavana kohteena ja poistaa sen hyväksynnästäsi pysyvästi kokonaisena; Cellarin vanhoihin versioihin se ei koske. Pakettitietoiset päätökset latauksista ja vanhoista versioista tehdään Homebrewin omalla esikatselulla.
Poiston rajat ja palauttamisen kustannukset
Selvitä, mitä brew cleanup -s (--scrub) poistaa, esikatsele muutokset, siivoa vanhat lataukset ja formula-versiot ja suojaa nykyiset työkalut ja asetukset.
| Kohde tai toiminto | Tarkistuspaikka tai -komento | Seuraus |
|---|---|---|
| Erota latausvälimuisti asennetuista työkaluista | brew --cache | Homebrew säilyttää bottle-tiedostot, lähdearkistot ja cask-lataukset tavallisesti polussa ~/Library/Caches/Homebrew; HOMEBREW_CACHE voi muuttaa sijaintia. |
| Esikatsele jokainen ehdokas muuttamatta mitään | HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n | Mittaa aktiivinen välimuisti komennolla du -sh "$(brew --cache)" ja esikatsele cleanup ilman riippuvuuksien automaattista poistamista komennolla HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n. |
| Valitse suppein riittävä brew cleanup -komento | HOMEBREW_NO_AUTOREMOVE=1 brew cleanup / HOMEBREW_NO_AUTOREMOVE=1 brew cleanup --prune=all | Käytä tarkistuksen jälkeen komentoa HOMEBREW_NO_AUTOREMOVE=1 brew cleanup tavalliseen, nykyisin 120 päivän ikärajaan perustuvaan ylläpitoon ilman käyttämättömien riippuvuuksien automaattista poistamista. |
| Käsittele autoremove, käyttäjän data ja tarkistus erikseen | brew autoremove --dry-run (asennuksen poisto, ei välimuistin tyhjennys) | brew autoremove ei ole välimuistin tyhjennystä, vaan poistaa formula-paketteja, joita Homebrew ei enää pidä tarvittuina riippuvuuksina. |
UKK
Onko brew cleanup turvallinen Macissa?
Se on tuettu Homebrew-komento, mutta vanhentuneiden latausten lisäksi se poistaa asennettujen formula-pakettien aiempia versioita ja voi käynnistää autoremoven automaattisesti. Esikatsele siksi ensin komennolla HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n ja tarkista autoremove erikseen komennolla brew autoremove --dry-run.
Mitä brew cleanup -s ja brew cleanup --prune=all poistavat?
-s eli --scrub poistaa välimuistista myös asentamattomien pakettien uusimpien versioiden lataukset – esimerkiksi sellaisten pakettien, jotka olet hakenut mutta jättänyt asentamatta tai jotka olet sittemmin poistanut. Edelleen asennettujen formula- ja cask-pakettien lataukset säilyvät. --prune=all poistaa välimuistitiedostot iästä riippumatta. Kumpikin tekee lisäksi tavallisen cleanupin, joka voi poistaa vanhentuneita lukkotiedostoja ja formula-pakettien vanhoja versioita. Esikatsele komennoilla brew cleanup -n -s ja HOMEBREW_NO_AUTOREMOVE=1 brew cleanup -n --prune=all.
Kannattaako seuraavaksi suorittaa brew autoremove?
Ei rutiinina. brew autoremove poistaa riippuvuuksina asennettuja formula-paketteja eikä tyhjennä latausvälimuistia. Arvioi tämä erillinen päätös ensin komennolla brew autoremove --dry-run. Muista myös, että brew cleanup voi kutsua autoremovea, ellei HOMEBREW_NO_AUTOREMOVE ole asetettu.
Lähteet