十七、【Linux系统yum仓库管理】替换阿里源、搭建本地yum源

替换阿里源、搭建本地yum源

  • 本章学习目标
  • 内容简介
      • 阿里外网源核心功能
      • 本地yum核心功能
  • 操作演示
    • 替换阿里外网源
      • 备份原有yum源
      • 清理冲突配置
      • 下载阿里源配置文件
      • 添加EPEL扩展源
      • 清理缓存重建索引
      • 验证源状态
      • 测试安装软件
    • 使用镜像搭建本地仓库
      • 准备ISO镜像
      • 创建挂载点目录
      • 挂载iso文件
      • 验证挂载结果
      • 备份原有yum源
      • 创建本地仓库配置文件
      • 更新yun缓存
      • 检查仓库状态
      • 测试安装软件
      • 配置开机自动挂载

本章学习目标

本章学习Linux系统软件仓库管理相关使用

  • 理解更换源的必要性

  • 熟练下载与配置阿里云源

  • 理解本地源适用场景

  • 准备镜像文件与挂载

  • 配置本地源repo文件 搭建HTTP私有镜像源

内容简介

阿里外网源核心功能

  1. 加速软件下载

    • 替换国外官方源为 阿里云国内镜像,下载速度提升 5~10 倍,解决 yum install 卡顿问题
    • 支持 HTTP/HTTPS 协议,适配企业防火墙环境。
  2. 提升系统稳定性

    • 阿里源 每日同步官方更新,确保软件包版本一致且无兼容性问题
    • 自动解析 $releasever(系统版本)和 $basearch(CPU 架构),避免手动配置错误。
  3. 扩展资源丰富性

    • 通过 EPEL 源集成 6000+ 第三方软件(如 htopnginx),覆盖开发/运维常用工具
  4. 安全验证机制

    • 默认启用 gpgcheck=1,校验软件包 GPG 签名(需配置 gpgkey),防止篡改

