系统相关
首页 > 系统相关> > 【linux】循序渐进学运维-基础篇-rpm管理

【linux】循序渐进学运维-基础篇-rpm管理

作者:互联网


文章目录


本文是循序渐进学运维-基础篇的第41篇文章

今天我们来聊聊软件包的管理,软件包我们这里只说两种:

###1. RPM包

1) RPM安装常用参数:

参数作用
i安装(Install)软件。
U升级(Upgrade)旧版本的软件。
e移除/删除(Erase)软件。
v显示详细的处理信息。
h显示安装进度。卸载不能用
a(all) 查询所有已安装的软件包
f(file)系统文件名(查询系统文件所属哪个软件包),反向查询
i显示已经安装的rpm软件包信息,后面直接跟包名
l(list) 查询软件包中文件安装的位置
p查询未安装软件包的相关信息,后面要跟软件的命名
R查询软件包的依赖性

2) rpm获取方式:

  1. 系统镜像光盘
  2. 网站(阿里云分享的源)
  3. 相应软件的官网。

3) rpm格式:

[root@xinsz08-1 ~]# ls /mnt/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm /mnt/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm

名称作用
lrzsz软件名字
-0主版本号
12次版本号
20修订版本号
27release 第几次发布版本
el6操作系统
x86_64.rpm软件包是64位的包

举例:

a. 从本地安装软件包
[root@xinsz08-1 ~]# rpm -ivh /mnt/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm warning: /mnt/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing...                ########################################### [100%]package lrzsz-0.12.20-27.1.el6.x86_64 is already installed[root@xinsz08-1 ~]#

b. 查询lrzsz的包有没有安装
[root@xinsz08-1 ~]# rpm -q lrzszlrzsz-0.12.20-27.1.el6.x86_64

c. 查看所有已经安装的包
[root@xinsz08-1 ~]# rpm -qa |wc -l1135

d. 查询一个命令是哪个包安装的
[root@xinsz08-1 ~]# which rz/usr/bin/rz[root@xinsz08-1 ~]# rpm -qf /usr/bin/rzlrzsz-0.12.20-27.1.el6.x86_64

e. 删除一个包使用-e参数
[root@xinsz08-1 ~]# rpm -e lrzsz[root@xinsz08-1 ~]# rpm -ql lrzsz[root@xinsz08-1 ~]#

f. 如果有依赖加参数 --nodeps

[root@xinsz08-1 ~]# rpm -e lrzsz --nodeps

g. 升级软件包

rpm -Uvh /mnt/Packages/lrzsz-XXXX

rpm包校验

作用: 查看rpm是否被修改

参数:

选项说明
-V校验指定RPM包中的文件,若该软件所含的文件被改动过,才会列出来;
-Va校验本机已经安装的所有软件包
-Vf校验某个系统文件是否被修改

我们以httpd为例子,看看是否被改动过

[root@zmgaosh gaosh]# yum install httpd   安装httpd[root@zmgaosh gaosh]# rpm -V httpd[root@xinsz08-1 ~]# vim /etc/init.d/httpd  #6的系统[root@xinsz08-1 ~]# vim /etc/init.d/httpd   #修改httpd文件[root@xinsz08-1 ~]# rpm -V httpdS.5....T.    /etc/rc.d/init.d/httpd

可以看到如果没有改动过,rpm -V没有任何的输出。如果改动了之后,就输出了内容

这里对输出的内容做一下解释:

字符信息提示
S文件大小已改变;
M文件的类型或文件的权限(rwx)已改变;
5文件 MD5 校验和是否改变(可以看成文件内容已改变);
D设备的主从代码已改变;
L文件路径已改变;
U文件的属主(所有者)已改变;
G文件的属组已改变;
T文件的修改时间已改变;
P(caPabilities differ) 功能已被改变;

我们也可以修改httpd.conf 来看一下输出结果

[root@xinsz08-1 ~]# rpm -Vf /etc/httpd/conf/httpd.conf
S.5…T. c /etc/httpd/conf/httpd.conf

这里出现了个c, c在这里表示的是文件类型

其他类型如图:

字符表示内容
c配置文件
d普通文档
l授权文件
r描述文件

总结:

rpm包的使用在日常工作中用到的也比较多,比如安装ELK,可以直接下载相应的RPM来安装,方便快捷。

我是高胜寒,一个在教培行业不忘初心的人. 欢迎点赞收藏,我们下篇文章再见!

标签:学运,httpd,rpm,软件包,lrzsz,linux,xinsz08,root
来源: https://blog.51cto.com/xinsz08/2706307