Oracle OCP知识点详解2:yum 等服务的搭建

一、YUM/DNF 服务架构解析

1.1 核心组件交互流程

复制代码
sequenceDiagram
participant Client
participant YUM
participant Repository
participant RPMDB

Client->>YUM: yum install oracle-database-preinstall
YUM->>Repository: 获取元数据(repodata)
Repository-->>YUM: 返回软件包列表
YUM->>RPMDB: 检查已安装依赖
YUM->>Client: 显示解决方案
Client->>YUM: 确认安装
YUM->>Repository: 下载.rpm文件
Repository-->>YUM: 传输软件包
YUM->>RPMDB: 执行安装并更新数据库

1.2 Oracle Linux 仓库类型

仓库类型 访问方式 典型用途
ULN (Unbreakable Linux Network) 在线认证 获取官方安全更新
本地镜像仓库 HTTP/NFS 内网高速访问
Oracle Public Yum 公共HTTP 基础包获取
EPEL 第三方源 扩展软件包支持

二、本地 YUM 仓库搭建

2.1 基础仓库创建

复制代码
# 创建仓库目录结构
mkdir -p /var/www/html/repos/OracleLinux/OL9/baseos/x86_64
cp /mnt/iso/*.rpm /var/www/html/repos/OracleLinux/OL9/baseos/x86_64/

# 安装创建工具
dnf install -y createrepo

# 生成仓库元数据
createrepo -v /var/www/html/repos/OracleLinux/OL9/baseos/x86_64/

# 配置 Web 服务
systemctl enable --now httpd
firewall-cmd --permanent --add-service=http
firewall-cmd --reload

三、ULN 仓库配置

3.1 注册系统到 ULN

复制代码
# 安装所需工具
dnf install -y uln-registration

# 注册系统(需替换认证信息)
uln_register --username oracle_ocp_user --password MySecurePass123! \
  --serverurl https://linux-update.oracle.com

# 查看已注册频道
uln-channel --list

四、故障排查与日志分析

4.1 常见问题处理

故障现象 排查命令 解决方案
仓库元数据无法下载 curl -v <repo_url>/repodata/repomd.xml 检查网络/Firewall/路径权限
软件包依赖冲突 dnf repoquery --deplist <package> 使用 --skip-broken 跳过
GPG 验证失败 rpm --import <new_key> 更新 GPG 密钥
下载速度慢 dnf --setopt=timeout=30 install <pkg> 调整超时时间或更换镜像源

4.2 关键日志文件

| 日志路径 | 信息类型 | 分析工具建议 |
|---------------------------|-----------|---------------------|------|-----------|
| /var/log/yum.log | 软件安装历史记录 | grep "Installed:" |
| /var/cache/dnf/* | 缓存元数据与软件包 | du -sh 查看缓存大小 |
| /var/log/httpd/access_log | 仓库访问日志 | `awk '{print $1}' | sort | uniq -c` |

欢迎在评论区提交您的仓库配置案例或技术疑问!带你了解OCP证书含金量解析与高效备考攻略 | 2025年职业发展必备_博睿谷培训

相关推荐
Run Freely93739 分钟前
MySQL 数据库_01
数据库·mysql
小朋友,你是否有很多问号?1 小时前
mac本地安装mysql
数据库·mysql
lucky_lyovo2 小时前
Neo4j--登录及简单操作
数据库·neo4j
影子24012 小时前
java jdbc连接sqlserver2008R2版本数据库报错,驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
java·数据库·ssl
0_0梅伊阁诗人2 小时前
Django ORM 模型
开发语言·数据库·笔记·python·oracle·django
倔强的石头1062 小时前
Windows系统下KingbaseES数据库保姆级安装教程(附常见问题解决)
数据库·windows
躲在云朵里`2 小时前
Redis深度解析:核心数据结构、线程模型与高频面试题
数据结构·数据库·redis
m0_453806872 小时前
【已解决】mongoose在mongodb中添加数据,数据库默认复数问题
数据库·mongodb
非凡ghost3 小时前
AOMEI Partition Assistant磁盘分区工具:磁盘管理的得力助手
linux·运维·前端·数据库·学习·生活·软件需求
恣艺3 小时前
Redis是什么?一篇讲透它的定位、特点与应用场景
数据库·redis·缓存