本地yum核心功能

  1. 离线软件部署
    • 将 ISO 镜像作为本地软件仓库,无需互联网连接即可安装/更新 RPM 包(如 httpdnginx
    • 解决内网服务器、安全隔离环境下的依赖管理问题。
  2. 资源隔离与性能优化
    • 独立于网络 YUM 源,避免公网延迟或镜像站不可用风险。
    • 本地读取速度显著高于网络下载,适合批量部署环境。

注意事项

  • ISO 完整性:损坏的镜像可能导致挂载失败或安装异常,需校验 SHA256/MD5 值
  • 存储空间:确保挂载点目录(如 /mnt/centos)有足够空间容纳解压后的镜像文件。
  • 依赖覆盖:Everything ISO 包含全量软件包,而 Minimal ISO 可能缺失部分依赖,需按需选择镜像类型
  • 卸载流程:卸载前需确保无进程占用挂载点(lsof /mnt/centos),否则 umount 会失败

操作演示

  • 常用国内软件源地址
  1. 阿里云镜像源:mirrors.aliyun.com
  2. 清华大学镜像源:mirrors.tuna.tsinghua.edu.cn
  3. 网易镜像源:mirrors.163.com
  4. 华为云镜像源:mirrors.huaweicloud.com
  5. 腾讯云镜像源:mirrors.cloud.tencent.com

替换阿里外网源

将系统软件源替换为阿里外网源

演示命令功能描述
cp /etc/yum.repos.d/CentOS-Base.repo ...repo.bak备份原配置文件(安全回退)
rm -f /etc/yum.repos.d/*.repo清理旧配置(避免冲突)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/...下载阿里云源配置
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo添加 EPEL 扩展源
yum clean all && yum makecache清除缓存并重建索引
yum repolist验证源状态(URL 含 aliyun
yum install -y vim测试软件安装功能

备份原有yum源

[root@localhost ~]# cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
# 备份原配置文件,防止操作失误

清理冲突配置

[root@localhost ~]# rm -f /etc/yum.repos.d/*.repo
# 删除所有旧配置,避免源冲突

下载阿里源配置文件

[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 下载阿里云官方配置,覆盖默认源

添加EPEL扩展源

[root@localhost ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# 补充第三方软件支持(如 Nginx、Python 工具)

清理缓存重建索引

[root@localhost ~]# yum clean all && yum makecache
# 清除历史缓存,生成新元数据加速后续操作

验证源状态

[root@localhost ~]# yum repolist
# 检查仓库列表,确认源 URL 包含aliyun

测试安装软件

[root@localhost ~]# yum install -y vim
# 验证阿里源可用性(安装常用工具)

使用镜像搭建本地仓库

开始搭建本地yum源

演示命令关键选项/参数功能描述
mkdir -p /mnt/centos-p创建挂载点目录(递归创建)
mount -o loop,ro /data/iso/CentOS-...iso /mnt/centos-o loop,ro挂载ISO镜像(只读模式)
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/通配符 *.repo备份原有YUM源配置
tee /etc/yum.repos.d/local.repo <<EOF [配置内容] EOF<<EOF (Here Document)创建本地仓库配置文件
yum clean all && yum makecacheclean all makecache清除旧缓存并生成新元数据
yum repolist enabledrepolist enabled验证本地仓库状态
echo "ISO路径 /mnt/centos iso9660 loop,ro 0 0" >> /etc/fstab/etc/fstab配置开机自动挂载

准备ISO镜像

# 假设 ISO 文件已上传至 /data/iso/CentOS-7.9-x86_64-DVD-2009.iso
[root@localhost ~]# ls -lh /data/iso/
-rw-r--r--. 1 root root 9.5G Jul 16 21:10 CentOS-7.9-x86_64-DVD-2009.iso

创建挂载点目录

[root@localhost ~]# mkdir -p /mnt/centos  # 创建空目录作为挂载点

挂载iso文件

[root@localhost ~]# mount -o loop,ro /data/iso/CentOS-7.9-x86_64-DVD-2009.iso /mnt/centos
# -o loop: 将文件视为块设备;ro: 只读模式防止误修改

验证挂载结果

[root@localhost ~]# df -hT | grep centos
/dev/loop0    iso9660  9.5G  9.5G     0 100% /mnt/centos  # 挂载成功
[root@localhost ~]# ls /mnt/centos
CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  Packages  repodata  RPM-GPG-KEY-CentOS-7  # 关键目录存在

备份原有yum源

[root@localhost ~]# mkdir /etc/yum.repos.d/backup
[root@localhost ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/  # 避免冲突

创建本地仓库配置文件

[root@localhost ~]# tee /etc/yum.repos.d/local.repo <<EOF
[centos-local]
name=CentOS Local ISO Repository
baseurl=file:///mnt/centos
enabled=1
gpgcheck=0  # 禁用签名检查(镜像内无GPG签名)
EOF

更新yun缓存

[root@localhost ~]# yum clean all  # 清除旧缓存
[root@localhost ~]# yum makecache  # 生成新元数据

检查仓库状态

[root@localhost ~]# yum repolist enabled
repo id             repo name                        status
centos-local        CentOS Local ISO Repository      10,072 packages  # 成功识别软件包

测试安装软件

[root@localhost ~]# yum install -y httpd  # 从本地源安装Apache
Dependencies Resolved
→  Package httpd.x86_64 0:2.4.6-93.el7 will be installed  # 依赖自动解决

配置开机自动挂载

[root@localhost ~]# echo "/data/iso/CentOS-7.9-x86_64-DVD-2009.iso /mnt/centos iso9660 loop,ro 0 0" >> /etc/fstab
[root@localhost ~]# mount -a  # 立即生效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/90117.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/90117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

家庭网络怎么进行公网IP获取,及内网端口映射外网访问配置,附无公网IP提供互联网连接方案

在家庭网络中&#xff0c;我们常常需要通过公网IP来访问内网中的设备&#xff0c;比如家庭NAS、Web服务器或监控摄像头。要实现这个目标&#xff0c;首先要确保你的网络具有一个可用的公网IP&#xff0c;然后通过路由器配置端口映射&#xff08;Port Forwarding&#xff09;。如…

(LeetCode 面试经典 150 题 ) 128. 最长连续序列 (哈希表)

题目&#xff1a;128. 最长连续序列 思路&#xff1a;哈希表&#xff0c;时间复杂度0(n)。 用集合set来实现哈希表的功能&#xff0c;记录所有出现的元素。然后遍历元素&#xff0c;细节看注释。 C版本&#xff1a; class Solution { public:int longestConsecutive(vector&…

Altera Quartus:BAT批处理实现一键sof文件转换为jic文件

sof文件是Quartus编译默认生成的程序文件&#xff0c;用于通过JTAG口下载到FPGA内部RAM&#xff0c;断电程序会丢失&#xff0c;jic文件是用于固化到外部Flash中的程序文件&#xff0c;断电程序不会丢失。本文介绍如何通过批处理文件实现sof到jic的一键自动化转换。 Quartus工程…

基于单片机婴儿床/婴儿摇篮/婴儿车设计/婴儿监护系统

传送门 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品题目速选一览表 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品题目功能速览 概述 本设计实现了一种基于单片机的多功能智能婴儿监护系统&#xff0c;集成于婴儿床、摇篮或婴儿车中…

Typora + 七牛云图床终极配置教程

本文是一份超详细的 Typora 七牛云图床配置指南&#xff0c;旨在帮助你实现图片“即插即用”的顺滑写作体验。我们将一步步完成所有配置&#xff0c;并特别针对配置过程中最常见的三个错误&#xff1a;ENOTFOUND (找不到服务器)、401 (无权访问) 和 Document not found (文件不…

高性能熔断限流实现:Spring Cloud Gateway 在电商系统的实战优化

一、为什么需要高性能熔断限流&#xff1f; 在电商系统中&#xff0c;尤其是大促期间&#xff0c;系统面临的流量可能是平时的数十倍甚至上百倍。 这样的场景下&#xff0c;熔断限流不再是可选功能&#xff0c;而是保障系统稳定的生命线。传统方案的问题&#xff1a; 限流精度不…

计算机网络1.1:计算机网络在信息时代的作用

计算机网络已由一种通信基础设施发展成为一种重要的信息服务基础设施。计算机网络已经像水、电、煤气这些基础设施一样&#xff0c;成为我们生活中不可或缺的一部分。

Component cannot be used as a JSX component

今天在使用 React Ts&#xff0c;使用 react-icons 这个库的时候&#xff0c;遇到了这个问题&#xff1a;原因用一句话概括就是 Ts 的版本太低了&#xff01; 我的 package.json&#xff1a; {"name": "frontend","version": "0.1.0"…

Centos安装最新docker以及ubuntu安装docker

Centos安装最新版本docker1.更新阿里源,更新之前先做备份mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup更新阿里源wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo2.运行 yum makecache 生成缓存…

网络基础15-16:MSTP +VRRP综合实验

MSTP 、VRRP综合实验&#xff0c;MSTP涵盖根桥选举、边缘端口、BPDU 保护、根保护、TC 保护 等功能验证。一、实验拓扑与设备规划核心层&#xff1a;LSW1&#xff08;VLAN10 根桥、VLAN20 备份根&#xff09;、LSW2&#xff08;VLAN20 根桥、VLAN10 备份根&#xff09;。接入层…

nvm安装详细教程、镜像、环境变量(安装node.js,npm,nvm)

一、什么是nodejs、nvm、npm 1、node.js 角色&#xff1a;JavaScript 的运行时环境&#xff08;runtime&#xff09;。 作用&#xff1a;让 JavaScript 脱离浏览器&#xff0c;直接在服务器或本地运行&#xff08;比如用 node app.js 执行代码&#xff09;。 包含&#xff1…

【JS】获取元素宽高(例如div)

文章目录基础用法基础用法 高度类型选择&#xff08;宽度同理&#xff09;&#xff1a; 属性描述offsetHeight包含边框内边距内容clientHeight包含内边距内容&#xff08;不包含边框&#xff09;scrollHeight包含滚动内容的全高&#xff08;含隐藏部分&#xff09; JS可使用g…

Kubernetes(k8s)中命令行查看Pod所属控制器之方法总结

在Kubernetes中&#xff0c;可以通过以下方法查看Pod所属的控制器&#xff1a;方法1&#xff1a;使用 kubectl describe pod命令kubectl describe pod <pod name>Events:Type Reason Age From Message---- ------ ---- ---- …

Zabbix 企业级高级应用

目录 一、Zabbix 监控基础与核心价值 二、网络自动发现&#xff1a;批量主机自动化管理 &#xff08;一&#xff09;网络自动发现的核心能力与局限 &#xff08;二&#xff09;网络自动发现完整流程 &#xff08;三&#xff09;网络自动发现配置步骤 1. 客户端&#xff0…

行业分类表sql

1.创建行业表行业信息表(hy_industries)名类型长度小数点Not Null虚拟键默认值注释industries_idintTRUEFALSETRUE行业IDindustry_codevarchar5FALSEFALSEFALSE行业编码industry_namevarchar100FALSEFALSEFALSE行业名称parent_idvarchar50FALSEFALSEFALSE父级行业ID(顶级为NULL…

PPIO × Lemon AI:一键解锁全流程自动化开发能力

传统开发需手动编写代码、调试及测试&#xff0c;耗时且依赖技术能力。AI Agent 可以帮助开发者进行高效开发&#xff0c;从需求理解到代码生成、测试、部署一站式完成。Lemon AI是一款开源的通用智能体&#xff0c;能够实现从需求计划到成果交付全流程自动化。它可以在虚拟环境…

基于单片机无线防丢/儿童防丢报警器

传送门 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品题目速选一览表 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品题目功能速览 概述 本设计实现了一种基于单片机的无线防丢报警系统&#xff0c;主要用于防止贵重物品&#xff08;如…

50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | NotesApp(便签笔记组件)

&#x1f4c5; 我们继续 50 个小项目挑战&#xff01;—— NotesApp组件 仓库地址&#xff1a;https://github.com/SunACong/50-vue-projects 项目预览地址&#xff1a;https://50-vue-projects.vercel.app/。 使用 Vue 3 的 Composition API 搭配 TailwindCSS 和 marked 库&…

基于JAVA实现基于“obj--html--pdf” 的PDF格式文本生成

背景&#xff1a;因一个特定的项目需要&#xff0c;将java对象内容以特定样式的PDF格式输出&#xff0c;查看了很多文档&#xff0c;有收费的、免费的、基础集成的。收费的工具就表现突出&#xff0c;免费的工具基本很难满足需求&#xff0c;故着手采用基础集成方案。过程中尝试…

Laravel 静态方法的合理使用考量【超详细】

Laravel 静态方法的合理使用考量 在 Laravel 开发中&#xff0c;静态方法的使用需要谨慎权衡。本文将从多个维度分析静态方法的适用场景与注意事项&#xff0c;帮助开发者在保持代码简洁性的同时&#xff0c;确保可维护性和可测试性。 一、静态方法的本质与特性 静态方法属于类…