2核2G云服务器ollama运行Deepseek-r1-1.5b
本文介绍了如何在2核2G的低配置云服务器上通过ollama成功运行1.5B参数的Deepseek模型。通过创建2GB的swap交换空间解决了内存不足问题,详细记录了ollama安装、模型加载失败分析和swap配置步骤
2核2G云服务器基于ollama运行Deepseek-r1-1.5b
最近在云服务器打折,三十元得到一年2核2G云服务器,为了提高可玩性,想借助ollama在服务器端部署1.5B大模型。由于服务器内存实在太小,经过尝试,发现使用内存拓展后能够完美运行1.5B的deepseek,同时速度损耗不大,能够达到可用的程度。
安装ollama
curl -fsSL https://ollama.com/install.sh | sh
正常安装完成显示的东西
>>> Cleaning up old version at /usr/local/lib/ollama
>>> Installing ollama to /usr/local
>>> Downloading Linux amd64 bundle
######################################################################## 100.0%
>>> Creating ollama user...
>>> Adding ollama user to render group...
>>> Adding ollama user to video group...
>>> Adding current user to ollama group...
>>> Creating ollama systemd service...
>>> Enabling and starting ollama service...
Created symlink /etc/systemd/system/default.target.wants/ollama.service → /etc/systemd/system/ollama.service.
>>> The Ollama API is now available at 127.0.0.1:11434.
>>> Install complete. Run "ollama" from the command line.
WARNING: No NVIDIA/AMD GPU detected. Ollama will run in CPU-only mode.
deepseek安装与问题发现
直接拉取模型并运行,内存不足会报错
root@l897:~# ollama run deepseek-r1:1.5b
pulling manifest
pulling aabd4debf0c8: 100% ▕███████████████████████████████████████████████████████████████████████████████████████████████▏ 1.1 GB
pulling 369ca498f347: 100% ▕███████████████████████████████████████████████████████████████████████████████████████████████▏ 387 B
pulling 6e4c38e1172f: 100% ▕███████████████████████████████████████████████████████████████████████████████████████████████▏ 1.1 KB
pulling f4d24e9138dd: 100% ▕███████████████████████████████████████████████████████████████████████████████████████████████▏ 148 B
pulling a85fe2a2e58e: 100% ▕███████████████████████████████████████████████████████████████████████████████████████████████▏ 487 B
verifying sha256 digest
writing manifest
success
Error: model requires more system memory (1.8 GiB) than is available (1.3 GiB)
swap内存扩展
为了扩展内存,采用swap。在Linux系统中,swap空间(通常称为swap分区)是一个用于补充内存资源的重要组件。当系统的物理RAM不足时,Linux会将一部分不经常使用的内存页面移动到硬盘上的swap空间中,这个过程被称为分页(paging)或交换(swapping)。这样可以为更重要的进程腾出物理内存,从而保持系统的高效运行。
swap分区大小设置规则:大小一般为真实物理内存的1~2倍
# 创建 2GB 的 Swap 文件(根据需求调整大小)
sudo fallocate -l 2G /swapfile
# 设置权限(必须为 600)
sudo chmod 600 /swapfile
# 格式化为 Swap 文件系统
sudo mkswap /swapfile
# 立即激活 Swap
sudo swapon /swapfile
free -h | grep Swap
# 输出示例:Swap: 2.0Gi
查看全部可用内存
watch -n 1 "free -h; nvidia-smi"
实际加载时间变长,但能正常使用,是在低成本服务器上实现大模型部署的一种方法
补充:若希望服务器重启后自动加载 Swap,需将 Swap 文件写入 /etc/fstab:
# 将 Swap 配置写入系统文件
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
测试结果
root@l897:~# ollama run deepseek-r1:1.5b
>>> hello
<think>
</think>
Hello! How can I assist you today? 😊
对内存占用进行测试,由于ollama对deepseek模型进行了量化,实际占用量小于理论需求(1.5B参数,每个参数16bit两个字节,模型理论占用3G左右)
total used free shared buff/cache available
Mem: 1.9Gi 1.5Gi 74Mi 14Mi 358Mi 265Mi
Swap: 4.0Gi 344Mi 3.7Gi
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐

所有评论(0)