当前位置: 首页 > news >正文

详细的Linux系统更新yum源的教程

详细的Linux系统更新yum源的教程

一、准备工作

  1. 确认系统版本

    # 查看系统版本
    cat /etc/redhat-release
    # 或
    cat /etc/centos-release
    
  2. 安装必要工具(如果没有wget)

    sudo yum install -y wget
    

二、详细更换步骤(以CentOS为例)

这里推荐使用阿里镜像源或者华为镜像源
阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区
华为开源镜像站_软件开发服务_华为云

镜像网站都有更详细的指导。

方案1:更换为阿里云yum源(推荐)
  1. 备份原有源

    # 备份基础源
    sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak# 备份epel源(如果存在)
    if [ -f /etc/yum.repos.d/epel.repo ]; thensudo mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.bak
    fi
    
  2. 下载对应版本的阿里云源

    # CentOS 6
    sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo# CentOS 7
    sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo# CentOS 8
    sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
    
  3. 下载epel源(扩展源)

    # CentOS 7
    sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo# CentOS 8
    sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-8.repo
    
方案2:更换为网易163源
  1. 备份原有源(同上步骤1)

  2. 下载网易源

    # CentOS 7
    sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo# CentOS 6
    sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS6-Base-163.repo
    

三、清理与重建缓存

  1. 清理所有缓存

    sudo yum clean all
    
  2. 重建缓存(这一步可能需要几分钟)

    sudo yum makecache
    
  3. 查看可用的yum源

    yum repolist enabled
    

四、测试与更新

  1. 测试yum源是否正常工作

    yum list | grep nginx  # 随便查询一个软件包
    
  2. 系统更新(可选)

    # 升级所有软件包
    sudo yum update -y# 只升级指定软件包(例如升级nginx)
    sudo yum update -y nginx
    

五、常见问题解决

  1. 如果出现"Could not retrieve mirrorlist"错误

    # 检查网络连接
    ping mirrors.aliyun.com# 检查DNS设置
    cat /etc/resolv.conf
    # 如果DNS有问题,可以添加阿里云DNS
    sudo echo "nameserver 223.5.5.5" >> /etc/resolv.conf
    sudo echo "nameserver 223.6.6.6" >> /etc/resolv.conf
    
  2. 如果CentOS 8提示"Error: Failed to download metadata for repo ‘appstream’"

    # CentOS 8已经停止维护,需要更换为vault源
    sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
    sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
    
  3. 手动编辑源文件(如果自动下载失败)

    sudo vi /etc/yum.repos.d/CentOS-Base.repo
    # 手动替换所有mirror.centos.org为对应的镜像地址
    

完成以上步骤后,你的yum源就更新完成了,后续使用yum安装软件会从新的镜像源下载,速度会更快更稳定。

这个问题问得很关键,能帮你理清Linux软件源的核心区别。简单说,yum源是系统基础软件的“官方仓库”,而epel源是官方源的“扩展仓库”,专门提供官方源里没有的实用软件。

yum源跟epel源的区别

一、先明确:什么是yum源?

yum源(Yellowdog Updater Modified)是RHEL/CentOS系统默认的软件仓库,本质是一个存储了大量RPM软件包及依赖关系的服务器集群。

它的核心特点的是:

  1. 官方维护:由Red Hat(RHEL)或CentOS官方团队筛选、编译和维护,安全性和稳定性极高。
  2. 基础核心:只包含系统运行必需的基础软件,比如gcc(编译器)、vim(编辑器)、nginx(基础版本)、python(系统默认版本)等,满足系统日常运维的“刚需”。
  3. 与系统强绑定:软件版本通常与系统版本匹配(如CentOS 7的yum源只提供适配CentOS 7的软件),避免版本冲突导致系统故障。

二、epel源:yum源的“补充包”

epel(Extra Packages for Enterprise Linux)是由Fedora社区发起的开源项目,专门为RHEL/CentOS等企业级Linux系统提供“扩展软件”,相当于给yum源“扩容”。

1. epel源主要涵盖的内容

