搜索
首页运维CentOScentos7 yum是什么

centos7 yum是什么

Mar 03, 2022 pm 05:52 PM
centos7yum

在centos7中,yum全称“Yellowdog update Modified”,是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。yum基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装。

centos7 yum是什么

本教程操作环境:centos7系统、thinkpad t480电脑。

什么是yum

yum是Yellowdog update Modified的简称,是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。

基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum的宗旨是自动化的升级、安装/移除rpm安装包(也就是说yum这个命令它的操作对象是RPM包),收集rmp的相关信息,检查依赖性,并提示用户解决。

yum的关键之处是要有可靠的repository,顾名思义这就是软件的仓库,它可以是http或者ftp站点,也可以是本地的软件池,但是必须包含rpm的header,rmp的header包括了rmp的各种信息,包括描述、功能、提供的文件、依赖性等,正是收集了这些信息,才能自动化的完成余下的任务。

yum本身就是运行在linux上的自动管理安装包的系统。yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了Linux 用户一直头痛的dependencies 的问题。

这一点上,yum 和apt 相同。apt 原为debian 的deb 类型软件管理所使用,但是现在也能用到RedHat 门下的rpm 了。

yum的特点

  1.可以同时配置多个资源库(repository)

  2.简洁的配置文件(一般配置文件是/etc/yum.conf)

  3.自动解决增加或者删除rpm包时遇到的依赖问题

  4.保持与rpm的数据库一致

yum的配置文件

  yum的配置文件,它的绝对路径一般是:/etc/yum.conf。yum的一切配置信息都存储在这个文件中,这是yum系统中最重要的内容。

  yum.conf一般分为main和repository两部分,但是默认情况下只有main部分。每一个yum.conf都只能有一个main部分。repository 部分定义了每个源/服务器的具体配置,可以有一到多个。常位于/etc/yum.repo.d 目录下的各文件中。

  使用cat /etc/yum.conf查看该文件的内容。

  1.cachedir:此项为yum下载的RPM包的缓存目录,yum在此存储下载的rpm包和数据库

  2.keepcache:缓存是否保存,1表示安装后保留软件包,0表示安装后删除软件包

  3.debuglevel:出错日志级别,级别为0-10,默认为2(只保留安装和删除记录)

  4.logfile:存放系统更新软件的记录,用户可以在该配置项配置的文件中检查自己在过去的日子都做了哪些更新

  5.pkgpolicy: 包的策略。一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repository中同时存 在,yum应该安装哪一个,如果是newest,则yum会安装最新的那个版本。如果是last,则yum会将服务器id以字母表排序,并选择最后的那个服务器上的软件安装。

  6.distroverp:指定一个软件包,yum会根据这个包判断你的发行版本,默认是RedHat-release,也可以是安装的任何针对自己发行版的rpm包。

  7.tolerent:也有1和0两个选项,表示yum是否容忍命令行发生与软件包有关的错误,比如你要安装1,2,3三个包,而其中3此前已经安装了,如果你设为1,则yum不会出现错误信息。默认是0。

  8.exactarch:有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用1686的包来升级。

  9.retries:网络连接发生错误后的重试次数,如果设为0,则会无限重试。

  10.obsoletes:这是一个update的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。

  11.gpgcheck:是否检查GPG(GNU Private Guard),一种密钥方式签名。

  12.plugins:否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件。

  13.installonly_limit:允许保留多少个内核包。

  14.exclude:屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。

  15.reposdir:该选项用户指定 .repo 文件的绝对路径。.repo 文件包含软件仓库的信息 (作用与 /etc/yum.conf 文件中的 [repository] 片段相同)。 reposdir=[包含 .repo 文件的目录的绝对路径]

  16.bugtracker_url:追踪bug路径

  使用:man 5 yum.conf           #可获得yum.conf的详解

yum的工作原理

yum的工作模式是C/S架构:

  • Server(yum仓库):依赖关系库、原文件、校验码文件。

  • Client端:yum客户端程序、配置文件(连接Server路径信息)。

执行yum命令时,会首先从”/etc/yum.repo.d”目录下的众多repo文件中取得软件仓库的地址并下载“元数据”,“元数据”包含注册于该软件仓库内所有软件包的包名及其所需的依赖环境等信息,yum得到这些信息后会和本地以后环境做对比,进而列出确认需要安装哪些包,并在用户确认后开始安装。
“元数据”由位于yum源服务器相关路径的repodata目录下的repomd.xml做索引。

yum系统的工作流程:

  • 服务器端:在服务器上面存放了所有的rpm软件包,然后以相关的功能去分析每个rpm文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。

  • 客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。 

.repo文件

  什么是repo文件? repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用!

  进入/etc/yum.repos.d/目录下,可以看到默认情况下有如下三个文件:

  其中CentOS-Base.repo 是yum 网络源的配置文件(一般都是用这个)

  CentOS-Debuginfo.repo  debug包尤其和内核相关的更新和软件安装

  CentOS-Media.repo 这个是使用光盘挂载后调用的文件(我机器上没有)

  CentOS-Vault.repo  这个是最近新版本的加入的老版本的yum源配置(没有。。。)

  epel.repo:EPEL(Extra Packages for Enterprise Linux)是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS等提供高质量软件包的项目。装上了 EPEL,就像在 Fedora 上一样,可以通过 yum install 软件包名,即可安装很多以前需要编译安装的软件、常用的软件或一些比较流行的软件,比如现在流行的nginx、htop、ncdu、vnstat等等,都可以使用EPEL很方便的安装更新。前可以直接通过执行命令: yum install epel-release 直接进行安装,如果不能安装,参考:

