【Linux】yum(工具篇)
文章目录
- 前言:什么是软件包
- yum 的介绍
- yum源
- yum源的配置
- 第三方源的配置
- 官方源的配置
- 镜像站点
- 安装wget包
- 备份本地yum源
- 配置网易yum源
- 重新生成yum缓存
前言:什么是软件包
- 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.
- 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.
- 软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.
- yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上.
yum 的介绍
YUM 是一个命令行软件包管理工具,主要用于基于 RPM 的 Linux 发行版(如 CentOS、Red Hat Enterprise Linux、Fedora 等)。YUM 是 “Yellowdog Updater, Modified” 的缩写。它的主要功能包括:
- 自动解决依赖关系:YUM 能够自动解决安装软件包时遇到的依赖问题。
- 简化软件管理:用户可以轻松地安装、更新和删除软件包。
- 支持多个仓库:YUM 支持从多个软件仓库(repositories)下载和安装软件包。
- 易于更新系统:通过简单的命令,用户可以轻松地更新系统中的所有软件包。
常用的 YUM 命令包括:
-
yum list | grep <软件包名>:查找软件包。
-
yum install <软件包名>:安装软件包。
-
yum remove <软件包名>:删除软件包。
-
yum update <软件包名>:更新软件包。
-
yum search <关键词>:搜索软件包。
-
yum info <软件包名>:显示软件包的详细信息。
yum源
YUM 提供了一个简单而强大的方式来管理系统的软件包,特别适合服务器和需要频繁更新的软件环境。
YUM 源(YUM Repository)是存储软件包及其相关元数据的服务器。YUM 源为 YUM 工具提供软件包的下载地址和必要的依赖信息,确保在安装或更新软件时能够自动处理依赖关系。通过配置 YUM 源,用户可以从特定的服务器或镜像站点下载和安装软件包。
YUM 源的主要组成部分:
软件包:实际的 RPM 软件包文件。
元数据:描述软件包的文件,包括包名、版本、依赖关系等信息。
配置 YUM 源:
YUM 源配置文件通常位于 /etc/yum.repos.d/ 目录下,每个源都有一个 .repo 后缀的文件。每个文件包含一个或多个 YUM 源的配置信息。我们打开这个文件来看一看


配置文件中的关键字段:
- [base]:源的唯一标识符,可以是任意名称。
- name:对源的描述。
- baseurl:源的 URL 地址,可以是 HTTP、FTP 或本地文件路径。
- enabled:是否启用该源(1 表示启用,0 表示禁用)。
- gpgcheck:是否进行 GPG 签名验证(1 表示启用,0 表示禁用)。
- gpgkey:GPG 公钥的 URL 地址,用于验证软件包的签名。
使用 YUM 源:
配置好 YUM 源后,可以使用 YUM 命令进行软件包管理。例如:
yum repolist:列出已配置的所有 YUM 源。
yum install <软件包名>:从已配置的 YUM 源安装软件包。
常用的 YUM 源:
官方源:由操作系统发布方提供的官方软件包源。
第三方源:由社区或其他组织提供的软件包源,如 EPEL(Extra Packages for Enterprise Linux)。
配置和管理好 YUM 源,可以确保系统的软件包管理更加高效和灵活。
yum源的配置
第三方源的配置
配置第三方源,如epel,我们直接使用yum下载就好
yum install epel-release
官方源的配置
镜像站点
清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/
网易开源镜像站:https://mirrors.163.com/
阿里开源镜像站:https://developer.aliyun.com/mirror/
安装wget包
wget 是一个用于从网络上下载文件的命令行工具,支持 HTTP、HTTPS 和 FTP 协议。它是 GNU 项目的一部分,非常适合在终端或脚本中使用,尤其是在需要批量下载文件或在不稳定的网络环境下进行下载时
yum -y install wget
-O:将下载的文件保存为指定的文件名。-c:断点续传。-r:递归下载。-l:递归下载的层级深度。--limit-rate=<rate>:限制下载速度。-b:后台下载。- e <command>:执行一个命令,例如设置代理。
备份本地yum源
在配置系统文件之前,为了防止后续的操作中出现纰漏,所以最好还是将我们要动的文件先拷贝一份

配置网易yum源
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.163.com/.help/CentOS7-Base-163.repo
重新生成yum缓存
// 删除缓存数据
yum clean all// 创建元数据缓存
yum makecache
在 Linux 中, yum clean all 命令的作用是清除 Yum 缓存中的所有数据。
具体来说,它会执行以下操作:
- 清除软件包缓存:删除本地存储的已下载软件包的信息。
- 清除元数据缓存:包括软件包的描述、依赖关系、版本等相关的元数据信息。
执行这个命令有助于解决 Yum 在操作过程中可能出现的缓存相关问题,例如缓存数据损坏、过期或与实际软件源不一致等,从而确保 Yum 能够获取最新和准确的软件包信息来进行安装、更新等操作。但需要注意的是,执行该命令后,再次执行 Yum 操作时可能需要重新下载相关数据。
在 Linux 中, yum makecache 的作用是生成 Yum 缓存。
它会从配置的软件源获取软件包的元数据(如软件包的名称、版本、依赖关系等),并将这些信息缓存在本地,以加快后续的 Yum 操作(如软件包的查询、安装、更新等)的速度。
通过生成缓存,Yum 在后续执行相关任务时,可以更快地获取所需的信息,而不必每次都从软件源重新获取,从而提高了操作的效率。
如果更新 Yum 源但不清除缓存且不重新创建缓存,可能会出现以下情况:
- 可能会导致 Yum 在获取软件包信息时使用旧的、不准确的缓存数据,从而无法获取到最新的软件包版本和相关信息,可能导致安装或更新软件时出现错误或使用过时的软件版本。
- 由于缓存中的元数据与新的 Yum 源不一致,可能会出现依赖关系解析错误,影响软件的正常安装和更新。
- 部分新添加到源中的软件包可能不会在 Yum 的操作中显示,因为缓存中没有它们的相关信息。
所以,为了确保 Yum 能够准确、有效地从更新后的源获取软件信息,建议在更新 Yum 源后,清除旧缓存并重新创建新的缓存。
相关文章:
【Linux】yum(工具篇)
文章目录 前言:什么是软件包yum 的介绍yum源yum源的配置第三方源的配置官方源的配置镜像站点安装wget包备份本地yum源配置网易yum源重新生成yum缓存 前言:什么是软件包 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程…...
3GPP入门
官网地址 3GPP – The Mobile Broadband Standard 协议下载链接 Directory Listing /ftp/specs/archive 总纲 重点series Signalling protocols ("stage 3") - user equipment to network24 series信令Radio aspects25 series3G 基础LTE (Evolved UTRA), LTE-Adva…...
FFmpeg内存对齐简述
目录 引文 行字节数的计算 ffmpeg中的align ffmpeg中的linesize 内容参考 引文 在ffmpeg的使用过程中有时会发现align这个参数,那么这个参数代表什么意思,不同的值会产生什么影响呢,详见下文。 行字节数的计算 理解内存对齐之前首先要…...
手机号码归属地查询接口如何对接?(一)
一、什么是手机号码归属地接口? 通过手机号查询归属地信息、是否虚拟运营商等。 二、手机号码归属地接口适用哪些场景? 例如:市场营销领域 (1)精准营销:企业可以通过手机号归属地查询接口了解客户的大致…...
DDei在线设计器-加载数据
加载数据 本示例演示了怎样加载已有的JSON到设计器中。 如需了解详细的API教程以及参数说明,请参考DDei文档 外部数据JSON demo.vue <script setup lang"ts"> import DDeiEditorView from "ddei-editor"; import { DDeiCoreStandLayou…...
NetLLM: Adapting Large Language Models for Networking.
目录 NetLLM: Adapting Large Language Models for Networking.GlossaryNotesINTRODUCTIONThe Main Roadmap so farNew Opportunities and ChallengesDesign and Contributions BACKGROUNDLearning-Based Networking AlgorithmsLarge Language Models MOTIVATIONNETLLM DESIGNM…...
基于Yolov8面部七种表情检测与识别C++模型部署
表情识别 七种表情识别是一个多学科交叉的研究领域,它结合了心理学、认知科学、计算机视觉和机器学习等学科的知识和技术。 基本概念 表情的定义:表情是人们在情绪体验时面部肌肉活动的结果,是人类情感交流的基本方式之一。基本表情理论&a…...
未确认融资费用含义及会计处理流程
文章目录 一、含义二、会计处理流程2.1、初始计量2.2、后续计量2.3、报表列式 三、实务中的注意事项 一、含义 未确认融资费用: 由于企业现有资金不足,购买资产时选择分期支付款项,导致实际支付的款项大于资产的购入价值,两者的差额就是由于…...
Linux配置go程序为service后台开机自启动
1.编写需要启动的项目路径以及简单配置 sudo nano /etc/systemd/system/go.service#定义服务的元数据和依赖关系。 [Unit] #这是对服务的简短描述。 DescriptionMy Go Service #network.target 是一个虚拟目标,它表示网络服务已经初始化完成。该指令告诉 systemd 在…...
汇舟问卷:完成16份调查,挣了40美金,换算后美滋滋
这个世界有太多的人30岁,35岁以后,当初没有去做自己想做的工作,没有花时间去坚持想做的工作,他们在选择这份想做的事业的前提被自己的父母朋友爱人阻断了。 他们告诉你,要努力的做好现在的工作,争取升职…...
Nacos 202407月RCE漏洞(0day)与复现
免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 一、背景与…...
Dynamo修改共享参数绑定的分组——群问题整理005
Hello大家好!我是九哥~ 今天继续给大家分享一些短平快的小教程,是来自群里面的问题。 问题005:Dynamo修改共享参数绑定的分组 今天看到群里询问如何修改参数所在的分组,查了下API,项目参数是不行的,不过共享参数是允许ReInsert()的,那么就好办了。 然后在Document下…...
聚焦汽车软件开发与测试:静态代码扫描、单元测试与集成测试等方面的实践应用
2024年7月18-19日,龙智携汽车软件开发及管理解决方案创新亮相2024 ATC汽车软件与安全技术周。龙智技术支持部负责人&Atlassian认证专家叶燕秀、龙智功能安全高级工程师景玉鑫在活动主会场联合发表了精彩演讲,分享推动汽车软件开发与功能安全的创新实…...
「队列」实现FIFO队列(先进先出队列|queue)的功能 / 手撕数据结构(C++)
概述 队列,是一种基本的数据结构,也是一种数据适配器。它在底层上以链表方法实现。 队列的显著特点是他的添加元素与删除元素操作:先加入的元素总是被先弹出。 一个队列应该应该是这样的: --------------QUEUE-------------——…...
C++ STL中 `set` 和 `multiset` 简单对比
在 C STL 中,set 和 multiset 都是用于存储唯一或重复元素的关联容器,但它们在处理元素的唯一性和特性方面有显著的区别。以下是这两个容器的详细比较: 1. 数据结构 set:基于红黑树(自平衡的二叉搜索树)实…...
代码随想录算法训练营Day20 | Leetcode 235 二叉搜索树的最近公共祖先 Leetcode 701 二叉搜索树中的插入操作
Leetcode 235 二叉搜索树的最近公共祖先 题目链接:235. 二叉搜索树的最近公共祖先 - 力扣(LeetCode) 代码随想录题解:代码随想录 (programmercarl.com) 思路:相比普通二叉树更简单,因为二叉搜索树的节点…...
第九届世界3D渲染大赛:赛程安排、赛事规则
第九届世界3D渲染大赛即将拉开帷幕,汇聚全球顶尖CG艺术家,展现最具有视觉盛宴的CG创作。那么该赛事的行程如何安排呢,赛事规则又是什么呢?本篇整理了赛事安排、赛事规则等内容,希望帮助大家。 赛事主题:Kin…...
RocketMQ5.0 Consumer Group
消费者分组的概念 消费者分组(Consumer Group)是指一组消费同一类消息的消费者实例。每个消费者分组有一个唯一的名称,用于标识该分组。消费者分组的设计使得消息能够被多个消费者实例并行消费,同时确保每条消息只被一个消费者实例…...
vulnhub之serial
这次我们来做这个靶场 项目地址https://download.vulnhub.com/serial/serial.zip 使用vm新建虚拟机 以下为注意事项 第一步,收集资产 扫描靶场ip netdiscover -i eth0 -r 192.168.177.0/24 抓个包 扫描目录 看到了cookie中有一个user Tzo0OiJVc2VyIjoyOntzOj…...
卷积神经网络(CNN)简单原理与简单代码实现
卷积神经网络(CNN)简单原理与简单代码实现 卷积神经网络(CNN)简单原理基本原理卷积层(Convolutional Layer):激活层(Activation Layer):池化层(Po…...
基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...
屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...