epel源的软件聚焦“官方源没有,但用户常用”的场景,核心类别包括:

  • 运维工具类:比如htop(增强版进程管理工具)、iftop(网络流量监控工具)、nmon(系统资源监控工具)等,这些工具比官方源的基础工具功能更丰富。
  • 开发辅助类:比如python3-pip(Python包管理工具,CentOS 7官方源默认没有)、nodejs(新版本Node.js,官方源版本通常较旧)、git(较新版本Git,官方源版本可能滞后)。
  • 服务组件类:比如redis(新版本Redis缓存)、mongodb(MongoDB数据库)、certbot(Let’s Encrypt证书自动申请工具)等,这些软件官方源要么没有,要么版本过旧无法满足业务需求。
  • 轻量应用类:比如aria2(多线程下载工具)、ffmpeg(音视频处理工具)、syncthing(文件同步工具)等,满足日常使用的“个性化需求”。

它的核心特点是:

  • 社区维护:由Fedora社区志愿者开发,开源免费,更新频率比官方yum源高。
  • 兼容性强:严格适配RHEL/CentOS版本,不会与官方yum源的软件冲突(安装时会自动处理依赖)。
  • 非“必需”但“实用”:没有epel源,系统能正常运行;但有了epel源,能大幅提升运维和开发效率。

三、epel源与yum源的核心区别

用表格对比会更清晰:

对比维度yum源(官方基础源)epel源(扩展源)
维护主体RHEL/CentOS官方团队Fedora社区(开源项目)
软件范围系统基础软件(刚需)官方源没有的扩展软件(实用工具)
软件版本稳定但偏旧(优先保证系统兼容性)较新(跟进软件官方更新)
安全性极高(官方严格测试)高(社区审核,无恶意软件)
依赖关系只依赖官方源内部软件可依赖官方源软件,不产生冲突
默认状态系统默认启用需手动安装启用(yum install epel-release

四、实际使用场景:什么时候需要epel源?

  • 当你用yum install xxx安装软件时,提示“No package xxx available”(没有这个软件),比如安装htopcertbot
  • 当官方源的软件版本太旧,无法满足需求,比如CentOS 7官方源的Python是2.7,而你需要Python 3.8+;
  • 当你需要一些运维/开发的“小工具”,这些工具不在官方源的“基础软件清单”里。
http://www.dtcms.com/a/491124.html

相关文章:

  • 余姚做网站设计的淄博网站制作价格低
  • HolmesGPT 正式上线 丨 KubeSphere 助力云原生智能排障新体验
  • 【开题答辩过程】以《基于微信小程序教学评价平台的设计与实现》为例,不会开题答辩的可以进来看看
  • 淘宝式网站建设国外注册品牌 建设网站
  • 邵阳网站建设设计哈尔滨制作网站工作室
  • 管理中心理学问:人为什么要学习?
  • 长沙网站托管公司排名wordpress相册幻灯片
  • ps网站怎么做超链接海南百度首页广告
  • seo网站建设哪家专业wordpress建好本地站怎么上传
  • JVM 之 volatile可见性、禁止指令重排序的JVM实现
  • 荣耀手机2025年10月发布的新品Magic8比起Magic7,在硬件、性能、价格等上有什么区别,有什么优势
  • YOLO V1 和 V2笔记
  • C++ 创建一个窗口采用GDI的方式绘制文字
  • 谷歌网站推广费用建网站域名注册
  • python 网站开发 普及消防证怎么考取需要什么条件
  • 网络层次划分-网络层
  • 做响应式网站应该注意什么问题有自己的域名怎么建设网站
  • ClickHouse 数据更新策略深度解析:突变操作与最佳实践
  • 餐饮商城网站建设网站备案幕布要求
  • Prometheus监控部署
  • php ajax网站开发典型实例 pdfwordpress账号邮箱
  • 栈与队列:数据结构的基石与应用
  • 多态的定义
  • 开设网站的费用在微信怎样搞做微视频网站
  • wordpress禁止游客访问上海市网站seo
  • AI代码生成对CRUD联调流程的重构分析
  • 如何通过优化中药饮片采购流程实现供应链协同?
  • 建站产品网页制作工作怎么样
  • python编程基础知识
  • 使用VSCode SSH插件实现免密码登录远程服务器