【Linux开发工具】yum命令详解


📙 作者简介 :RO-BERRY
📗 学习方向:致力于C、C++、数据结构、TCP/IP、数据库等等一系列知识
📒 日后方向 : 偏向于CPP开发以及大数据方向,欢迎各位关注,谢谢各位的支持


在这里插入图片描述


目录

  • 1.概念
  • 2.yum的配置信息
  • 3.yum的使用
    • yum升级更新软件
    • yum下载安装软件
    • 用yum查询想安装的软件


1.概念

🍁yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

在Linux我们也要使用工具/指令/程序/软件,要进行这些东西的安装、检查、卸载等
安装软件的方式:

  • 1.源代码安装—交叉编译的工作
    下载到程序的源代码, 并进行编译, 得到可执行程序
  • 2.rpm包直接安装
    把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安
    装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.
  • 3.使用yum安装工具

通俗的话讲:yum是我们Linux预装的一个指令,能搜索,下载,安装对应的软件
手机上应用市场以及应用商店—也是一个app—厂商内置的,下载的都是正版的,不会有风险和病毒,可以保护用户,同样的我们的yum相当于Linux下的应用商店。

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

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

概括了部分常用的命令包括:

>自动搜索最快镜像插件:   yum install yum-fastestmirror
安装yum图形窗口插件:    yum install yumex
查看可能批量安装的列表: yum grouplist
1 安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2 更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包
4 删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况
5 清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers

✉比如,要安装游戏程序组,首先进行查找:
yum grouplist
可以发现,可安装的游戏程序包名字是”Games and Entertainment“,这样就可以进行安装:
yum groupinstall "Games and Entertainment"
所 有的游戏程序包就自动安装了。在这里Games and Entertainment的名字必须用双引号选定,因为linux下面遇到空格会认为文件名结束了,因此必须告诉系统安装的程序包的名字是“Games and Entertainment”而不是“Games"。
此外,还可以修改配置文件/etc/yum.conf选择安装源。可见yum进行配置程序有多方便了吧。更多详细的选项和命令,当然只要在命令提示行下面:man yum

Yum 有以下特点:

可以同时配置多个资源库(Repository)
简洁的配置文件(/etc/yum.conf)
自动解决增加或删除rpm包时遇到的倚赖性问题
使用方便
保持与RPM数据库的一致性

🖍yum,是Yellow dog Updater Modified的简称,起初是由yellow dog这一发行版的开发者Terra Soft研发,用python写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke开发团队进行改进,遂有此名。yum的宗旨是自动化地升级,安装/移除rpm包,收集rpm包的相关信息,检查依赖性并自动提示用户解决。yum的关键之处是要有可靠的repository,顾名思义,这是软件的仓库,它可以是http或ftp站点, 也可以是本地软件池,但必须包含rpm的header, header包括了rpm包的各种信息,包括描述,功能,提供的文件,依赖性等.正是收集了这些 header并加以分析,才能自动化地完成余下的任务。

2.yum的配置信息

⭐yum的一切配置信息都储存在一个叫yum.conf的配置文件中,通常位于/etc目 录下,这是整个yum系统的重中之重,我在我的Linux中查看了这一文件,大家一起来看下:
在这里插入图片描述
😶下面简单的对这一文件作简要的说明:

cachedir:yum缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum。
debuglevel:除错级别,0──10,默认是2
logfile:yum的日志文件,默认是/var/log/yum.log。
exactarch:有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用686的包来升级。
gpgchkeck: 有1和0两个选择,分别代表是否是否进行gpg校验,如果没有这一项,默认好像也是检查的。


3.yum的使用

yum升级更新软件

🎄首先用yum来升级软件,yum的操作大都须有超级用户的权限,当然可以用sudo。
yum update,这一步是必须的,yum会从服务器的header目录下载rpm的header,放在本地的缓存中,这可能会花费一定的时间,但比起yum 给我们带来方便,这些时间的花费又算的了什么呢?header下载完毕,yum会判断是否有可更新的软件包,如果有,它会询问你的意见,是否更新,直接输入y即可,把系统始终up to date总是不错的,这时yum开始下载软件包并使用调用rpm安装,这可能要一定时间,取决于要更新软件的数目和网络状况,万一网络断了,也没关系,再进行一次就可以了。升级完毕,以后每天只要使用yum check-update检查一下有无跟新,如果有,就用yum update进行跟新,时刻保持系统为最新,堵住一切发现的漏洞。用yum update packagename 对某个单独包进行升级。
现在简单的把yum软件升级的一些命令罗列一下:

1.列出所有可更新的软件清单
命令:yum check-update
2.安装所有更新软件
命令:yum update
3.仅安装指定的软件
命令:yum install
4.仅更新指定的软件
命令:yum update
5.列出所有可安裝的软件清单
命令:yum list

yum下载安装软件

🎄安装的命令是:

yum install xxx,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断

🎄删除的命令是

yum remove xxx,同安装一样,yum也会查询数据库,给出解决依赖关系的提示。

1.用YUM安装软件包
命令:yum install
下载安装需要root的权限,如果不是root权限需要我们升权限操作,在指令前加sudo,在这里install不只是下载还带有安装的操作

2.用YUM删除软件包
命令:yum remove
我们卸载的时候系统默认会询问我们是否要卸载这个软件
我们也可以使用yum -y remove lrzsz
直接卸载不询问

用yum查询想安装的软件

🧨我们常会碰到这样的情况,想要安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时yum的查询功能就起作用了。你可以用 yum search keyword这样的命令来进行搜索,比如我们要则安装一个Instant Messenger,但又不知到底有哪些,这时不妨用 yum search messenger这样的指令进行搜索,yum会搜索所有可用rpm的描述,列出所有描述中和messeger有关的rpm包,于是我们可能得到 gaim,kopete等等,并从中选择。
有时我们还会碰到安装了一个包,但又不知道其用途,我们可以用yum info packagename这个指令来获取信息。

1.使用YUM查找软件包
命令:yum search
2.列出所有可安装的软件包
命令:yum list
3.列出所有可更新的软件包
命令:yum list updates
4.列出所有已安装的软件包
命令:yum list installed
5.列出所有已安装但不在 Yum Repository 內的软件包
命令:yum list extras
6.列出所指定的软件包
命令:yum list
7.使用YUM获取软件包信息
命令:yum info
8.列出所有软件包的信息
命令:yum info
9.列出所有可更新的软件包信息
命令:yum info updates
10.列出所有已安裝的软件包信息
命令:yum info installed
11.列出所有已安裝但不在 Yum Repository 內的软件包信息
命令:yum info extras
12.列出软件包提供哪些文件
命令:yum provides

示例:
我们输入yum list
就可以看到我们Linux所有支持安装的包以列表的形式打印出来,但是我们不需要看到所有这些信息,我们就可以使用搜索功能
我们输入
yum list | grep lrzsz
我们可以在列表里搜索包含lrzsz的安装包

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

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

相关文章

HTTP基本概念-HTTP 是什么?

资料来源 : 小林coding 小林官方网站 : 小林coding (xiaolincoding.com) HTTP 是什么? HTTP 是超文本传输协议,也就是HyperText Transfer Protocol。 能否详细解释「超文本传输协议」? HTTP 的名字「超文本协议传输」,它可以拆成三个部分: 超文本传输…

《21天精通IPv4 to IPv6》第15天:IPv6的扩展技术——如何扩展IPv6?

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

【闲谈】开源软件的崛起与影响

随着信息技术的快速发展,开源软件已经成为软件开发的趋势,并产生了深远的影响。开源软件的低成本、可协作性和透明度等特点,使得越来越多的企业和个人选择使用开源软件,促进了软件行业的繁荣。然而,在使用开源软件的过…

arduino uno R3驱动直流减速电机(蓝牙控制)

此篇博客用于记录使用arduino驱动直流减速电机的过程,仅实现简单的功能:PID调速、蓝牙控制 1、直流减速电机简介2、DRV8833电机驱动模块简介3、HC-05蓝牙模块简介电机转动测试4、PID控制5、蓝牙控制电机 1、直流减速电机简介 我在淘宝购买的电机&#x…

2024年2月13日 十二生肖 今日运势

小运播报:2024年2月13日,星期二,农历正月初四 (甲辰年丙寅月丁未日),法定节假日。 红榜生肖:马、兔、猪 需要注意:狗、鼠、牛 喜神方位:正南方 财神方位:…

【C++】STL之string 超详解

目录 1.string概述 2.string使用 1.构造初始化 2.成员函数 1.迭代器 2.容量操作 1.size和length 返回字符串长度 2.resize 调整字符串大小 3.capacity 获得字符串容量 4.reserve 调整容量 5.clear 清除 6.empty 判空 3.string插入、追加 、拼接 1.运算…

【激光SLAM】激光雷达数学模型和运动畸变去除

目录 概念介绍激光雷达传感器介绍测距原理三角测距飞行时间(TOF) 激光雷达数学模型介绍光束模型(beam model)似然场模型(likelihood model) 运动畸变介绍 畸变去除纯估计方法(ICP Variants)ICP方法VICP&…

生态位模拟——草稿笔记

文章目录 前言ENM初识一、所需软件安装1.1. 下载ArcGIS软件:1.2. 下载 MaxEnt软件:1.3. 下载ENMtools: 二、数据准备与处理2.1. 物种分布数据2.2. 环境因子数据2.3. 地图数据2.4. 物种分布点去冗余2.4.1. 使用spThin包中的thin函数2.4.2. 或者…

利用Python和pandas库进行股票技术分析:移动平均线和MACD指标

利用Python和pandas库进行股票技术分析:移动平均线和MACD指标 介绍准备工作数据准备计算移动平均线计算MACD指标结果展示完整代码演示 介绍 在股票市场中,技术分析是一种常用的方法,它通过对股票价格和交易量等历史数据的分析,来…

FANUC机器人如何清除示教器右上角的白色感叹号?

FANUC机器人如何清除示教器右上角的白色感叹号? 如下图所示,示教器上显示白色的感叹号,如何清除呢? 具体可参考以下步骤: 按下示教器上白色的“i”键,如下图所示, 如下图所示,按…

配置DNS正反向解析服务!!!!

一.准备工作 #关闭防火墙和selinux,或者允许服务通过 [rootnode ~]# nmcli c mod ens32 ipv4.method manual ipv4.address 192.168.32.133/24 ipv4.gateway 192.168.32.2 ipv4.dns 192.168.32.132 [rootnode ~]# nmcli c reload [rootnode ~]# nmcli c up ens32[rootnode ~]# …

【计算几何】确定两条连续线段向左转还是向右转

确定两条连续线段向左转还是向右转 目录 一、说明二、算法2.1 两点的叉积2.2 两个段的叉积 三、旋转方向判别3.1 左转3.2 右转3.3 共线判别 一、说明 如果是作图,或者是判别小车轨迹。为了直观地了解,从当前点到下一个点过程中,什么是左转、…