yum命令格式

yum的命令形式一般是如下:yum [options] [command] [package ...]

  其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。

1.OPTIONS

    --nogpgcheck:禁止进行gpg check;

            -y:    自动回答为“yes”;

            -q: 静默模式,不输出显示信息

            --disablerepo=repoidglob:临时禁用此处指定的repo;

            --enablerepo=repoidglob:临时启用此处指定的repo;

            --noplugins:禁用所有插件;

 2.常用COMMAND

        (1)显示仓库列表repolist

   # yum repolist [all|enabled|disabled]    [所有|可用的|不可用]

   参看:https://blog.csdn.net/xmm1981/article/details/78258176

推荐:《centos使用教程

以上是centos7 yum是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
CentOS:服务器环境的选择CentOS:服务器环境的选择May 09, 2025 am 12:21 AM

CentOS被广泛选择为服务器操作系统,因为其稳定、安全且免费。1.CentOS基于RHEL,提供企业级稳定性和长达10年的生命周期。2.它拥有丰富的软件包和强大的社区支持。3.安装简单,使用yum管理软件包,配置直观。4.通过命令行工具、定期备份和日志管理,提升服务器管理效率。5.通过调整内核和网络参数,优化服务器性能。

Centos的未来:下一步是什么?Centos的未来:下一步是什么?May 08, 2025 am 12:01 AM

CentOS未来将通过CentOSStream继续发展,CentOSStream不再是RHEL的直接克隆,而是RHEL开发的一部分,用户可提前体验RHEL新功能并参与开发。

CentOS:从开发到生产环境CentOS:从开发到生产环境May 07, 2025 am 12:08 AM

在CentOS中从开发到生产的过渡可以通过以下步骤实现:1.确保开发和生产环境一致,使用YUM包管理系统;2.使用Git进行版本控制;3.利用Ansible等工具自动化部署;4.使用Docker进行环境隔离。通过这些方法,CentOS提供了从开发到生产的强大支持,确保应用程序在不同环境中的稳定运行。

Centos流:继任者及其含义Centos流:继任者及其含义May 06, 2025 am 12:02 AM

CentOSStream是RHEL的前沿版本,提供开放平台让用户提前体验RHEL新功能。1.CentOSStream作为RHEL的上游开发和测试环境,连接RHEL和Fedora。2.通过滚动发布,用户可持续接收更新,但需关注稳定性。3.基本用法与传统CentOS相似,需频繁更新;高级用法可用于开发新功能。4.常见问题包括软件包兼容性和配置文件变化,需使用dnf和diff调试。5.性能优化建议包括定期清理系统、优化更新策略和监控系统性能。

Centos:检查生命终结背后的原因Centos:检查生命终结背后的原因May 04, 2025 am 12:12 AM

CentOS终结的原因是RedHat的商业策略调整、社区与商业的平衡以及市场竞争。具体表现为:1.RedHat通过CentOSStream加快RHEL开发周期,吸引更多用户参与RHEL生态。2.RedHat需要在支持开源社区和推动商业产品间找到平衡,CentOSStream能更好地将社区贡献转化为RHEL改进。3.面对激烈的Linux市场竞争,RedHat需要新策略保持企业级市场领先地位。

CENTOS关闭的原因:详细分析CENTOS关闭的原因:详细分析May 03, 2025 am 12:05 AM

RedHat关闭CentOS8.x并推出CentOSStream的原因是希望通过后者提供一个更接近RHEL开发周期的平台。1.CentOSStream作为RHEL的上游开发平台,采用滚动发布模式。2.这一转变旨在让社区更早接触RHEL新功能并提供反馈,加速RHEL开发周期。3.用户需要适应不断变化的系统,重新评估系统需求和迁移策略。

CentOS:使用此Linux发行版的优点CentOS:使用此Linux发行版的优点May 02, 2025 am 12:10 AM

CentOS在企业级Linux发行版中脱颖而出是因为其稳定性、安全性、社区支持和企业应用优势。1.稳定性:更新周期长,软件包经过严格测试。2.安全性:继承RHEL的安全特性,及时更新和详细公告。3.社区支持:庞大社区和详尽文档,快速响应问题。4.企业应用:支持容器技术如Docker,适合现代应用部署。

比较CentOS替换:功能和好处比较CentOS替换:功能和好处May 01, 2025 am 12:05 AM

CentOS的替代方案包括AlmaLinux、RockyLinux和OracleLinux。1.AlmaLinux提供RHEL兼容性和社区驱动开发。2.RockyLinux强调企业级支持和长期维护。3.OracleLinux提供Oracle特有的优化和支持。这些替代方案都具备与CentOS相似的稳定性和兼容性,适合不同需求的用户。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具