大数据讲课笔记1.7 软件包管理器RPM与yum
Posted howard2005
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据讲课笔记1.7 软件包管理器RPM与yum相关的知识,希望对你有一定的参考价值。
文章目录
- 零、学习目标
- 一、导入新课
- 二、新课讲解
- 三、归纳总结
- 四、上机操作
零、学习目标
- 能使用软件包管理器RPM查看、安装、更新、删除软件
- 能使用软件包管理器yum查看、安装、更新、删除软件
一、导入新课
- 在Linux系统上安装软件,利用软件包管理器可以简化操作。本次课程我们要学习两种软件包管理器:RPM和yum。
二、新课讲解
(一)使用RPM软件包管理器
- RPM(Redhat Package Manager )是一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。rpm 命令遵循GPL协议且功能强大的包管理,它可以建立、安装、请求、确认、和卸载软件包。间接地提升了Linux 的易用性。
1、RPM安装软件包
(1)安装单个rpm软件包
- 语法格式:rpm -ivh package_name
任务:利用RPM安装JDK8u221
- 下载JDK8u221的rpm软件包
- 链接:https://pan.baidu.com/s/1fYKNNM02GBh-cOUuajkBIg 提取码:yg53
- 上传JDK8u221的rpm软件包到虚拟机
/opt
目录
- 执行命令:
rpm -ivh jdk-8u221-linux-x64.rpm
- 执行命令:
java -version
,查看JDK版本
(2)安装多个多个rpm包
- 语法格式:
rpm -ivh package_name1, package_name2, package_name3
(允许使用通配符*
)
(3)安装网络上的rpm包
- 语法格式:
rpm -ivh http://website.name/path/pkgname.rpm
2、RPM 更新与升级软件包
(1)RPM更新软件包
- 语法格式:rpm -Uvh <package_name>
- 采用选项
-Uvh
,后面接的软件,如果原本未安装,则直接安装,原本已安装时,则直接升级
任务:将JDK8u221更新到JDK8u231
- 上传JDK8u231的rpm软件包到
/opt
目录
- 将JDK8u221升级到JDK8u231(-U: Update),执行命令:
rpm -Uvh jdk-8u231-linux-x64.rpm
- 执行命令:
java -version
,查看目前JDK版本
- 查看JDK8u231安装位置
(2)RPM升级软件包
- 语法格式:rpm -Fvh <pacakge_name>
- 采用选项
-Fvh
,后面接的软件,如果原本未安装,则不会安装,原本已安装时,则直接升级 - 将JDK8u231卸载,执行命令:
rpm -e jdk1.8-1.8.0_231-fcs.x86_64
任务:升级安装JDK8u231
- 采用
-Fvh
升级方式来安装JDK8u231
- 大家可以看到,根本没有安装JDK8u231。
- 如果要安装JDK8u231,可以有两种安装方式:(1)-ivh;(2)-Uvh,之前我们已经采用
-ivh
方式安装过JDK8u221,现在我们采用-Uvh
方式安装JDK8u231。
3、RPM查询软件包
(1)RPM 查询原理
- RPM在查询时,其实查询的地方是在
/var/lib/rpm
这个目录下的数据库文件。
(2)查询选项参数说明
选项参数 | 作用描述 |
---|---|
-q | (query)仅查询,后面接的软件名称是否有安装 |
-qa | (query all)列出所有已经安装在本机Linux系统上的软件名称 |
-qi | (query information)列出该软件的详细信息,包含开发商、版本和说明等 |
-ql | (query list)列出该软件所有的文件与目录所在完整文件名 |
-qc | (query config)列出该软件的所有配置文件 |
-qd | (query description)列出该软件的所有说明文件 |
-qR | (query relation)列出和该软件有关的相依软件所含的文件 |
-qf | (query file)由后面接的文件名,找出该文件属于哪一个已安装的软件 |
-qp | (query preview)查询某个RPM 文件内含有的信息 |
(3)实战练习
任务1、采用参数-q
进行查询
- 执行命令:
rpm -q jdk1.8-1.8.0_231-fcs.x86_64
- 如果查询的软件已安装,那么显示该软件的全名,否则显示:未安装软件包 XXX(英文版:package XXX is not installed)
任务2、采用参数-qa
进行查询
- 查询已安装的RPM软件的前五个和最后五个
- 查询某个或某些已安装的rpm软件
任务3、采用参数-qi
进行查询
- 查询已安装的JDK8u231的详情,执行命令:
rpm -qi jdk1.8-1.8.0_231-fcs.x86_64
任务4、采用参数-ql
进行查询
- 查询已安装的JDK8u231的文件列表,但是文件实在太多,只抓取前10个
- 执行命令:
rpm -ql jdk1.8-1.8.0_231-fcs.x86_64 | head -10
任务5、采用参数-qc
进行查询
- 查询已安装的JDK8u231的配置文件,执行命令:
rpm -qc jdk1.8-1.8.0_231-fcs.x86_64
任务6、采用参数-qR
进行查询
- 查询已安装的JDK8u231所依赖的软件,执行命令:
rpm -qR jdk1.8-1.8.0_231-fcs.x86_64
任务7、采用参数-qf
进行查询
- 查询文件
/usr/java/jdk1.8.0_231-amd64/man/man1/xjc.1
属于哪一个已安装的软件 - 执行命令:
rpm -qf /usr/java/jdk1.8.0_231-amd64/man/man1/xjc.1
- 说明:-qf参数后面接的文件名一定是安装的原始路径,如果再将它拷贝到其它位置,则无法判断该文件属于那个软件。
4、RPM卸载软件包
(1)命令格式
- rmp -e # e: erase(删除)
(2)操作实例
任务:卸载已安装的JDK8u231
- 执行命令:
rpm -e jdk1.8-1.8.0_231-fcs.x86_64
- 执行命令:
java -version
,就会报错
(二)使用yum软件包管理器
1、yum客户端
- 客户端每次使用yum调用install或者search的时候,都会去解析
/etc/yum.repos.d
下面所有以.repo
结尾的文件,这些配置文件指定了yum服务器的地址。 - 执行命令:
ll /etc/yum.repos.d
2、yum服务器端
- 所有要发行的rpm包都放在yum服务器上以提供别人来下载,rpm包根据kernel的版本号,cpu的版本号分别编译发布。
- yum服务器只要提供简单的下载就可以了,ftp或者httpd的形式都可以。
- yum服务器有一个最重要的环节就是整理出每个rpm包的基本信息,包括rpm包对应的版本号,conf文件,binary信息,以及很关键的依赖信息。
- 在yum服务器上提供了createrepo工具,用于把rpm包的基本概要信息做成一张"清单",这张"清单"就是描述每个rpm包的spec文件中信息。
3、yum命令说明表
操作 | 命令 |
---|---|
安装软件 | yum install XXX yum -y install XXX |
搜索软件 | yum search XXX |
列出软件 | yum list |
查询软件 | yum info XXX |
更新软件 | yum update XXX |
卸载软件 | yum remove XXX |
4、yum命令实战练习
任务1、安装java
- 执行命令:
yum -y install java
- 执行命令:
java -version
,查看JDK版本
任务2、搜索java
- 执行命令:
yum search java
任务3、列出java
- 执行命令:
yum list | grep java
任务4、查询java
- 执行命令:
yum info java-1.8.0-openjdk.x86_64
任务5、更新java
- 执行命令:
yum update java
任务6、卸载java
- 执行命令:
yum -y remove java
三、归纳总结
- 回顾本节课所讲的内容,并通过提问的方式引导学生解答问题并给予指导。
四、上机操作
- 形式:单独完成
- 题目:使用rpm和yum软件包管理器
- 要求:按照讲课笔记要求完成,记录操作过程,写一篇CSDN博客
课堂练习1
- 下载jdk-8u231-linux-x64.rpm
- 利用rmp安装jdk的rpm包
- 编写Java程序,功能是显示“Hello RPM”
- 利用rpm卸载jdk
课堂练习2
- 利用yum安装jdk
- 编写Java程序,功能是显示“Hello yum”
- 利用yum卸载jdk
以上是关于大数据讲课笔记1.7 软件包管理器RPM与yum的主要内容,如果未能解决你的问题,请参考以下文章
大数据与云计算学习计划 云计算系统管理 6 Linux中RPM软件包管理操作 Yum软件包仓库操作(概念与实操)