Bytesweep › Blog › Local AI models

Local AI models

Ollama’s model store, and how to move it off your boot drive

A single 70-billion-parameter model in a four-bit quantisation is about 40 GB. Pull three of them while trying to decide which is best and you have spent 120 GB, in a directory that no mainstream disk cleaner has heard of and that the macOS storage bar files under System Data. Ollama makes pulling models so easy that this happens to almost everyone who uses it for more than a week.

By Faheen Ahmed · Published 25 September 2026 · Last updated 25 September 2026 · 3 min read · Part of Where AI models are stored

The paths

PlatformModel store
macOS~/.ollama/models
Linux, user install~/.ollama/models
Linux, systemd service/usr/share/ollama/.ollama/models
WindowsC:\Users\<you>\.ollama\models

The Linux distinction matters and catches people out. If you installed via the official script, Ollama runs as its own ollama system user and the models are under /usr/share/ollama, not in your home directory — which is why du on your home folder shows nothing while the root file system fills up.

du -sh ~/.ollama/models /usr/share/ollama/.ollama/models 2>/dev/null

What is inside

Two directories, and understanding the split is what makes safe cleanup possible.

  • models/blobs — the actual weights, as content-addressed files named sha256-<hash>. This is essentially all of the size.
  • models/manifests — small JSON files, one per model tag, listing the blobs that tag is made of.

Because blobs are content-addressed, two models that share a layer share the file. That is why ollama list can show 200 GB of models on a 120 GB directory: the sizes it reports are per model, and shared layers are counted more than once.

ollama list
du -sh ~/.ollama/models/blobs

Trust the du figure for how much disk you are using and the ollama list figure for how large each model is.

Removing models properly

Always through Ollama, never by deleting blobs:

ollama rm llama3.1:70b

That removes the manifest and then any blob no longer referenced by another manifest. Deleting a blob by hand leaves a manifest pointing at a file that is gone, and the failure appears later as a model that will not load with an error about a missing layer.

If you have already done that, the repair is to remove the affected manifest and pull again. There is no fsck for the store.

Deleting a model you pulled is a re-download. Deleting a model you created yourself with a Modelfile, or one you fine-tuned, is permanent — nothing upstream has a copy. Check ollama list for tags that are not on any registry before a clear-out.

Moving the store somewhere else

The supported mechanism is the OLLAMA_MODELS environment variable. On macOS with the desktop application, set it for the launch agent so the app sees it rather than only your shell:

launchctl setenv OLLAMA_MODELS /Volumes/External/ollama

Then quit Ollama from the menu bar and start it again. Move the existing directory across first, or you will start from an empty store:

mv ~/.ollama/models /Volumes/External/ollama

On Linux with the systemd service, the variable belongs in the unit rather than in your profile:

sudo systemctl edit ollama
# [Service]
# Environment="OLLAMA_MODELS=/mnt/models"
sudo systemctl restart ollama

An external SSD over Thunderbolt is fine for inference — the weights are read once at load time, and a model that loads in four seconds instead of two is not a meaningful regression. A spinning disk or a network share is not; loading a 40 GB model over a network is measured in minutes. The general case, including the other tools' stores, is in moving model stores to an external drive.

The stores you will find next to it

Ollama is rarely alone. On a machine doing any local AI work, check these at the same time, because the same weights are often present three times in three formats:

du -sh ~/.ollama ~/.cache/huggingface ~/.cache/lm-studio \
       ~/Library/Application\ Support/LM\ Studio 2>/dev/null

LM Studio’s model folder and the Hugging Face cache each have their own conventions, and the Hugging Face one in particular is notorious for keeping revisions you no longer use.

Questions

Does deleting a model free the space immediately?

Yes, once ollama rm has removed the unreferenced blobs. If the model was loaded at the time, the space returns when the runner process exits, which is within a few minutes of idle by default.

Why is my model directory bigger than the sum of the models?

Usually a partial download from an interrupted pull, or blobs orphaned by hand-deleting manifests. Compare the blobs directory against what the manifests reference before assuming it is normal.

Can two machines share one model store over a network?

It works for a read-only mount and one writer, but concurrent pulls from two machines into one store will corrupt manifests. Treat it as a single-writer store.

Is a quantised model worth the space saved?

Usually, and the trade-off is not linear — see what quantisation does to disk size and quality. A four-bit quantisation of a larger model is commonly better than an eight-bit one of a smaller model at the same size on disk.

See all of this on your own disk

Every path on this page is one Bytesweep already knows by name. It measures the whole disk in about ten seconds, shows what is safe and what is not before you touch it, and moves everything it removes to a restore point you can undo for seven days.