rpm简单使用
rpm
描述:利用源码包编译成rpm时,会去指定安装好这个包的位置
本质:解压,然后拷贝到相关的目录,然后执行脚本
vstpd-3.0.2-9.el7.x86_64.rpm
包名 版本 release 架构
[root@rhel7 Packages]# rpm -ivh vsftpd-3.0.2-9.el7.x86_64.rpm
warning: vsftpd-3.0.2-9.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:vsftpd-3.0.2-9.el7 ################################# [100%]
查询所有已经安装过的包
[root@rhel7 Packages]# rpm -qa|grep vsftp
vsftpd-3.0.2-9.el7.x86_64
查看安装位置
[root@rhel7 Packages]# rpm -ql vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd
解压rpm
[root@rhel7 tmp]# rpm2cpio vsftpd-3.0.2-9.el7.x86_64.rpm | cpio -id
707 blocks
查看脚本
[root@rhel7 tmp]# rpm -qp --scripts vsftpd-3.0.2-9.el7.x86_64.rpm
查看配置文件
[root@rhel7 tmp]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
查看安装信息
[root@rhel7 tmp]# rpm -qi vsftpd
Name : vsftpd
Version : 3.0.2
Release : 9.el7
Architecture: x86_64
Install Date: Mon 27 Aug 2018 12:05:32 PM CST
Group : System Environment/Daemons
[root@rhel7 tmp]# rpm -qip vsftpd-3.0.2-9.el7.x86_64.rpm 使用安装包的情况
warning: vsftpd-3.0.2-9.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Name : vsftpd
Version : 3.0.2
Release : 9.el7
Architecture: x86_64
Install Date: (not installed)
查看文件源于那个安装包
[root@rhel7 tmp]# rpm -qf /etc/vsftpd/vsftpd.conf
vsftpd-3.0.2-9.el7.x86_64
[root@rhel7 tmp]# rpm -qf `which ifconfig`
net-tools-2.0-0.17.20131004git.el7.x86_64
强制安装--force使用情况(如文件丢失)
[root@rhel7 tmp]# rm -rf /etc/vsftpd/user_list
[root@rhel7 tmp]# ll /etc/vsftpd/user_list
ls: cannot access /etc/vsftpd/user_list: No such file or directory
[root@rhel7 tmp]# rpm -ivh vsftpd-3.0.2-9.el7.x86_64.rpm --force
[root@rhel7 tmp]# ll /etc/vsftpd/user_list
-rw-------. 1 root root 361 Mar 7 2014 /etc/vsftpd/user_list
更新:先卸载旧版本的软件包,再安装新版本的软件包,但是内核是可以多版本共存
rpm -Uvh 软件包 #在已经安装包的基础上
签名
描述:对于非对称加密有公钥和私钥,有两种用户用法:
一种是数据加密,这是公钥加密,私钥解密
另一个功能是数字签名,是私钥加密,公钥解密,利用哈希函数(md5,sha512),输入一个不定长的值总是可以得到一个定长的值原理:如A,B两个主机,A要发送东西给B,先证明对方是目标,A对原文件使用私钥进行加密,B是使用A的公钥来解密,B会对文件生成一个哈希值,进行对比。就如redhat官方提供的包,在网站上有一符数字签名,下载后与之对比,一致表示是安全的
[root@rhel7 tmp]# rpm -K vsftpd-3.0.2-9.el7.x86_64.rpm #安装包是使用redhat的私钥签名的,要使用公钥来验证
vsftpd-3.0.2-9.el7.x86_64.rpm: RSA sha1 ((MD5) PGP) md5 NOT OK (MISSING KEYS: (MD5) PGP#fd431d51)
导入redhat的公钥
[root@rhel7 ~]# rpm -qa|grep pubkey
[root@rhel7 ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@rhel7 ~]# rpm -qa|grep pubkey
gpg-pubkey-fd431d51-4ae0493b
gpg-pubkey-2fa658e0-45700c69
[root@rhel7 ~]# rpm -K /tmp/vsftpd-3.0.2-9.el7.x86_64.rpm
/tmp/vsftpd-3.0.2-9.el7.x86_64.rpm: rsa sha1 (md5) pgp md5 OK
rpm简单使用的更多相关文章
- rpm 简单 package 创建demo
安装的工具 yum install -y rpmdevtools 准备环境 主要是初始化,会自动创建rpm 包构建需要的目录 rpmdev-setuptree 编写简单的spec cd ~/rpmbu ...
- rhel7 rpmbuild 制作二进制程序安装包(.rpm) 简单示例
下载rpm-build: # yum install rpm-build 如果上述方式无法安装(没配置网络源,虚拟机下是安装媒介源) 可以用下列方式下载后再安装(实践结果可能版本问题引起的缺少太多的* ...
- 10day rpm简单用法qa ql qf "`"用法
查看软件是否安装: [root@oldboyedu ~]# rpm -qa sl -q表示查询 -a表示所有 sl-5.02-1.el7.x86_64 查看软件包中有哪些信息 [root@oldboy ...
- 解决RPM包相互依赖的有效方法
出自:http://blog.csdn.net/kai27ks/article/details/7473683 前言:常用RPM的朋友们都知道,RPM简单易用,但是它的依赖关系是最头疼的!有时候比方说 ...
- 在Linux下通过rpm打包发布Java程序
这个东西涉及的内容较多,根据下面这些文章慢慢学习 一个简单的例子 http://blog.csdn.net/king_on/article/details/7169384 按照文章中的步骤来,打包之后 ...
- nc在centos7上的安装和简单使用
下载 http://vault.centos.org/6.6/os/x86_64/Packages/nc-1.84-22.el6.x86_64.rpm rpm -iUv nc-1.84-22. ...
- 阿里云(ECS)Centos服务器LNMP环境搭建
阿里云( ECS ) Centos7 服务器 LNMP 环境搭建 前言 第一次接触阿里云是大四的时候,当时在校外公司做兼职,关于智能家居项目的,话说当时俺就只有一个月左右的 php 后台开发经验(还是 ...
- logstash使用操作部分
1.logstash的概念及特点.概念:logstash是一个数据采集.加工处理以及传输(输出)的工具.特点: - 所有类型的数据集中处理 - 不同模式和格式数据的正常化 - 自定义日志格式的迅速扩展 ...
- 使用golang 编写postgresql 扩展
postgresql 的扩展可以帮助我们做好多强大的事情,支持的开发语言有lua.perl.java.js.c 社区有人开发了一个可以基于golang开发pg 扩展的项目,使用起来很方便,同时为我 ...
随机推荐
- python调用支付宝支付接口详细示例—附带Django demo代码
项目演示: 一.输入金额 二.跳转到支付宝付款 三.支付成功 四.跳转回自己网站 在使用支付宝接口的前期准备: 1.支付宝公钥 2.应用公钥 3.应用私钥 4.APPID 5.Django 1.11. ...
- 夯实Java基础(十七)——注解(Annotation)
1.注解概述 从JDK5.0开始,Java增加对元数据(MetaData)的支持,也就是注解(Annotation).其实我们早就已经接触过注解了,例如我们经常在Java代码中可以看到 “@Overr ...
- .Net Mvc过滤器观察者模式记录网站报错信息
基本介绍: 观察者模式是一种对象行为模式.它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新.在观察者模式中,主题是通知的发布者,它发出通知时并不 ...
- case when多条件
SELECT label ,label3 ,lon_cen ,lat_cen ,lon3 ,lat3 ,antenna_height ,horizontal_angle ,CASE WHEN roun ...
- Collectors.toMap不允许Null Value导致NPE
背景 线上某任务出现报警,报错日志如下: java.lang.NullPointerException: null at java.util.HashMap.merge(HashMap.java:12 ...
- C++标准库函数 end 的实现原理(非类型模板参数)
在刚开始学习<C++ Primer>的时候遇到了 end 函数,感觉很神奇,但又很迷惑:为什么能获得数组的尾后指针呢?编译器也不会在内存中申请一块空间放数组元素的个数啊!最近再一次遇到了 ...
- JDBC、Tomcat为什么要破坏双亲委派模型?
问题一:双亲委派模型是什么 如果一个类加载器收到了加载某个类的请求,则该类加载器并不会去加载该类,而是把这个请求委派给父类加载器,每一个层次的类加载器都是如此,因此所有的类加载请求最终都会传送到顶端的 ...
- 从0系统学Android-2.5更多隐式Intent用法
本系列文章,参考<第一行代码>,作为个人笔记 更多内容:更多精品文章分类 从0系统学Android-2.5更多隐式Intent用法 上一节中我们学习了通过隐式 Intent 来启动 Act ...
- 2013-2014 ACM-ICPC Pacific Northwest Regional Contest L.Languages
题意略. 思路: 这种字符串的模拟题,应该熟练使用stringstream. 详见代码: #include<bits/stdc++.h> using namespace std; map& ...
- MSIL实用指南-生成内部类
生成内部类用TypeBuilder的DefineNestedType方法,得到另一个TypeBuilder.内部类的可访问性都是TypeAttributes的“Nested”开头一些成员.实例代码:y ...