Linux:RPM软件包管理以及yum软件包仓库

挂载光驱设备

在这里插入图片描述
在这里插入图片描述

RPM软件包管理

在这里插入图片描述

RPM软件包简介

在这里插入图片描述
在这里插入图片描述
区分软件名和软件包名
软件名:firefox
软件包名:firefox-52.7.0-1.el7.centos.x86_64.rpm
在这里插入图片描述

查询软件信息

在这里插入图片描述

	查询软件(参数为软件名)
]# rpm  -qa    #当前系统中所有已安装的软件包
]# rpm  -qa  |  grep  firefox      
]# rpm  -q   firefox    #查看firefox是否安装
firefox-52.7.0-1.el7.centos.x86_64
]# rpm  -q   httpd       #httpd提供web服务的软件
未安装软件包 httpd
]# rpm  -q   bash
bash-4.2.46-30.el7.x86_64


]# rpm  -qi   firefox       #查询软件信息(查询已安装)
]# rpm  -ql   firefox       #查询软件安装了哪些内容(安装清单)
]# rpm  -ql    firefox   |   less

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查询某个目录或文件是哪个RPM包带来的

•	查询某个目录或文件是哪个RPM包带来的
–	格式:rpm  -qf  [文件路径]…
–	即使目标文件被删除,也可以查询
[root@localhost ~]# which  vim   #查询命令对应的程序文件
/usr/bin/vim
[root@localhost ~]# rpm -qf  /usr/bin/vim
vim-enhanced-7.4.160-4.el7.x86_64
[root@localhost ~]# rpm -q   vim-enhanced
vim-enhanced-7.4.160-4.el7.x86_64
[root@localhost ~]# rpm -qf    /etc/passwd
[root@localhost ~]# rpm -qf   /usr/bin/firefox

在这里插入图片描述
在这里插入图片描述

which查询命令对应的程序文件位置

查询软件包(参数为软件包名)

	查询软件包(参数为软件包名)
]# rpm  -q   vsftpd     #查询vsftpd软件是否安装
未安装软件包 vsftpd 
]# ls /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

查询软件包的安装清单:  
]# rpm -qpl  /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
查询软件包信息
]# rpm -qpi /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

在这里插入图片描述
在这里插入图片描述
注:使用ql查询已安装的软件,参数是软件名;qpl的参数是软件包名,用于查询软件包的信息。

导入红帽签名信息

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装软件包

	安装RPM软件
–	格式:rpm   -i   RPM包文件...
•	辅助选项
–	 -v:显示细节信息
–	 -h:以#号显示安装进度
–	 --force:强制安装、覆盖安装
–	 --test:测试安装,不做真实安装动作

]# rpm  -q   vsftpd        #查询当前的系统是否安装了该软件
未安装软件包 vsftpd 

]# rpm  -ivh  /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm 
]# rpm  -q  vsftpd    #查询当前的系统是否安装了该软件
vsftpd-3.0.2-22.el7.x86_64

]# rpm -e vsftpd            #卸载软件
]# rpm -q vsftpd            #查询当前的系统是否安装了该软件
未安装软件包 vsftpd

	--force:强制安装、覆盖安装
]# which   hostname
/usr/bin/hostname
]# rm   -rf   /usr/bin/hostname
]# hostname
bash: hostname: 未找到命令...

]# rpm -qf   /usr/bin/hostname     #查看由哪个软件包产生
hostname-3.13-3.el7.x86_64

]# rpm  -ivh   --force   /mnt/Packages/hostname-3.13-3.el7.x86_64.rpm

在这里插入图片描述

	解决依赖关系
–	先安装/卸载要求的包
–	如果RPM包齐全但比较多,可以用通配符 *
•	忽略依赖关系(不推荐)
–	可能会导致软件运行异常
–	辅助选项 --nodeps
常见依赖关系的报错:
[root@localhost ~]# rpm -ivh /mnt/Packages/bind-chroot-9.9.4-61.el7.x86_64.rpm 
错误:依赖检测失败:
	bind = 32:9.9.4-61.el7 被 bind-chroot-32:9.9.4-61.el7.x86_64 需要

Yum软件包管理

解决依赖关系

	解决依赖关系
–	先安装/卸载要求的包
–	如果RPM包齐全但比较多,可以用通配符 *
•	忽略依赖关系(不推荐)
–	可能会导致软件运行异常
–	辅助选项 --nodeps
常见依赖关系的报错:
[root@localhost ~]# rpm -ivh /mnt/Packages/bind-chroot-9.9.4-61.el7.x86_64.rpm 
错误:依赖检测失败:
	bind = 32:9.9.4-61.el7 被 bind-chroot-32:9.9.4-61.el7.x86_64 需要

构建Yum软件包仓库
作用:自动解决依赖关系安装软件
服务:自动解决依赖关系安装软件

yum机制概述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

服务端(本机):  1.众多的软件   2.仓库数据文件(repodata) 3.FTP协议 或 http协议        
本地Yum仓库:服务端需要有光盘内容即可

客户端(本机):指定服务端位置
–	仓库配置:/etc/yum.repos.d/*.repo
–	错误的文件会影响正确的文件

服务端(光盘挂载即可)

客户端:配置yum仓库信息

在这里插入图片描述
有一个.repo文件写错,会影响其他正确的.repo文件

客户端文件配置内容:
–	[源名称] :自定义名称,具有唯一性
–	name:仓库的描述信息
–	baseurl:指定YUM服务端的位置 
–	enabled:是否启用
–	gpgcheck:是否验证红帽签名
–	gpgkey:用于RPM软件包验证的密钥文件

完整示例:
]# vim   /etc/yum.repos.d/mydvd.repo 
[test01]
name=test00000001
baseurl=file:///mnt
enabled=1
gpgcheck=1        
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7


]# yum   repolist      #列出仓库信息
常见错误:
1.没有挂载光驱设备     ls  /mnt  #查看挂载点是否有光盘内容
2.错误的文件会影响     ls  /etc/yum.repos.d/
3.写错了    

总结:本地Yum仓库构建方法(自己为自己提供服务)
1.服务端:显示光盘的内容,挂载光驱设备
2.客户端:书写客户端配置文件,指定服务端位置
3.执行流程:  yum命令--->/etc/yum.repos.d/*.repo--->baseurl=file:///mnt

在这里插入图片描述
在这里插入图片描述

yum使用

[root@localhost ~]# yum  -y  install   httpd
[root@localhost ~]# rpm  -q  httpd

[root@localhost ~]# yum  -y  install   bind-chroot
[root@localhost ~]# rpm  -q   bind-chroot

[root@localhost ~]# yum  -y  install   sssd
[root@localhost ~]# rpm  -q   sssd

[root@localhost ~]# yum  -y   install   gcc
[root@localhost ~]# rpm  -q   gcc

[root@localhost ~]# yum   -y   install   xorg-x11-apps
[root@localhost ~]# rpm   -q   xorg-x11-apps
[root@localhost ~]# rpm  -ql   xorg-x11-apps   |   grep bin
[root@localhost ~]# xeyes

安装软件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查看版本

在这里插入图片描述

示例:安装xorg-x11-apps

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

卸载软件

在这里插入图片描述

查询

安装软件和卸载软件使用yum,查询软件使用rpm

[root@localhost ~]# yum  list   ftp   #查询仓库是否有ftp软件
可安装的软件包      #表示当前系统没有安装该软件
ftp.x86_64        0.17-67.el7         nsd2010

[root@localhost ~]# yum   list   httpd
[root@localhost ~]# yum   search   ftp   #包含ftp就匹配

仓库中哪个软件包产生该文件:
]# yum    provides    /usr/bin/hostname 
]# yum    provides    /etc/passwd  

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

覆盖安装

]# which   hostname
/usr/bin/hostname
]# rm   -rf   /usr/bin/hostname
]# hostname
bash: hostname: 未找到命令...

]# yum  provides  /usr/bin/hostname
]# yum -y  reinstall  hostname    #重新安装hostname软件
]# ls  /usr/bin/hostname
]# hostname

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

清空缓存

[root@localhost ~]# yum  clean   all
[root@localhost ~]# yum   repolist
[root@localhost ~]# yum   repolist

在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WebGL颜色与纹理

WEBGL中的着色器变量包括以下种类: 属性变量(Attribute Variables):这些变量用于接收从应用程序中传递的顶点数据,比如顶点位置和颜色,是只读的不可修改。统一变量(Uniform Variables&#xff…

AI浪潮新崛起:借助AI+实景/视频直播创新魅力,开启无人自动直播新时代!

AI浪潮新崛起:借助AI实景/视频直播创新魅力,开启无人自动直播新时代! 在科技日新月异的今天,人工智能(AI)已不再仅仅是科幻电影中的桥段,它正以不可阻挡之势渗透到我们生活的方方面面&#xff…

力扣718-最长重复子数组(Java详细题解)

题目链接:718. 最长重复子数组 - 力扣(LeetCode) 前情提要: 因为本人最近都来刷dp类的题目所以该题就默认用dp方法来做。 dp五部曲。 1.确定dp数组和i下标的含义。 2.确定递推公式。 3.dp初始化。 4.确定dp的遍历顺序。 5…

【编程底层原理】Java常用读写锁的使用和原理

一、引言 在Java的并发世界中,合理地管理对共享资源的访问是至关重要的。读写锁(ReadWriteLock)正是一种能让多个线程同时读取共享资源,而写入资源时需要独占访问的同步工具。本文将带你了解读写锁的使用方法、原理以及它如何提高…

这8款AI论文工具帮你一键搞定!ai论文一键生成任务书

在当今学术研究和论文写作领域,AI技术的应用已经成为一种趋势。通过智能算法和大数据分析,AI工具能够帮助学者和学生提高写作效率、优化内容结构,并确保论文的原创性和质量。以下是8款值得推荐的AI论文工具,其中特别推荐千笔-AIPa…

选择排序(C语言实现)

目录 1.基本思想 2.代码实现 代码思路 代码实现 代码测试 3.复杂度分析 1)时间复杂度 2)空间复杂度 4.特性总结 1.基本思想 选择排序是一种简单直观的比较排序算法。该算法的基本思想是在每一轮中选出当前未排序部分的最小(或最大&a…

通过 LabVIEW 正则表达式读取数值(整数或小数)

在LabVIEW开发中,字符串处理是一个非常常见的需求,尤其是在处理包含复杂格式的数字时。本文通过一个具体的例子来说明如何利用 Match Regular Expression Function 和 Match Pattern Function 读取并解析字符串中的数字,并重点探讨这两个函数…

日期和时间类【Date】【Calendar日历类】【LocalDate】Date-Time API详解

我们先来介绍一下与时间相关的基础知识。 GMT - 格林尼治标准时间(Greenwich Mean Time),简称GMT,实际上与世界时UT(universal time )基本一致。 UTC - 协调世界时(Universal Time Coordinated&…

matlab恢复默认窗口布局

1.点击主页,选择布局 2.选择默认,即可恢复到默认的窗口布局

Linux系统上搭建Vulhub靶场

Linux系统上搭建Vulhub靶场 ​vulhub​ 是一个开源的漏洞靶场,它提供了各种易受攻击的服务和应用程序,供安全研究人员和学习者测试和练习。要在 Linux 系统上安装和运行 vulhub​,可以按照以下步骤进行: 1. 安装 Docker 和 Docke…

C#软键盘设计字母数字按键处理相关事件函数

应用场景:便携式设备和检测设备等小型设备经常使用触摸屏来代替键盘鼠标的使用,因此在查询和输入界面的文本或者数字输入控件中使用软件盘来代替真正键盘的输入。 软键盘界面:软键盘界面实质上就是一个普通的窗体上面摆放了很多图片按钮&…

二叉树---java---黑马

二叉树 遍历 遍历分两种 广度优先遍历 尽可能先访问距离根节点最近的节点,也称之为层序遍历。 深度优先遍历 对于二叉树,进一步分为三种 pre-order前序遍历,对于每一颗子树,先访问该节点,然后是左子树&#xf…

探索RESTful风格的网络请求:构建高效、可维护的API接口【后端 20】

探索RESTful风格的网络请求:构建高效、可维护的API接口 在当今的软件开发领域,RESTful(Representational State Transfer)风格的网络请求已经成为构建Web服务和API接口的标配。RESTful风格以其简洁、无状态、可缓存以及分层系统等…

利用影刀实现批量发布文章的RPA流程(附视频演示)

前言 大家好,我是小智。在这篇文章中,我将分享一个实战案例,展示如何利用影刀实现批量发布文章的RPA流程。这里主要介绍其中一个简单步骤,其它步骤将通过视频演示。有使用方面的疑问可以留言。 影刀是一款强大的自动化工具&#x…

Java项目实战II基于Java+Spring Boot+MySQL的网上租贸系统设计与实现(开发文档+源码+数据库)

目录 一、前言 二、技术介绍 三、系统实现 四、论文参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 "随着…

简单的云存储靶场

搭建靶场 我这里使用tx云,请自行搭建 https://shuihui2211-1329809954.cos.ap-nanjing.myqcloud.com 复现 私有读写 访问权限为私有读写时,我们访问url则会出现如下提示 目录遍历 漏洞成因 将policy权限设置为所有操作时 复现 我这里上传了一…

java-----异常

目录 异常:代表程序出现的问题 运行时异常和编译时异常的区别? 异常的作用: 异常的处理方式: 异常中常见的方法: 抛出异常: 自定义异常: 异常:代表程序出现的问题 Exception:叫做异常,代表程序可能出现的问题。…

Python 连接mysql数据库,并且执行查询

之前一直在写Java,但是随着python的崛起,自己也被慢慢的带入到了这样的一个阵营,学习python,了解机器学习 曾经有一个.... 不谈曾经,现在的我是一个小菜鸟,用学习Java实现业务的需求来学习python 项目的目…

科研绘图系列:R语言树结构聚类热图(cluster heatmap)

文章目录 介绍加载R包导入数据数据预处理画图修改图形导出数据系统信息介绍 热图结合树结构展示聚类结果通常用于展示数据集中的模式和关系,这种图形被称为聚类热图或层次聚类热图。在这种图中,热图部分显示了数据矩阵的颜色编码值,而树结构(通常称为树状图或聚类树)则显…

iptables限制网速

1、使用hashlimit来限速 #从eth0网卡进入INPUT链数据,使用模块hashlimit 限制网速为100kb/s或2mb/s,超过限制的数据包会被DROP。OUTPUT链同理,mode为srcip,有4个mode选项: srcip(默认匹配每个源地址IP,配置指定源地址…