软件管理¶
在这篇文章中
我的内核和驱动程序在 Ubuntu 上无法更新/安装¶
在同时更新系统内核时,如果 /boot 分区已满,可能导致新内核或驱动程序(内核模块)无法安装,从而阻止新初始 RAM 磁盘(initrd)的构建。要检查此问题,请运行以下命令:
如果在输出中看到错误,请检查 /boot 分区的填充级别。为此,查看命令 df -h /boot 的输出:
为了成功重建 initrd,/boot 分区百分比填充之前的数字应大于 200M。如果没有可用空间,请执行以下步骤:
-
创建分区备份,以便在意外删除必要文件时快速恢复文件:
-
查看
/boot分区的内容并找到所有 initrd 镜像:你应该得到类似以下的输出:
-
删除多余的 initrd 镜像,保留最后两个。在我们的案例中,需要删除
initrd.img-6.8.0-57-generic和initrd.img-6.8.0-58-generic。警告
以下命令可能导致操作系统故障,因此请注意删除文件的版本。
/boot分区中必须保留最后两个内核版本的文件!你可以使用命令uname -a检查当前使用的内核。如果出现问题,可以使用命令sudo rsync -av /boot.old/ /boot/从第一步创建的备份中恢复 /boot 分区的内容。使用以下命令执行此操作:
对每个文件重复此操作。
对
vmlinuz和System.map文件执行相同操作(可选): -
清理与旧内核相关的系统包,并运行安装后脚本以构建驱动程序和内核模块:
-
重启操作系统:
我遇到 Docker Compose 错误¶
如果在运行 docker compose 时收到类似 docker: 'compose' is not a docker command 或 docker-compose: command not found 的错误,这可能意味着你的操作系统版本较旧,其中 Docker Compose 未作为插件安装或未添加到 PATH 中。要解决此问题,请按照以下步骤操作:
-
安装 Docker Compose(如果未安装):
mkdir -p ~/.docker/cli-plugins/ curl -SL https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose chmod +x ~/.docker/cli-plugins/docker-compose如有必要,将
latest替换为 官方仓库 中的当前版本。 -
检查安装情况:
如果命令成功执行,则 Docker Compose 已安装。
-
如果命令仍然找不到,请确保
~/.docker/cli-plugins/已添加到环境变量PATH中。将此添加到~/.bashrc或~/.zshrc:然后执行:
-
再次检查安装情况:
像 DeepSeek R1 这样的多语言神经模型以中文而不是英文响应¶
大多数多语言模型(例如 DeepSeek)可能会偶尔切换到主要训练语言(例如中文),即使请求是用英文发出的。这是由于模型蒸馏、压缩或主要响应语言的存在所致。
为了减少这种行为,建议通过在提示查询末尾添加 "Respond only in English" 并在系统提示中包含此行来明确指定响应语言。还建议使用 Qwen3 或 Gemma3 等模型,与 DeepSeek 相比,这些模型在参数较少的版本中表现出更大的稳定性。
此外,如果你通过 API 工作,可以使用 OpenWebUI 或聊天后端手动检查英文响应。
OpenWebUI 或 Ollama 中的神经模型响应时间过长¶
如果模型响应时间过长,可能是由于其大小和服务器的容量所致。
首先,确保你的模型完全适合 GPU 的视频内存。例如,模型 qwen3-next:80b 在压缩(q4)时为 67 GB,完全解压时需要 80–90 GB 的视频内存。如果你的 GPU 是 NVIDIA A5000 或 RTX 4090,具有 24 GB 的视频内存,Ollama 会将模型层的部分卸载到服务器的 CPU 上,导致虚拟机过载、核心分配减少和响应延迟过长。
要处理此类模型,需要更强大的 GPU,例如具有 80 GB 视频内存的 Nvidia H100 或四个 RTX 4090 的组合。RAM 仅对 RAG 任务(处理知识库和加载的文件)重要,通常需要至少 32 GB。
你可以通过将模型大小乘以 2(如果模型压缩为 q4)或乘以 1.5(如果模型压缩为 q8)来估算模型在视频内存中的大小。对于超过 8000 的上下文窗口中每增加 1000 个 token,需要增加 1 GB 的视频内存。
要检查 GPU 的负载,通过 SSH 登录服务器并在命令行中运行 ollama ps:
[ root ]$ ollama ps
NAME ID SIZE PROCESSOR UNTIL
yxchia/multilingual-e5-base:latest f5248cae7e12 1.1 GB 100% GPU 14 minutes from now
qwen3:14b bdbd181c33f2 14 GB 100% GPU 14 minutes from now
输出将显示你的模型占用了多少空间以及是否完全适合 GPU。
备注
对于具有 24 GB 视频内存的 GPU,不建议使用大于 14B 或压缩超过 q8 的模型。模型的参数数量(体积)和上下文窗口大小越大,响应过程将越长。
信息
Nvidia A5000 上 14B 模型的计算性能:
- 冷启动在响应前需要约 30-40 秒。
- 响应时间为 10–15 秒(无推理)。
- 响应时间为 20-30 秒(有推理)。
如果使用 RAG(检索增强生成)或 MCP,响应时间将增加 5–10 秒(用于数据库搜索和工具请求)。
Token 生成速度约为每秒 40–45 个 token。你可以通过点击 OpenWebUI 中聊天响应行底部的图标 并检查 response_token/s 参数来验证这一点。
如何从已安装的 Ubuntu 操作系统中完全删除 Docker¶
我们的 Ubuntu 操作系统镜像为了方便起见预装了 Docker。如果你不需要它或想安装不同版本,请使用以下命令:
sudo apt remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo apt autoremove
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
通过运行命令 docker --version 确保 Docker 已删除。