news 2026/5/26 1:58:40

openEuler虚拟机yum源配置实战:从零到一搭建高效软件仓库

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
openEuler虚拟机yum源配置实战:从零到一搭建高效软件仓库

1. 环境准备与基础检查

刚装好的openEuler系统就像刚交房的毛坯房,虽然基础设施齐全,但想要舒适入住还得先通水电。配置yum源就是这个"通水电"的过程。我遇到过不少新手直接跳进配置环节,结果被各种报错搞得晕头转向。咱们先花5分钟做几个必要检查,能避免80%的后续问题。

首先确认系统架构。在终端输入:

uname -a

看到aarch64说明是ARM架构,x86_64则是Intel/AMD架构。这个信息决定待会儿要用的镜像源路径,搞错会导致后续所有操作失败。上周就有个同事把ARM版的源用在x86机器上,折腾两小时才发现问题。

接着检查网络连通性。很多人以为ping通就行,其实还要测试HTTP访问:

curl -I https://repo.openeuler.org

返回HTTP/2 200说明网络正常。遇到过企业内网拦截HTTPS的情况,这时需要换HTTP源或配置代理(注意:企业网络策略需遵守相关规定)。

最后看现有yum源状态:

ls /etc/yum.repos.d/

正常应该看到openEuler.repo等文件。如果目录空空如也,说明安装时没勾选"配置默认源"选项,需要手动创建目录和文件。

2. 镜像源的选择策略

选yum源就像选快递公司——官方源像顺丰可靠但可能慢,国内镜像像三通一达速度快但需要挑靠谱的。openEuler官方提供了全球镜像列表,访问https://openeuler.org/zh/mirror/list/能看到所有认证镜像站。

对于国内用户,推荐这些实测稳定的镜像:

  • 华为云镜像:https://mirrors.huaweicloud.com/euler/
  • 清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/openeuler/
  • 阿里云镜像:https://mirrors.aliyun.com/openeuler/

特殊场景要注意:

  • 企业内网可自建镜像同步站,用reposync工具定期同步
  • 开发环境可用file://本地路径源,避免网络依赖
  • 多版本共存时,源路径要精确到具体版本号,比如.../openEuler-20.03-LTS/

这是我的常用配置模板,保存为/etc/yum.repos.d/openEuler.repo

[base] name=openEuler-$releasever - Base baseurl=https://mirrors.tuna.tsinghua.edu.cn/openeuler/openEuler-22.03-LTS/OS/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://mirrors.tuna.tsinghua.edu.cn/openeuler/openEuler-22.03-LTS/OS/$basearch/RPM-GPG-KEY-openEuler [EPOL] name=Extra Packages for openEuler $releasever baseurl=https://mirrors.tuna.tsinghua.edu.cn/openeuler/openEuler-22.03-LTS/EPOL/$basearch/ enabled=1 gpgcheck=1

3. 配置文件实战操作

现在进入真枪实弹的配置环节。用vim编辑文件时,建议先备份:

cp /etc/yum.repos.d/openEuler.repo /etc/yum.repos.d/openEuler.repo.bak

编辑配置文件有几个易错点需要特别注意:

  1. baseurl结尾的/不能少,少了会导致路径解析失败
  2. gpgcheck=1时必须有对应的gpgkey配置
  3. 特殊字符必须用URL编码,比如空格要写成%20

这是我调试过的安全写法:

vi /etc/yum.repos.d/openEuler.repo

i进入编辑模式后,粘贴以下内容(以22.03 LTS为例):

[base] name=openEuler-22.03-LTS baseurl=https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS/OS/aarch64/ enabled=1 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS/OS/aarch64/RPM-GPG-KEY-openEuler

保存时遇到E212错误?说明没权限。两种解决方案:

# 方法1:用sudo sudo vi /etc/yum.repos.d/openEuler.repo # 方法2:保存到临时位置再移动 cp /etc/yum.repos.d/openEuler.repo ~/ vi ~/openEuler.repo sudo mv ~/openEuler.repo /etc/yum.repos.d/

