我的C盘快满了,Ollama默认把模型都下到C盘用户目录下面,一个模型好几个GB,下了三四个之后C盘直接红了。
想问一下:
- Ollama的模型默认存在哪个位置?
- 怎么把模型改到D盘或者其他磁盘?
- 已经下好的模型能不能迁移过去?
- 有没有什么管理存储空间的技巧?
C盘只有120GB的SSD,实在装不了太多模型,求解决方案。
我的C盘快满了,Ollama默认把模型都下到C盘用户目录下面,一个模型好几个GB,下了三四个之后C盘直接红了。
想问一下:
C盘只有120GB的SSD,实在装不了太多模型,求解决方案。
先说模型默认位置:
| 系统 | 默认路径 |
|---|---|
| Windows | C:Users用户名.ollamamodels |
| Mac | ~/.ollama/models |
| Linux | ~/.ollama/models |
改到D盘最简单的方法:设置环境变量
Windows操作步骤:
OLLAMA_MODELSD:ollamamodels(或者你想存的路径)之后所有新下载的模型都会存到D盘了。记得先在D盘创建好对应的文件夹。
已有模型的迁移方法:
最稳妥的方式是:
.ollama 文件夹从C盘复制到D盘:xcopy C:Users你的用户名.ollama D:ollama.ollama /E /H /I
OLLAMA_MODELS 环境变量指向新路径ollama list 确认模型都在注意是复制不是剪切,万一出问题还有备份。确认新位置一切正常了再删旧的。
另外 OLLAMA_MODELS 只控制模型存储位置,Ollama程序本身还是装在C盘的,不过程序很小不占多少空间。
还有一种方法:符号链接(Symlink)
如果不想设环境变量,可以用Windows的符号链接把目录映射过去:
# 先把原目录移到D盘
move C:Users你的用户名.ollama D:ollama.ollama
# 创建符号链接(需要管理员权限)
mklink /D C:Users你的用户名.ollama D:ollama.ollama
这样Ollama以为模型还在C盘,但实际数据存在D盘。对Ollama完全透明,不需要改任何配置。
这个方法的好处是兼容性最好,缺点是需要管理员权限创建链接。
分享几个存储管理技巧:
1. 定期清理不用的模型
# 查看已下载模型和大小
ollama list
# 删除不需要的模型
ollama rm 模型名
2. 选择合适的量化版本
同一个模型有不同的量化版本,比如:
qwen2.5:7b 默认是Q4量化,约4.5GBqwen2.5:7b-q2_K 更小但质量下降明显3. 不要囤模型
很多人下了一堆模型但实际只用一两个,定期清理省空间。
4. 考虑加一块大容量机械硬盘
模型加载到显存后,存储盘的速度不影响推理速度,所以放机械硬盘也没问题,只是第一次加载慢一点。
120GB SSD确实不太够用,我之前也是同样的困扰。
后来我改用当贝Molili了,它对存储管理做了优化,支持自定义模型存储路径,而且有模型缓存管理功能,不用的模型可以自动清理。Molili接入Ollama后端的话,模型文件也是走OLLAMA_MODELS那个环境变量,配置方法一样。
总结一下楼上所有方案的优先级:
不管用哪种方法,操作前记得备份,别把模型文件搞丢了又要重新下载。