Troubleshooting Slow Ollama Pulls: DNS, Proxy, TLS, Disk, and Cache Recovery

Diagnose slow Ollama model downloads, TLS timeouts, unexpected EOF errors, low disk space, and proxy certificate issues from logs, with safe recovery steps.

When ollama pull is slow, do not start by hunting for a model blob URL. Manifests, layers, and object-storage addresses change; copying an old direct link is unreliable and may bypass Ollama’s integrity checks.

A more reliable approach is to identify which layer is slow: the Ollama service, DNS, HTTPS proxy, certificates, object-storage routing, disk I/O, or a corrupted partial download.

Record the version and exact error first

1
2
3
ollama --version
ollama list
ollama pull qwen3:4b

Don’t just record “very slow.” At least keep the original text, time of occurrence, model name, system and Ollama version. Common phenomena tend in different directions:

phenomena Priority check
TLS handshake timeout DNS, proxy, certificates, packet loss
unexpected EOF Connection interrupted, proxy reset, disk or cache
context deadline exceeded Server connectivity, proxy timeout, network quality
no space left on device Model directory on disk
Always stopping at DNS, registry access or proxy
Redraw after download is finished Cache directory privileges, file damage, model directory changes

Confirm that the Ollama service is healthy

First test the local API, instead of directly blaming all the problems on the Internet:

1
Invoke-RestMethod -Uri 'http://127.0.0.1:11434/api/version'

If no local API can access it, restart Ollama and view the service log. Windows log directory:

1
explorer "$env:LOCALAPPDATA\Ollama"

Models and configurations are usually:

1
explorer "$env:USERPROFILE\.ollama"

Linux Standard Installation View Log:

1
2
sudo systemctl status ollama
journalctl -u ollama --no-pager --follow --pager-end

Docker:

1
2
docker ps
docker logs --tail 200 <container-name>

Open Debug Log

Windows exits Ollama completely from the tray and starts debugging mode from PowerShell:

1
2
$env:OLLAMA_DEBUG = '1'
& 'ollama app.exe'

If the current installation path cannot be found directly ollama app.exeYes. %LOCALAPPDATA%\Programs\Ollama . Read it again after downloading server.log is the target host, status code and retrying information.

Linux system could add temporary interim:

1
sudo systemctl edit ollama

Writing:

1
2
[Service]
Environment="OLLAMA_DEBUG=1"

Then implement:

1
2
3
sudo systemctl daemon-reload
sudo systemctl restart ollama
journalctl -u ollama --no-pager --follow

Check DNS and HTTPS

Windows:

1
2
3
Resolve-DnsName registry.ollama.ai
Test-NetConnection registry.ollama.ai -Port 443
curl.exe -I https://registry.ollama.ai/v2/

Linux:

1
2
getent hosts registry.ollama.ai
curl -I -v https://registry.ollama.ai/v2/

Back 401 Unauthorized Not necessarily a malfunction, it means at least that DNS, TCP and TLS are out of hand; the real need is to focus on the failure of the parse, connection timeout, certificate validation failure or proxy return of the HTML error page.

If only a certain network environment fails, mobile phone hot spots can be contrasted once. The success of the hot spots and the failure of the original network suggest that the problem is more likely to be located in local gateways, DNS, agency or operator links than in models themselves.

Configure the proxy correctly

For model downloads, Ollama recommends configuring HTTPS_PROXY. Avoid setting HTTP_PROXY without a specific need, because Ollama’s local API uses HTTP and an incorrect setting can interfere with client connections.

Current PowerShell session test:

1
2
$env:HTTPS_PROXY = 'http://127.0.0.1:7890'
ollama pull qwen3:4b

Once it’s confirmed. HTTPS_PROXY Writes the Windows user environment variable and completely exits and restarts Ollama. Desktop application does not automatically inherit environment variables modified after startup.

Linux system:

1
2
[Service]
Environment="HTTPS_PROXY=http://127.0.0.1:7890"

Docker:

1
2
3
4
5
6
docker run -d \
  --name ollama \
  -e HTTPS_PROXY=http://proxy.example.com:8080 \
  -p 11434:11434 \
  -v ollama:/root/.ollama \
  ollama/ollama

How to handle TLS certificate errors

Corporate proxies may reissue HTTPS certificates. If you see certificate signed by unknown authority, install the corporate CA in the operating system or container trust store; do not disable certificate verification.

Example of packaging:

1
2
3
FROM ollama/ollama
COPY company-ca.pem /usr/local/share/ca-certificates/company-ca.crt
RUN update-ca-certificates

Do not download the so-called General Certificate from untrustworthy websites, nor upload the API Key, proxy password or complete log publicly.

Check model directories and disks

Official default model position:

  • Windows:%USERPROFILE%\.ollama\models
  • MacOS:~/.ollama/models
  • Linux Standard Service:/usr/share/ollama/.ollama/models

Windows check space:

1
2
Get-PSDrive -PSProvider FileSystem
Get-ChildItem -LiteralPath "$env:USERPROFILE\.ollama\models" -Force

Linux:

1
2
df -h
sudo du -sh /usr/share/ollama/.ollama/models

If used OLLAMA_MODELS Changed location to confirm that the account that runs Ollama has read and write permissions. Linux standard services are usually provided by ollama User runs:

1
sudo chown -R ollama:ollama /path/to/models

How to recover after interruption

Try the same model directly:

1
ollama pull qwen3:4b

Ollama will continue on the basis of what is available. Do not remove batch while running the service blobs, and do not insert the blob file found online directly into the cache.

If repeated verifications on the same level fail:

  1. Stop Ollama.
  2. A list of backup model directories.
  3. From the log to determine which one failed.
  4. Only the corresponding incomplete or damaged files are removed.
  5. Restart Ollama and run ollama pull again.

When the target is uncertain, it is preferable to move the suspect file to a temporary directory rather than simply delete the entire model library.

Verify the completed download

1
2
3
ollama list
ollama show qwen3:4b
ollama run qwen3:4b "Reply with OK only"

Checking logs for non-recycling for re-testing, verification failure or disk error. The speed of downloading does not mean that the problem is solved; it can be pulled and rebooted and loaded before passing.

What should we collect when it’s still slow?

  • Ollama version and operating system.
  • Model name and approximate size.
  • Error occurs when the wrong text is complete.
  • Whether a proxy, VPN, Docker, or a corporate certificate is involved.
  • registry.ollama.ai:443 The results of the connectivity.
  • Post-sensitization service log clips.
  • The remaining space in the model catalogue.

This information is sufficient to distinguish between client issues, network links and upstream service issues, and is more easily re-emerged than sharing off-the-shelf downloads.

References: