Linux安装RPM包或源码包解析 及 课后习题解答----工坊学习记录--3.3

本文主要是介绍Linux安装RPM包或源码包解析 及 课后习题解答----工坊学习记录--3.3,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、安装 RPM 包
    • 1.RPM工具
      • 1.1 安装 RPM 包
      • 1.2 升级 RPM 包
      • 1.3 卸载 RPM 包
      • 1.4 查询一个包是否已安装
      • 1.5 得到一个已安装的RPM包的相关信息
      • 1.6 列出一个 RPM 包的安装文件
      • 1.7 列出某个文件属于哪个RPM包
    • 2.yum工具
      • 2.1 列出所有可用的安装包
      • 2.2 搜索 RPM 包
      • 2.3安装RPM包
      • 2.4 卸载RPM包
      • 2.5 升级RPM包
      • 2.6 使用本地光盘制作yum源
    • 3. 源码包
  • 二、课后习题

一、安装 RPM 包

1.RPM工具

RPM是Red Hat Package Manager的缩写,由Red Hat公司开发。它是以一种数据库记录的方式将我们所需要的套件安装到Linux主机的一套管理程序。也就是说,你的Linux系统中存在着一个关于RPM的数据库,它记录了安装的包以及包与包之间的依赖关系。
 
如果你的虚拟机光驱中还有系统安装盘镜像,就可以通过执行如下命令把光驱挂载到/mnt目录下。先检查一下VMware右下角的小光驱图标是否点亮,如果没有,点击一下,再点击“连接”就可以点亮它。当挂载光驱后,会在/mnt/Packages目录下看到很多后缀为.rpm的文件,这些文件就是RPM包。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
 

1.1 安装 RPM 包

安装RPM包的命令如下:
在这里插入图片描述

  • -i:表示安装。
  • -v:表示可视化。
  • -h:表示显示安装进度。
    另外,在安装RPM包时,常用的附带参数还包括如下几项。
  • --force:表示强制安装,即使覆盖属于其他包的文件也要安装。
  • --nodeps:表示当要安装的RPM包依赖于其他包时,即使其他包没有安装,也要安装这个包。
     

1.2 升级 RPM 包

升级RPM包的命令为 rpm -Uvh filename,其中 -U 选项表示升级
 

1.3 卸载 RPM 包

卸载RPM包的命令为 rpm -e filename。卸载时,-e选项后面的filename和安装时是有区别的。安装时,是把一个存在的文件作为参数,而卸载时只需要包名即可。
在这里插入图片描述
 

1.4 查询一个包是否已安装

查询一个包的命令为 rpm -q RPM包名,这里的“包名”是不带平台信息和后缀名的。示例命令如下:
在这里插入图片描述
 

1.5 得到一个已安装的RPM包的相关信息

要得到一个已安装RPM包的相关信息,可以使用命令rpm-qi包名,这里也不需要加平台信息和后缀名。示例命令如下:
在这里插入图片描述
 

1.6 列出一个 RPM 包的安装文件

列出一个RPM包的安装文件的命令为rpm -ql包名,示例命令如下:
在这里插入图片描述
 

1.7 列出某个文件属于哪个RPM包

列出某个文件属于哪个RPM包的命令为rpm-qf文件的绝对路径,示例命令如下:
在这里插入图片描述
 

2.yum工具

2.1 列出所有可用的安装包

使用yum list命令,可以列出所有的RPM包资源,如下所示:
在这里插入图片描述

从上例中可以看到,有 mirrors.njupt.edu.cn 信息出现,这是在告诉用户,它是从 mirrors.njupt.edu.cn 这里下载到的RPM包资源。从上例中还可以看到,最左侧是RPM包名,中间是版本信息,最右侧是安装信息。
如果已安装,最右侧就显示@base、@updates或者@anaconda,它们前面都会有一个@符号,这很好区分。如果未安装,则显示base或者anaconda;如果RPM包已安装但需要升级,则显示updates。
如果你仔细看看,就会发现yumlist命令会先列出已经安装的包(installed package),然后再列出可以安装的包(available package)。

 

2.2 搜索 RPM 包

搜索RPM包的命令为 yum search [相关关键词],示例命令如下:
在这里插入图片描述
 

2.3安装RPM包

安装RPM包的命令为yum install [-y] [RPM包名],如果不加-y选项,则会列出需要安装的东西,再询问是否安装。示例命令如下:
在这里插入图片描述
在这里插入图片描述
 

2.4 卸载RPM包

卸载RPM包的命令为yum remove [-y] [RPM包名],示例命令如下:

在这里插入图片描述
卸载和安装一样,也可以直接加上-y选项,从而省略与用户交互的那一步。这里需要注意一下,卸载某个RPM包时一定要看清楚,不要连其他重要的RPM包也一起卸载了,以免影响正常的业务,
所以使用yum remove命令卸载包时,还是不要加 -y 选项了。
 

2.5 升级RPM包

升级RPM包的命令为yum update [-y] [RPM包],示例命令如下:
在这里插入图片描述
在这里插入图片描述
 

2.6 使用本地光盘制作yum源

这里我使用来自书籍《CentOS系统配置与管理》的方法:

1.mount /dev/cdrom /mnt/ 挂载光盘;
2.cd /etc/yum.repos.d/ 进入yum配置的目录下;
3.mkdir /etc/yum.repos.d/bak 建立备份文件;
4.mv /etc/yum.repos.d/Cent /etc/yum.repos.d//bak/ 备份原来的配置文件。
5.vi /etc/yum.repos.d/local.repo 新建local.repo文件(新建的文件必须以 .repo为后缀,local可以修改)
local.repo文件内容如下:
[local_server]
name=This is a local repo
baseurl=file:///mnt
enabled=1
gpgcheck=0
保存退出;
6.使用yum list 命令更新yum配置即可。

 

3. 源码包

安装源码包通常需要以下3个步骤:
(1)/configure。这一步可以定制功能,加上相应的选项即可,具体有什么选项可以通过命令./configure–help来查看。这一步会自动检测你的Linux系统与相关的套件是否有编译该源码包时所需要的库,因为一旦缺少某个库,就不能完成编译。只有检测通过后,才会生成Makefile文件。
(2)make。使用这个命令,会根据Makefile文件中预设的参数进行编译,这一步其实就是gcc在工作了。
(3)make instal1。这一步是安装步骤,用于创建相关软件的存放目录和配置文件。
对于以上这3个步骤,并不是所有的源码包软件都一样,也就是说,源码包的安装并没有标准的安装步骤。这就需要你拿到源码包解压后,进入目录,找到相关的帮助文档(通常,会以INSTALL或者README为文件名)。

 
 

二、课后习题

(1)区分rpm与-qi、-qf、-ql和-qa这4个不同选项组合的作用。
答:
rpm -qi //查询已经安装的某个RPM软件包的信息
rpm -qf //查询某个程序文件是由哪个RPM软件包安装的
rpm -ql //查询某个RPM软件包的所有安装文件
rpm -qa //查询所有已经安装的RPM软件包

(2)rpm-qi后面如果跟一个未安装的包名,会显示什么信息?
答:会提示没有安装:
在这里插入图片描述

(3)vim命令是由哪个RPM包安装来的?
答:
在这里插入图片描述

(4)使用RPM工具安装和卸载某个包的命令是什么?
答:
rpm -ivh rpm [包名称]
rpm -e [包名称]

(5)当安装某个有依赖关系的RPM包时,如何忽略依赖关系,强制安装该包?
答:命令 rpm -ivh 在结尾加上–nodeps

(6)如何使用RPM工具升级包?
答:rpm -Uvh

(7)请使用yum工具搜索包含关键词tidy的RPM包并安装,安装后再使用yum工具将其卸载。
答:如图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(8)如何使用yum工具来下载RPM包?
答: yum install -y protobuf-vim

(9)请到PHP的官方网站(http://www.php.net/)下载PHP的源码包,并动手试试编译安装它。
答:地址为:https://www.php.net/downloads.php/php-7.4.3.tar.bz2,使用wget命令下载
在这里插入图片描述

(10)查资料指出yum upgrade与yum update的区别,它们在什么情况下使用?
答:百度得
yum upgrade 与yum update 都能更新系统的所有软件包,不同的就是 upgrade相当一次大规模的升级,连带了旧的要淘汰的包也升级。update 和 upgrade 的侧重点不一样,update主要是使软件达到最新,但upgrade更侧重的是软件功能得到一个很大的提升,区别于频繁的发布最新的补丁。upgrade不改变软件设置和系统设置,系统版本升级,内核不改变;update改变软件设置和系统设置,系统版本内核都升级。
yum upgrade : 用于大规模的版本升级,更新Linux系统和整个软件版本
yum update : 用于安装补丁文件,更新内核和软件包到最新

(11)如何查看Linux系统中(CentOS)是否安装过某个包?
答:rpm -qa | grep 包名称

(12)./configure完成后,我们并不知道有没有成功,用什么命令可以验证呢?
答:echo $?

(13)如果在./configure这一步出现这样的错误:“configure:error:no acceptable C compiler found in SPATH”,我们该怎么办?
答:首先这个错误的命令是说:在SPATH中找不到可接受的C编译器,所以使用命令安装GNU编译器套件:yum install -y gcc

(14)有时你会忘记某个编译参数是如何写的,你怎么办?
答: ./configure --help

(15)如何使用光盘构建yum仓库?
答:具体步骤参考上文 2.2.6

这篇关于Linux安装RPM包或源码包解析 及 课后习题解答----工坊学习记录--3.3的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/594631

相关文章

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;