codecamp

安装 Ollama

Ollama 是一个把开源大模型跑在你自己电脑上的轻量级框架。动手调用模型之前,先要在本机装好 Ollama 并确认它的后台服务能正常启动。本节按 macOS / Windows / Linux 三平台给出安装方式与验证命令,全部以官方文档(docs.ollama.com,版本基线 v0.40.12)为准。

一、各平台安装方式

macOS

## 方式一:到 https://ollama.com/download 下载 Ollama.dmg,拖入「应用程序」
## 方式二(已装 Homebrew):用 brew 安装
brew install --cask ollama

安装完成后在「启动台」打开 Ollama,菜单栏会出现 Ollama 图标,后台服务随应用启动。

Windows

## 到 https://ollama.com/download 下载 OllamaSetup.exe,双击按向导安装
## 安装后 Ollama 会注册为后台服务并自动启动;也可从开始菜单打开 Ollama 应用

PowerShell 中验证(需新开一个终端窗口使 PATH 生效):
powershell
ollama --version

Linux

## 官方一键安装脚本(会配置 systemd 服务并设为开机自启)
curl -fsSL https://ollama.com/install.sh | sh

国内网络访问 ollama.com 下载可能偏慢,可配置代理后重试;脚本只需联网这一次。

二、验证安装与服务

装好后在终端运行版本命令,能输出版本号即说明命令行已就位:

## 查看 Ollama 版本(基线 v0.40.12,你的版本号可能更高)
ollama --version

确认后台服务是否运行:

## 查看当前正在运行的模型;若服务未起会报错,可手动启动
ollama ps

  • macOS / Windows:直接打开 Ollama 应用即可启动后台服务。
  • Linux:安装脚本已配置 systemd,可用下面命令管理:

## 启动 / 停止 / 查看状态(Linux systemd)
sudo systemctl start ollama
sudo systemctl stop ollama
systemctl status ollama

若需要在不打开桌面应用的情况下手动拉起服务(例如服务器场景),可运行:

## 手动启动 Ollama 服务(默认监听 http://localhost:11434)
ollama serve

三、国内下载与代理提示

  • 模型权重从 ollama.com 下载。国内网络偶尔较慢属正常,耐心等待即可,终端会显示下载进度。
  • 如长期下载不畅,可为终端配置代理后再运行 ollama run / ollama pull。
  • 不要从非官方镜像下载安装包;版本以 GitHub release(当前 v0.40.12)为交叉核对基准。

四、失败处理

  • ollama: command not found:命令行未找到 Ollama。macOS/Windows 重开终端或重新安装;Linux 确认安装脚本执行成功且已加入 PATH。
  • 服务起不来(Linux):检查 systemctl status ollama 日志,常见原因是端口被占用或权限不足;用 ollama serve 看前台报错。
  • 版本过旧:运行 ollama --version 后到官方下载页升级;本教程示例以 v0.40.12 为基线,新版本命令可能略有差异。

五、动手试

  1. 在你的系统上完成安装,运行 ollama --version 确认有版本输出。
  2. 打开 Ollama 应用(或 Linux 上 systemctl start ollama),运行 ollama ps 确认服务已起。
  3. 下一节(1.2 Ollama 运行你的第一个模型)将带你跑起第一个模型并对话。
Ollama 运行你的第一个模型
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Ollama Cloud

Ollama CLI 命令行参考

Ollama Modelfile 参考

Ollama 上下文长度

Ollama 导入自定义模型

Ollama 常见问题

Ollama 硬件支持

Ollama 故障排查

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }