# CentOS 7 安装 Zabbix 5.0 前端时报错:Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

/ 2026-05-09

1. 问题背景

在 CentOS 7 服务器上部署 Zabbix 5.0,安装流程大致如下:

  1. 安装 Zabbix 5.0 官方 yum 源;
  2. 安装 zabbix-server-mysqlzabbix-agent
  3. 安装 centos-release-scl
  4. 启用 zabbix-frontend 仓库;
  5. 安装 Zabbix Web 前端组件:
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl

其中,Zabbix Server 和 Agent 已经成功安装,但安装 Web 前端时 yum 报错。


2. 环境信息

项目 内容
操作系统 CentOS 7
Zabbix 版本 Zabbix 5.0 LTS
已安装组件 zabbix-server-mysqlzabbix-agent
前端安装包 zabbix-web-mysql-sclzabbix-apache-conf-scl
涉及仓库 Zabbix 官方源、CentOS SCLo 源

3. 已成功执行的步骤

3.1 安装 Zabbix 5.0 官方仓库

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

执行后生成 Zabbix 官方 yum 源配置文件:

/etc/yum.repos.d/zabbix.repo

3.2 安装 Zabbix Server 和 Agent

yum install zabbix-server-mysql zabbix-agent

安装结果:

Installed:
  zabbix-agent.x86_64 0:5.0.47-1.el7
  zabbix-server-mysql.x86_64 0:5.0.47-1.el7

说明 Zabbix Server 和 Zabbix Agent 已经安装成功。

3.3 安装 SCL 源

yum install centos-release-scl

安装后新增两个 SCL 仓库配置文件:

/etc/yum.repos.d/CentOS-SCLo-scl.repo
/etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

3.4 启用 Zabbix 前端仓库

编辑:

vim /etc/yum.repos.d/zabbix.repo

[zabbix-frontend] 中的 enabled 改为 1

