跳转到内容

软件源、国内镜像与第一次更新 ​

ISO 里的 OMV 比软件源里的旧,所以装好之后的第一件事是更新。这一篇讲清 OMV 从哪里下载软件,国内网络怎么换成 TUNA 镜像,然后带你做完第一次更新。以后的日常更新、安全更新和重启时机见系统更新。

更新会重启服务,有时要重启整机

  • 影响范围:升级过程中 nginx、OMV 引擎、Samba 等服务可能被重启,正在进行的 SMB 传输会中断;更新了内核、systemd 等核心组件之后,需要重启整机才生效。
  • 前置条件:新装系统没有数据,现在更新风险最低。以后在有数据的机器上更新,先停掉正在进行的大文件传输,并保证系统盘有备份或虚拟机快照。更新过程中不要关机、断电或关掉网络。
  • 怎么回退:界面不提供降级。降级要靠备份或快照还原整个系统盘,见备份系统盘。

OMV 用到哪几类软件源 ​

OMV 本身是一批 Debian 软件包,所以更新走的就是 Debian 的 APT。但它同时用到几个来源,其中大部分由 OMV 自己生成,不要手改:

来源文件说明
OMV 自己的软件包/etc/apt/sources.list.d/openmediavault.list,加 /etc/apt/mirrors/openmediavault.txt8.5.12 起改成镜像列表:按优先级依次尝试 packages.openmediavault.org、packages.openmediavault.io、openmediavault.github.io/packages、SourceForge,一个连不上自动换下一个
Debian 安全更新/etc/apt/sources.list.d/openmediavault-os-security.list默认 security.debian.org/debian-security,由环境变量 OMV_APT_USE_OS_SECURITY 控制,默认开启
Debian 内核 backports/etc/apt/sources.list.d/openmediavault-kernel-backports.list 和 /etc/apt/preferences.d/openmediavault-kernel-backports.pref默认开启(OMV_APT_USE_KERNEL_BACKPORTS)。只把 linux-image-*、linux-headers-*、firmware-* 这几类包固定到 backports,所以内核会跟着 backports 走,通常比 Debian 13 稳定版自带的新
Debian 主源/etc/apt/sources.list(或 /etc/apt/sources.list.d/ 下 Debian 自己的文件)安装系统时写的,ISO 安装时你选的镜像就在这里。OMV 只在找不到 trixie 和 trixie-updates 的源时,才往 sources.list 里追加 deb.debian.org 的两行
omv-extras 与 Dockeromvextras.sources、omvdocker.sources装了 omv-extras 才有

想看当前系统实际启用了哪些源:

sh
# 在 OMV 的 shell 里执行
apt-cache policy | grep -E '^ *[0-9]+ '

每行开头的数字是优先级,后面是源的地址和组件。

不要自己加 Debian 的 backports、testing 或 apache

官方文档的红线:不要从 Debian 的 backports、testing、experimental 装软件包,OMV 和它所基于的 Debian 版本绑得很紧;不要装 apache,它会导致 openmediavault 包被卸载。OMV 自己为内核启用的 backports 是例外,那是它管理的。清华 TUNA 的帮助页也提醒:不要在 /etc/apt/sources.list 里再配置 backports,会和 OMV 自带的冲突。

要装额外的软件,优先用容器,见为什么在 NAS 上用容器。

在界面里看更新 ​

系统 → 更新管理(System → Update Management)有三个页面:

  • 更新(Updates):待安装的更新列表。
  • 设置 → 软件(Settings → Software):要不要启用预发布和社区软件源。
  • 设置 → 更新(Settings → Updates):通知频率和自动安装安全更新。

软件源开关 ​

设置 → 软件 页的标题是「安装更新来源」,有两个勾选项,默认都不勾:

选项作用
预发布更新(Pre-release updates)加入 OMV 官方库的 synchrony-proposed 软件源
由社区维护的更新(Community-maintained updates)加入官方库的 partner 组件,里面是第三方开发者提供的软件

NAS 上不要开预发布。截至 2026-10-23,这两个源在官方库里的 amd64 索引都是空的,开了也没有东西可装。

自动安装安全更新与通知 ​

设置 → 更新 页有两项:

选项默认值作用
通知日程(Notification schedule)每天每天或每周,用邮件汇总待安装的更新。需要先配置邮件通知,并在 系统 → 通知 → 事件 里保持「更新管理」事件开启
无人值守安装安全更新(Install security updates unattended)开每天自动安装 Debian 的安全更新

官方文档里写的 cron-apt 已经过时。OMV 8 依赖的是 unattended-upgrades、apt-listchanges 和 apticron,从源码看,它们的行为是:

  • APT 每天更新软件包列表并预先下载可升级的包,下载缓存每 7 天清理一次。
  • 开启「无人值守」后,每天自动安装的只有 Debian 的安全更新。OMV 自己的包和 Debian 的普通更新不会被自动装,要你在界面里点。
  • 不会自动重启。 安全更新装了内核、libc 这类东西,需要你自己择机重启。
  • 开启了邮件通知的话,装了东西会发邮件报告,并按设定的日程发待更新汇总。

换成国内镜像 ​

OMV 自己的软件源默认在境外,国内可能很慢,可以换成清华大学 TUNA 镜像站。下面按 TUNA 的 OpenMediaVault 帮助页来,写作时核对过它的内容(2026-10-23)。

OMV 8 里换源,用环境变量,不要手改 openmediavault.list,那个文件会被 OMV 重写。环境变量保存在 /etc/default/openmediavault,OMV 生成配置文件时会读取它们。

换 OMV 自己的源 ​

sh
# 在 OMV 的 shell 里以 root 执行
omv-env set OMV_APT_REPOSITORY_URL "https://mirrors.tuna.tsinghua.edu.cn/OpenMediaVault/public"
omv-env set OMV_APT_ALT_REPOSITORY_URL "https://mirrors.tuna.tsinghua.edu.cn/OpenMediaVault/packages"
omv-salt stage run prepare
omv-salt deploy run apt

omv-salt stage run prepare 让新的环境变量生效,omv-salt deploy run apt 重写 APT 的配置。TUNA 的帮助页写的是 omv-salt stage run all,效果包含这两步,但会重新部署所有模块、重启一批服务,没必要。

之后镜像列表里 TUNA 的两个地址排第一、第二,openmediavault.github.io 和 SourceForge 依旧排在后面当后备。

其他可选的源 ​

下面这些按需换,TUNA 的页面把它们列为可选:

要换的源环境变量填什么
Debian 内核 backportsOMV_APT_KERNEL_BACKPORTS_REPOSITORY_URLhttps://mirrors.tuna.tsinghua.edu.cn/debian
Debian 安全更新OMV_APT_SECURITY_REPOSITORY_URLhttps://mirrors.tuna.tsinghua.edu.cn/debian-security
omv-extrasOMV_EXTRAS_APT_REPOSITORY_URLhttps://mirrors.tuna.tsinghua.edu.cn/OpenMediaVault/openmediavault-plugin-developers
DockerOMV_DOCKER_APT_REPOSITORY_URLhttps://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian

前两项设完同样执行 omv-salt stage run prepare 和 omv-salt deploy run apt。

omv-extras 和 Docker 的源不是 Salt 管的,而是由 omv-extras 的 omv-aptclean repos 重写(系统 → omv-extras 页面上的 apt clean repos,中文「清理源」,按钮做的是同一件事)。按源码,设完这两个环境变量后要再执行一次它才生效,TUNA 的页面没有写这一步,我们没有实测。注意它会删掉 /etc/apt/sources.list.d/ 里内容含 docker 的文件,包括你自己加的 Docker 官方源。

Debian 主源 ​

Debian 主源在 /etc/apt/sources.list(或者 /etc/apt/sources.list.d/ 下的 .sources 文件),不是 OMV 生成的,可以按 TUNA 的 Debian 帮助页修改,选 Debian 13。先看一眼你的系统用的是哪种格式:

sh
# 在 OMV 的 shell 里执行
ls /etc/apt/sources.list /etc/apt/sources.list.d/

照 TUNA 页面给的对应格式改。backports 那一段不要加,OMV 已经自己管了。

