最近在做优化的时候涉及到了这块内容,觉得值得写下来,方便以后翻阅。
🎬 个人主页:艾莉丝努力练剑
❄专栏传送门:《C语言》《数据结构与算法》《C/C++干货分享&学习过程记录》
《Linux操作系统编程详解》《笔试/面试常用算法:从基础到进阶》《Python干货分享》
⭐️为天地立心,为生民立命,为往圣继绝学,为万世开太平
🎬 艾莉丝的简介:
文章目录
2 ~> Ubuntu 环境下 Ollama 安装与运维 2.2 服务运行机制 2.3 核心命令集 2.4 本地模型存储结构 3 ~> Windows 环境下 Ollama 安装与运维 3.2 交互方式 3.3 图形化设置项详解- 3.3.1 Expose Ollama to the network(网络暴露)
- 3.3.2 Model location(模型存储位置)
- 3.3.3 Context length(上下文长度)
- 3.3.4 Airplane mode(飞行模式)
- 3.3.5 Reset to defaults
1 ~> Ollama 基础认知
1.1 核心定位
Ollama 是一款跨平台的本地大语言模型运行与管理工具,可将本地部署的大模型封装为标准化推理服务,支持命令行、图形界面、HTTP API 三类交互方式,实现大模型的本地化离线运行、全生命周期管理与二次集成。
1.2 跨平台特性
- 原生支持 Linux(Ubuntu 等发行版)、Windows、macOS 三大主流操作系统
- 核心命令、模型目录结构、环境变量规范在全平台完全通用
- 不同平台仅在安装方式、服务管理机制、原生交互入口上存在差异
2 ~> Ubuntu 环境下 Ollama 安装与运维
2.1 安装部署
2.1.1 一键脚本安装
官方给出标准化一键安装脚本,在终端执行以下命令即可完成全自动化安装:
curl -fsSL https://ollama.com/install.sh | sh
安装完成后,Ollama 服务将自动以守护进程形式在后台启动。
2.1.2 版本校验
安装完成后执行以下命令验证安装状态与版本:
ollama -v
示例输出:ollama version is 0.11.8
2.2 服务运行机制
2.2.1 进程管理模式
- 前台启动:执行
ollama server启动前台进程,终端关闭后进程随即终止,仅适用于临时调试场景 - 后台服务管理:生产环境推荐使用 systemd 管理服务,终端关闭后服务可持续后台运行;可通过以下命令查看进程:
ps -ef | grep ollama
2.2.2 端口与监听规则
- Ollama 服务默认监听本地回环地址
127.0.0.1的11434端口 - 可通过 netstat 命令验证端口监听状态:
sudo netstat -tuln -p | grep 11434
- 默认配置下仅本机可访问服务,修改监听地址后可支持局域网内其他设备访问
- 本地 API 统一调用端点:
http://127.0.0.1:11434
2.3 核心命令集
所有模型操作命令均需指定完整模型标识(名称 + 标签,如 deepseek-r1:1.5b)。
2.3.1 模型生命周期管理
命令功能描述ollama pull <模型名>从 Ollama 官方模型库拉取指定模型到本地存储ollama list列出本地所有已下载模型的标识、ID、体积、修改时间ollama rm <模型名>删除本地指定的模型文件与关联清单ollama show <模型名>显示指定模型的详细元数据与配置参数
2.3.2 运行与会话管理
命令功能描述ollama run <模型名>加载并运行指定模型,进入交互式对话终端;若模型未下载则自动触发拉取ollama ps列出当前处于运行状态的模型进程ollama stop <模型名>停止指定的运行中模型,释放内存资源ollama help查看任意命令的详细帮助说明
2.3.3 交互式终端内置指令
在 ollama run 进入的对话终端中,支持以下控制指令:
/show:查看会话变量与模型元信息/load:切换加载指定模型/save:保存当前会话状态/clear:清空当前会话上下文/bye:退出交互式终端/?:查看完整快捷键帮助
2.4 本地模型存储结构
模型文件默认存储在 ~/.ollama/ 目录下,核心分为两级子目录,结构设计遵循镜像分层理念。
2.4.1 blobs 目录
- 存储模型的实际权重二进制数据文件
- 文件命名格式为
sha256-,通过哈希校验保证文件唯一性,实现跨模型去重 - 模型参数量越大,对应 blob 文件占用磁盘空间越高
2.4.2 manifests 目录
- 存储模型的清单描述文件,标准 JSON 格式
- 内容包含模型元数据(名称、版本、描述)、依赖关系、运行参数配置
- 记录各分层文件(模型权重、提示模板、许可证、运行参数)的哈希值与字节大小
- 典型 manifest 结构示例:
{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"config": {
"mediaType": "application/vnd.docker.container.image.v1+json",
"digest": "sha256:a85fe2a2e58e2426116d3686ddc1a6ea586c40c1e68469976aa730be6c1fa01",
"size": 487
},
"layers": [
{
"mediaType": "application/vnd.ollama.image.model",
"digest": "sha256:aabd4debfc8f881923f2c25fcfdeed24435271c2b3e92c4af367040dbc",
"size": 1117320512
},
{
"mediaType": "application/vnd.ollama.image.template",
"digest": "sha256:c5ad996bdaeeddf6e3b65a986967624851ac2829d22fd5e2ccc1121d3",
"size": 556
},
{
"mediaType": "application/vnd.ollama.image.license",
"digest": "sha256:e4c38e1172f42fdbff13edf9a7a17679fb82bfde415a3e8b3c31ced4a4e4",
"size": 1065
},
{
"mediaType": "application/vnd.ollama.image.params",
"digest": "sha256:f4d24e9138dd46338add165d2bd97bef41ac194b436ebd5e6147c6588",
"size": 148
}
]
}
2.4.3 模型加载流程
执行 ollama run <模型名> 时,内部执行逻辑为:
1. 检索 manifests 目录,匹配对应模型的清单文件
2. 解析清单中的各分层哈希值
3. 根据哈希值在 blobs 目录中定位对应的数据文件
4. 将模型权重加载至内存,启动推理服务并对外给出交互
3 ~> Windows 环境下 Ollama 安装与运维
3.1 安装部署
3.1.1 系统要求
仅支持 Windows 10 及以上版本的操作系统。
3.1.2 安装流程
1. 从 Ollama 官网下载 Windows 版本安装包(OllamaSetup.exe)
2. 运行安装程序,点击 Install 执行一键安装
3. 安装完成后服务自动启动,可在任务管理器中查看 ollama.exe 进程状态
3.1.3 路径限制
- Windows 版本默认不支持自定义程序安装目录,程序本体默认安装至
C:\Users\AppData\Roaming路径 - 模型默认存储路径为
C:\Users.ollama\models,可后续通过配置修改存储位置
3.2 交互方式
Windows 环境同时给出图形化界面、命令行终端、Web 访问三类交互入口。
3.2.1 图形化界面
- 安装完成后自带原生图形客户端
- 支持新建会话、模型选择、参数设置等可视化操作
- 无需记忆命令,适合日常快速使用
3.2.2 命令行终端
- 操作逻辑与 Ubuntu 平台完全一致,所有核心命令通用
- 版本校验命令:
ollama -v
示例输出:ollama version is 0.12.3
3.2.3 Web 访问入口
服务启动后,在浏览器访问 http://localhost:11434,页面显示 Ollama is running 即代表服务运行正常。
3.3 图形化设置项详解
3.3.1 Expose Ollama to the network(网络暴露)
- 功能:开启后允许局域网内其他设备或服务访问本地 Ollama 服务
- 适用场景:将本地模型作为团队共享推理服务使用
3.3.2 Model location(模型存储位置)
- 功能:设置模型文件的本地存储目录
- 优化建议:修改至非系统盘(如 D 盘),避免大体积模型占用 C 盘空间导致系统盘容量不足
3.3.3 Context length(上下文长度)
- 功能:定义模型可记忆并用于生成回复的对话历史最大长度
- 可选档位:4k、8k、16k、32k、64k、128k
- 配置原则:并非越大越好,需结合业务场景与硬件显存 / 内存容量权衡配置
3.3.4 Airplane mode(飞行模式)
- 关闭状态:可正常访问 Ollama 官方云端模型库,支持在线拉取新模型
- 开启状态:强制所有数据本地化,断开与云端的连接,仅可使用本地已下载的模型
3.3.5 Reset to defaults
- 功能:将所有配置项恢复为出厂默认值
3.4 本地模型存储结构
Windows 平台模型目录结构与 Ubuntu 完全一致,核心分为 blobs 与 manifests 两级目录,模型加载逻辑完全相同。
4 ~> Ollama 通用核心配置与机制
4.1 环境变量配置
全平台通用,可通过系统环境变量修改默认行为,优先级高于图形化配置。
4.1.1 模型存储配置
OLLAMA_MODELS:指定模型文件存储目录
C:\Users.ollama\models,Linux 为 ~/.ollama/models
- 优化建议:迁移至非系统盘,避免占用系统盘空间
4.1.2 服务网络配置
OLLAMA_HOST:设置服务监听的 IP 地址
127.0.0.1(仅本地访问)
- 局域网共享场景建议设置为
0.0.0.0
OLLAMA_ORIGINS:配置允许的 HTTP 请求来源,使用半角逗号分隔多个来源地址默认监听端口为 11434,若存在端口冲突可通过环境变量修改监听端口
4.1.3 性能与并发配置
OLLAMA_KEEP_ALIVE:模型加载到内存后的存活时长
5m(5 分钟)
- 取值规则:纯数字单位为秒;
0表示请求处理完成后立即卸载;负值表示永久存活 - 优化建议:设置为
24h,减少模型重复加载开销,提升访问响应速度
OLLAMA_NUM_PARALLEL:并发请求处理数量
- 默认值:
1(串行处理) - 可根据硬件算力适当调高,提升并发处理能力
OLLAMA_MAX_LOADED_MODELS:内存中同时加载的最大模型数量OLLAMA_MAX_QUEUE:请求队列最大长度
- 默认值:
512 - 超出队列长度的请求将被丢弃,需根据业务流量调整阈值
4.2 服务架构本质
Ollama 本质是一个本地模型推理服务器,采用标准「服务端 - 客户端」架构:
- 服务端负责模型加载、推理计算、请求调度、资源管理
- 客户端(命令行、GUI、第三方程序)负责发送请求与接收响应
- 所有交互均通过 HTTP 接口标准化传输,支持二次开发与业务系统集成
4.3 模型分类说明
官方模型库中分为两类模型:
- 云端模型(带 cloud 标识):运行时调用官方云端大模型,不占用本地硬件资源
- 本地模型:需完整下载至本地后运行,完全离线运行,依赖本地硬件算力
结尾
uu们,本文的内容到这里就全部收尾了,艾莉丝在这里再次
艾莉丝努力练剑
C/C++ & Linux 底层探索者 | 一个正在努力练剑的技术博主
👀 【关注】 跟随我一起深耕技术领域,见证每一次成长。
❤️
【点赞】 让优质内容被更多人看见,让知识传递更有力量。
⭐
【收藏】 把核心知识点存好,在需要时随时查、随时用。
💬
【评论】 分享你的经验或疑问,评论区一起交流避坑!
不要忘记给博主“一键四连”哦!
“今日练剑达成!”
“技术之路难免有困惑,但同行的人会让前进更有方向。”
结语:希望对学习Linux相关内容的uu有所帮助,不要忘记给博主“一键四连”哦!
往期回顾:
🗡博主在这里放了一只小狗,大家看完了摸摸小狗放松一下吧!🗡
>
૮₍ ˶ ˊ ᴥ ˋ˶₎ა
就写这么多吧,内容比较基础,适合入门回顾。有补充的地方欢迎留言一起完善。
评论 (0)
暂无评论