[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

4. 报错现象

执行安装 Zabbix Web 前端:

yum install zabbix-web-mysql-scl zabbix-apache-conf-scl

出现如下错误:

Could not retrieve mirrorlist http://mirrorlist.centos.org?arch=x86_64&release=7&repo=sclo-rh error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"

Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

关键错误是:

Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

5. 原因分析

这个错误不是 Zabbix 包本身的问题,也不是 zabbix.repo 配置错误,而是 CentOS SCLo 仓库不可用导致的。

Zabbix 5.0 的 Web 前端依赖 PHP 7.2 相关组件,例如:

rh-php72
rh-php72-php-fpm
rh-php72-php-mysqlnd
rh-php72-php-mbstring
rh-php72-php-gd
rh-php72-php-xml

这些包来自 CentOS SCLo 仓库,也就是:

centos-sclo-rh
centos-sclo-sclo

但是默认生成的 SCLo repo 文件仍然使用:

mirrorlist=http://mirrorlist.centos.org/...

mirrorlist.centos.org 无法解析或不可用时,yum 就无法获取 SCLo 源数据,最终导致:

Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

6. 解决方法

核心思路:

将 CentOS SCLo 源从不可用的 mirrorlist.centos.org 改为可访问的 CentOS Vault 源。

6.1 备份原 SCLo repo 文件

cp -a /etc/yum.repos.d/CentOS-SCLo-scl.repo /etc/yum.repos.d/CentOS-SCLo-scl.repo.bak
cp -a /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo.bak

6.2 重写 CentOS-SCLo-scl-rh.repo

cat > /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo <<'EOF'
[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://vault.centos.org/7.9.2009/sclo/$basearch/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
EOF

6.3 重写 CentOS-SCLo-scl.repo

cat > /etc/yum.repos.d/CentOS-SCLo-scl.repo <<'EOF'
[centos-sclo-sclo]
name=CentOS-7 - SCLo sclo
baseurl=http://vault.centos.org/7.9.2009/sclo/$basearch/sclo/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
EOF

6.4 清理 yum 缓存

yum clean all

6.5 重新生成 yum 缓存

yum makecache

成功后可以看到 SCLo 源已经可以正常读取:

centos-sclo-rh   | 3.0 kB  00:00
centos-sclo-sclo | 3.0 kB  00:00

Metadata Cache Created

7. 重新安装 Zabbix Web 前端

再次执行:

yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl

这次依赖解析正常,yum 能够从 centos-sclo-rh 中获取 rh-php72 相关包:

rh-php72
rh-php72-php-fpm
rh-php72-php-mysqlnd
rh-php72-php-mbstring
rh-php72-php-gd
rh-php72-php-xml

最终安装成功:

Installed:
  zabbix-apache-conf-scl.noarch 0:5.0.47-1.el7
  zabbix-web-mysql-scl.noarch 0:5.0.47-1.el7

Complete!

8. 最终正确执行顺序

如果重新整理一次完整流程,可以按下面顺序执行。

8.1 安装 Zabbix 5.0 官方源

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

8.2 安装 Zabbix Server 和 Agent

yum install -y zabbix-server-mysql zabbix-agent

8.3 安装 SCL 源

yum install -y centos-release-scl

8.4 修复 SCLo 源

cp -a /etc/yum.repos.d/CentOS-SCLo-scl.repo /etc/yum.repos.d/CentOS-SCLo-scl.repo.bak
cp -a /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo.bak

cat > /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo <<'EOF'
[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://vault.centos.org/7.9.2009/sclo/$basearch/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
EOF

cat > /etc/yum.repos.d/CentOS-SCLo-scl.repo <<'EOF'
[centos-sclo-sclo]
name=CentOS-7 - SCLo sclo
baseurl=http://vault.centos.org/7.9.2009/sclo/$basearch/sclo/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
EOF

8.5 启用 Zabbix Frontend 仓库

编辑:

vim /etc/yum.repos.d/zabbix.repo

确认:

[zabbix-frontend]
enabled=1

8.6 重建 yum 缓存

yum clean all
yum makecache

8.7 安装 Zabbix Web 前端

yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl

9. 补充说明:NOKEY 警告是否需要处理?

安装过程中出现过类似提示:

Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Public key for zabbix-agent-5.0.47-1.el7.x86_64.rpm is not installed

这不是本次安装失败的核心原因。

后续 yum 会提示导入 GPG Key:

Importing GPG key 0xA14FE591
Is this ok [y/N]: y

确认导入即可。

真正导致失败的是:

Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

10. 排查思路总结

遇到 yum 安装失败时,不要只看最后一行 Error,要重点看失败的是哪个 repo。

本次问题中:

repo: centos-sclo-rh/x86_64

说明失败源是 centos-sclo-rh,不是 Zabbix 官方源。

判断过程如下:

Zabbix Server 和 Agent 已安装成功
        ↓
安装 Zabbix Web 前端失败
        ↓
报错 repo 是 centos-sclo-rh
        ↓
说明 PHP 7.2 SCL 依赖源不可用
        ↓
修复 CentOS-SCLo repo 到 vault.centos.org
        ↓
yum makecache 成功
        ↓
Zabbix Web 前端安装成功

11. 经验教训

  1. zabbix-releasezabbix-agent 不是一个东西:

    • zabbix-release:安装 Zabbix yum 仓库;
    • zabbix-agent:安装 Zabbix Agent 程序。
  2. Zabbix 5.0 在 CentOS 7 上安装前端时,需要 SCL 提供 PHP 7.2。

  3. 如果 yum 报:

    Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

    应该优先检查 /etc/yum.repos.d/CentOS-SCLo-*.repo

  4. 老版本 CentOS 的默认 mirrorlist 可能不可用,实际部署时可以改用 vault.centos.org

  5. 解决 yum 源问题的基本套路:

    yum clean all
    yum makecache
    yum install 包名

12. 最终结果

修复 SCLo 源后,Zabbix Web 前端安装成功:

Installed:
  zabbix-apache-conf-scl.noarch 0:5.0.47-1.el7
  zabbix-web-mysql-scl.noarch 0:5.0.47-1.el7

Complete!

至此,Zabbix 5.0 Server、Agent 和 Web 前端组件均已成功安装。


转载请注明作者和出处,并添加本页链接。
原文链接: //liyiyia.cloud/1

0 条评论