【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…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
Unity UGUI Button事件流程
场景结构 测试代码 public class TestBtn : MonoBehaviour {void Start(){var btn GetComponent<Button>();btn.onClick.AddListener(OnClick);}private void OnClick(){Debug.Log("666");}}当添加事件时 // 实例化一个ButtonClickedEvent的事件 [Formerl…...