4. 验证与故障排查

配置完不是简单yum update就完事了,我习惯用这套组合拳验证:

# 清除旧缓存 yum clean all # 测试元数据下载 yum makecache --verbose # 查看可用仓库 yum repolist -v

常见报错及解决方案:

  1. 404 Not Found:检查baseurl路径是否拼写正确,特别是版本号和架构
  2. GPG验证失败:临时设gpgcheck=0测试,或手动导入密钥:
    rpm --import https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS/OS/aarch64/RPM-GPG-KEY-openEuler
  3. 速度慢:用curl -o /dev/null -w "%{speed_download}\n" [URL]测试各镜像下载速度

实测案例:某次配置后yum makecache总超时,用traceroute发现网络跳数过多,最终换成同城镜像解决。建议企业用户搭建本地镜像时,用createrepo工具生成元数据:

createrepo --update /path/to/repo

5. 高效使用技巧

配置好源只是开始,这些技巧能让日常使用更顺畅:

智能缓存管理

# 查看缓存占用 du -sh /var/cache/yum # 设置缓存自动清理 echo "keepcache=0" >> /etc/yum.conf

多版本并存方案: 在/etc/yum.repos.d/创建不同版本的文件,如:

  • openEuler-20.03.repo
  • openEuler-22.03.repo通过enabled=0/1控制启用状态

离线环境解决方案

  1. 在有网环境下载全量包:
    reposync --download-metadata -p /path/to/save
  2. 打包后拷贝到离线机
  3. 创建本地源:
    createrepo /path/to/packages

性能优化参数: 在/etc/yum.conf中添加:

fastestmirror=true deltarpm=true timeout=15 retries=3

最后来个实用命令合集:

# 查询软件包来源 yum provides */ifconfig # 下载但不安装 yum install --downloadonly --downloaddir=./ wget # 查看依赖树 yum deplist docker-ce

这些经验都是我在生产环境踩坑后总结的,特别是那个离线部署方案,曾经在无外网服务器上救了急。记住,好的yum源配置应该是"设置一次,长期受益",花点时间做好基础配置,后续运维效率能提升好几倍。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/26 1:55:56

第二周(第12周)

1.单电源供电的二阶低通滤波器2.功率放大电路

作者头像 李华
网站建设 2026/5/26 1:50:32

Vue3 图片标框功能实现方案

基于 Vue3 组合式 API 的图片标框(画框、标注、选框)完整实现,核心逻辑封装在 GetBoxes 组件里,复制就能用 一、功能说明 ✅ 在图片上鼠标拖拽画矩形框 ✅ 实时显示框坐标(x, y, width, height) ✅ 支持多…

作者头像 李华
网站建设 2026/5/26 1:50:30

回头看:Coding Agent 才是通往 AGI 的那条窄门

约 3200 字 / 阅读时间 12 分钟一、开场:当年我们都猜错了方向 如果时间倒回 2023 年初,你去硅谷任何一场酒会,问一句"AGI 会从哪条路走出来?",最常听到的答案有三种:多模态、具身机器人、通用 A…

作者头像 李华
网站建设 2026/5/26 1:50:01

Rust Go C# PHP等编程语言就业前景与学习指南

针对除Python、Java、JavaScript之外的,在就业市场上有显著需求的编程语言,我将按相同的结构进行详细分析,重点介绍Rust、Go和C#,并补充其他值得关注的语言。 下表概括了这些语言的核心特征与就业前景: 编程语言核心…

作者头像 李华
网站建设 2026/5/26 1:47:01

C 语言卡壳在温度换算?初学者必看:不是智商低

一、学 C 语言半年,竟栽在一道小学级换算题上有位网友的编程求学路,戳中了无数初学者的痛处。他鼓足勇气重拾编程,目标明确要学好 C 语言,甚至特意入手了经典教材《C 程序设计语言》,却连第一章前半部分都没啃完&#…

作者头像 李华