一、概念简介

RPM 全名是『 RedHat Package Manager 』简称则为 RPM,是以一种数据库记录的方式来将你所需要的套件安装到你的 Linux 主机的一套管理程序。

二、实验环境

本地主机:ip地址为192.168.0.,主要用于安装、调试、卸载软件包用

远程主机:含已给出的共享目录,本地主机可以挂载远程主机给出的共享,方便文件安装,ip地址为192.168.0.

三、实例演示

1.查看远程主机已共享目录信息

[root@desktop1 ~]# showmount -e 192.168.0.254
Export list for 192.168.0.254:
/nfstest 192.168.0.0/
/var/ftp/pub/iso 192.168.0.0/
/iso 192.168.0.0/
/var/ftp/pub/rhel7/dvd 192.168.0.0/
/kickstart 192.168.0.0/
/rhome 192.168.0.0/
/home/guests 192.168.0.0/
/var/ftp/pub 192.168.0.0/

2.在本地创建/rhel7目录,并将远程主机192.168.0.254的/var/ftp/pub/rhel7目录挂载到本地/rhel7目录,方便后续实验

[root@desktop1 ~]# mkdir /rhel7
[root@desktop1 ~]# mount 192.168.0.254:/var/ftp/pub/rhel7 /rhel7
[root@desktop1 ~]# df -h        # 查看挂载情况,最后一行显示已挂载成功
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vol0-root 49G .0G 46G % /
devtmpfs 905M 905M % /dev
tmpfs 914M 140K 914M % /dev/shm
tmpfs 914M 9.0M 905M % /run
tmpfs 914M 914M % /sys/fs/cgroup
/dev/mapper/vol0-home 509M 26M 483M % /home
/dev/sda1 497M 104M 394M % /boot
/dev/sr0 .8G .8G % /run/media/root/RHEL-7.2 Server.x86_64
192.168.0.254:/var/ftp/pub/rhel7 20G 340M 20G % /rhel7

3. 使用rpm ivh 命令安装bind-9.9.4-14.el7.x86_64.rpm(本地已经安装了,并且该安装包无其他依赖包)

[root@desktop1 ~]# rpm -ivh /rhel7/dvd/Packages/bind-9.9.-.el7.x86_64.rpm
warning: /rhel7/dvd/Packages/bind-9.9.-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ################################# [%]
package bind-:9.9.-.el7.x86_64 is already installed

4. 安装有其他依赖的rpm包会提示缺少依赖项,该示例显示安装tftp-server时需要用到xinetd包。

[root@desktop1 ~]# rpm -ivh /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm
warning: /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
error: Failed dependencies:
xinetd is needed by tftp-server-5.2-.el7.x86_64

5. 使用 rpm –ivh 先安装 tftp-server 的依赖包 xinetd,再安装 tftp-server

[root@desktop1 ~]# rpm -ivh /rhel7/dvd/Packages/xinetd-2.3.-.el7.x86_64.rpm
warning: /rhel7/dvd/Packages/xinetd-2.3.-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ################################# [%]
Updating / installing...
:xinetd-:2.3.-.el7 ################################# [%]
[root@desktop1 ~]# rpm -ivh /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm
warning: /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ################################# [%]
Updating / installing...
:tftp-server-5.2-.el7 ################################# [%]

6. 使用 rpm 命令,检查tftp-server-5.2-11.el7.x86_64.rpm这个包的信息(可以看到版本,名字、适用架构等)

[root@desktop1 ~]# rpm -qpi /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm
warning: /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Name : tftp-server
Version : 5.2
Release : .el7
Architecture: x86_64
Install Date: (not installed)
Group : System Environment/Daemons
Size :
License : BSD
Signature : RSA/SHA256, Thu Apr :: AM CST, Key ID 199e2f91fd431d51
Source RPM : tftp-5.2-.el7.src.rpm
Build Date : Tue Jan :: AM CST
Build Host : x86-.build.eng.bos.redhat.com
Relocations : (not relocatable)
Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
Vendor : Red Hat, Inc.
URL : http://www.kernel.org/pub/software/network/tftp/
Summary : The server for the Trivial File Transfer Protocol (TFTP)
Description :
The Trivial File Transfer Protocol (TFTP) is normally used only for
booting diskless workstations. The tftp-server package provides the
server for TFTP, which allows users to transfer files to and from a
remote machine. TFTP provides very little security, and should not be
enabled unless it is expressly needed. The TFTP server is run from
/etc/xinetd.d/tftp, and is disabled by default.

7.使用 rpm 命令,检查/rhel7/dvd/Packages/tftp-server-5.2-11.el7.x86_64.rpm这个软件包安装后在系统中会创建的文件

[root@desktop1 ~]# rpm -qpl /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm
warning: /rhel7/dvd/Packages/tftp-server-5.2-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
/etc/xinetd.d/tftp
/usr/lib/systemd/system/tftp.service
/usr/lib/systemd/system/tftp.socket
/usr/sbin/in.tftpd
/usr/share/doc/tftp-server-5.2
/usr/share/doc/tftp-server-5.2/CHANGES
/usr/share/doc/tftp-server-5.2/README
/usr/share/doc/tftp-server-5.2/README.security
/usr/share/man/man8/in.tftpd..gz
/usr/share/man/man8/tftpd..gz
/var/lib/tftpboot

8. 用 rpm 命令,检查/etc/named.conf 是由哪个 rpm 包生成的

[root@desktop1 ~]# rpm -qf /etc/named.conf
bind-9.9.-.el7.x86_64

9. 使用rpm卸载bind这个软件包

[root@desktop1 ~]# rpm -e bind

10. 再次查看/etc/named.conf这个文件,已被删除。

[root@desktop1 ~]# rpm -qf /etc/named.conf
error: file /etc/named.conf: No such file or directory

11. 使用rpm命令删除xinetd,删除不成功,还有tftp-server依赖项,所以删除不了。

[root@desktop1 ~]# rpm -e xinetd
error: Failed dependencies:
xinetd is needed by (installed) tftp-server-5.2-.el7.x86_64

12. 使用rpm命令先卸载tftp-server,xinetd

[root@desktop1 ~]# rpm -e tftp-server xinetd

13. 使用 rpm –import 导入/rhel7/dvd/RPM-GPG-KEY-redhat-release 这个用于验证 RPM包签名的公钥文件

[root@desktop1 ~]# rpm --import /rhel7/dvd/RPM-GPG-KEY-redhat-release

14. 使用rpm -K 验证bind-9.9.4-14.el7.x86_64.rpm,看到显示md5 OK

[root@desktop1 ~]# rpm -K /rhel7/dvd/Packages/bind-9.9.-.el7.x86_64.rpm
/rhel7/dvd/Packages/bind-9.9.-.el7.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

15. 将bind-9.9.4-14.el7.x86_64.rpm复制到/tmp目录下,在尾部添加123后再次使用rpm -K确认,显示MD5 NOT OK"

[root@desktop1 ~]# cp /rhel7/dvd/Packages/bind-9.9.-.el7.x86_64.rpm /tmp
[root@desktop1 ~]# echo >> /tmp/bind-9.9.-.el7.x86_64.rpm
[root@desktop1 ~]# rpm -K /tmp/bind-9.9.-.el7.x86_64.rpm
/tmp/bind-9.9.-.el7.x86_64.rpm: rsa sha1 (MD5) PGP MD5 NOT OK

使用RPM管理软件包的更多相关文章

  1. centos8平台使用rpm管理软件包

    一,什么是rpm rpm是redhat package manager redhat的软件包管理器 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/a ...

  2. linux RPM(红帽软件包管理器)和Yum软件仓库中常见的命令

    RPM(红帽软件包管理器)常用命令 安装软件:rpm -ivh filename.rpm 升级软件:rpm -Uvh filename.rpm 卸载软件:rpm -e filename.rpm 查询软 ...

  3. linux软件管理之rpm管理rpm包

    使用RPM工具管理RPM包 ====================================================================================需要 ...

  4. RPM管理,计划任务与性能监控

    =========== RPM 软件包管理: 相关命令: rpm -ivh 软件包名称 rpm -e 软件包名称     rpm -U 软件名称 软件包信息查询: 相关命令: rpm -q 查询指定软 ...

  5. Linux系统分区 进程管理 软件包安装

    对于一块新的磁盘来说,系统能够使用需要有分区.格式化文件系统.挂载等主要操作,下面通过命令的方式对一块磁盘进行操作. 一. Linux系统分区 1.1 在虚拟机开机前选择虚拟机配置,添加一个新的SCS ...

  6. Linux的rpm管理

                            书山有路勤为径,学海无涯苦作舟 自学linux已经有几天了,感觉还可以.坚持下去,就会有收获. 每个系统都用相应的软件的管理,Linux也不例外.下面讲 ...

  7. Linux基础-11-rpm管理软件包

    1. 使用RPM安装及移除软件 1) RPM的定义:RPM就是Red Hat Package Manger(红帽软件包管理工具)的缩写. 2) rpm的文件名分为5部分,其中: 第1部分是name,表 ...

  8. 1.5 RPM红帽软件包1.6 Yum软件仓库

    1.5 RPM红帽软件包 在RPM(红帽软件包管理器)公布之前,要想在Linux系统中安装软件只能采取源码包的方式安装.早期在Linux系统中安装程序是一件非常困难.耗费耐心的事情,而且大多数的服务程 ...

  9. rpm | 升级软件包

    rpm | 升级软件包 检查已安装包 rpm -qa | grep samba samba-common-3.6.9-164.el6.x86_64 samba-3.6.9-164.el6.x86_64 ...

随机推荐

  1. 四则运算2--设计思路--软件工程-c++

    1.题目避免重复. 2.可定制(数量 打印方式). 3.可以控制下列参数:是否有乘除法.是否有括号.数值范围.加减有无负数.除法有无余数.是否支持分数(真分数,假分数...).是否支持小数(精确到多少 ...

  2. token验证-微信公众平台开发3(asp.net)

    童鞋们直接看代码吧:(我这里是ashx处理程序写的类,开发过网站的一般都知道) <%@ WebHandler Language="C#" class="weixin ...

  3. 对MVC的理解

    摘要:本文主要谈到了对PHP开发中MVC开发模式的理解. 当用户通过url触发命令时,例如url=http://control.blog.sina.com.cn/admin/article/artic ...

  4. 安装Symfony2

    我就不明白这个框架明明很小就几M,为什么这么难下载. 他们为什么不把文件打包好?非要搞得这么复杂. 一开始我在Linux ubuntu下载没有成功 然后想在win10上试试 到www.apache.o ...

  5. 笔记本显示器坏了,从硬盘安装win7系统

    可以装的,从硬盘安装的话,步骤如下:一.将从网上下载的win7旗舰版ISO系统文件存放到D盘. 二.从网上下载虚拟光驱,打开安装后在任务栏右通知区显示“虚拟DAEMON管理器”图标,在我的电脑窗口显示 ...

  6. c++ ip地址的操作 c版

    http://blog.csdn.net/cpp_funs/article/details/6988154 1.htonl ()和ntohl( ) u_long PASCAL FAR ntohl (u ...

  7. 单点登陆CAS安装过程中可能遇到的问题

    可能遇到的问题: 错误: java.security.cert.CertificateException: No name matching localhost found 原因: keystore里 ...

  8. PS4 Razor GPU

    这东西,从出来就感觉没用,各种请教也都没有帮助.虽然搞明白了 rt啊tex啊buffer啊但是就是感觉对于抓bug没有用处.所以从来都是像巫师一样靠直觉,再用科学的方法来测试,其实就是让ps retu ...

  9. 操作集合的工具类Collections

    1       操作集合的工具类Collections Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类里提供了大量方法对集合元素进行排序.查询和修改等操 ...

  10. [工作积累] android 中添加libssl和libcurl

    1. libssl https://github.com/guardianproject/openssl-android 然后执行ndk-build 2.libcurl 源代码组织结构, 下面的mak ...