换源之后 ​

  1. 在 OMV 的 shell 里确认地址已经换了:

    sh
    # 在 OMV 的 shell 里执行
    grep -r tuna /etc/apt/sources.list.d/ /etc/apt/mirrors/ 2>/dev/null

    8.5.12 及以后,OMV 的源写在 /etc/apt/mirrors/openmediavault.txt 里,应该能看到两行 TUNA 地址,后面带 priority:1 和 priority:2。更早的版本直接写在 openmediavault.list 里。

  2. 在界面的 系统 → 更新管理 → 更新 里点检测更新,能正常列出就说明源是通的。

换源之后要自己核对密钥

OMV 的软件源公钥是通过源本身分发的,所以存在被篡改的可能。TUNA 的帮助页明确提醒:换源后要通过别的渠道核对公钥。OMV 软件源公钥的指纹在下载、校验并制作安装 U 盘里,可以对照。另外,TUNA 说明本站不对欧盟用户提供服务,镜像也有同步延迟,刚发布的版本可能晚一点才能看到。

需要代理的网络 ​

如果这台机器必须通过代理上网,在 网络 → 代理(Network → Proxy)里设置,APT 会用它。见代理与无线网络。

第一次更新 ​

  1. 打开 系统 → 更新管理 → 更新。
  2. 点工具栏上的放大镜图标,悬停提示是检测是否有更新...(Check for new updates)。会弹出进度窗口,提示「软件源将检查是否有删除或更新的软件包信息。」,等它跑完。
  3. 列表里是所有待升级的包,有名称、新版本、旧版本、软件源等列。想看某个包改了什么,选中它,点显示变更日志(Show changelog)。
  4. 点下载图标,悬停提示是安装更新 ...(Install updates)。对话框标题是「升级系统」,内容是「所有软件包将升级,您确定要继续?」勾选确认,点是。注意它升级的是全部包,没有只升某几个的选项。
  5. 进度窗口里输出实时滚动。任务没跑完时,关闭按钮是灰的,跑完再关。如果浏览器页面中途断了,任务还在后台跑,不要重启机器,重新登录后可以从铃铛通知栏里找回进度。
  6. 完成后点关闭。顶部如果出现黄色提示条,点应用。如果被退回到登录页,重新登录即可,8.5.10 起 PHP 的会话文件换了位置,更新后需要重新登录一次。
  7. 更新列表里有 linux-image、systemd、libc6 这类包的话,重启一次:右上角电源图标,选重启。
  8. 重启后再点一次检测更新,列表应该是空的。

在 OMV 的 shell 里也可以用命令行,效果一样。它会先更新包列表,再模拟一遍,如果发现升级会把 openmediavault 包本身卸掉就中止:

sh
# 在 OMV 的 shell 里以 root 执行
omv-upgrade

通过 SSH 跑的话,注意别让连接中途断掉,可以用 tmux 这类工具保护。

检查结果 ​

  • 系统 → 更新管理 → 更新 点检测更新后,列表为空。

  • 仪表盘上「有可用更新」小部件显示没有更新。

  • 在 OMV 的 shell 里看版本:

    sh
    # 在 OMV 的 shell 里执行
    dpkg -l openmediavault

    版本号比 ISO 的新,比如已经到了 8.5.x。具体版本以软件源为准。

常见问题 ​

检测更新报错,Release file ... is not valid yet,或证书错误。 多半是系统时间不对,见下一篇时间、时区与主机名。

Could not resolve 或连接超时。 DNS 没配好,或者境外源太慢。先确认静态 IP 时填了 DNS,见网络接口;国内网络按上面换 TUNA。

更新失败,提示包被锁或者依赖错误。 见更新失败与软件源报错。omv-firstaid 里的「Refresh APT package lists and clean caches」可以清理缓存和锁(8.3.0 起提供)。

想加额外的 APT 源。 官方插件 openmediavault-apt 在 系统 → 更新管理 → 设置 → 其它软件(Other Software)里管理额外的软件源,见小工具合集。再强调一遍:OMV 和 Debian 版本绑得很紧,第三方源可能破坏它,能用容器就用容器。

参考资料 ​

OpenMediaVault 非官方中文使用指南,与 openmediavault 项目及其开发者无隶属关系。