linux常用命令:rpm 命令
rpm是一个功能十分强大的软件包管理系统。
1.命令格式:
rpm [参数] [包名]
2.命令功能:
使得在Linux下安装、升级和删除软件包的工作变得容易,并且具有查询、验证软件包的功能。与图形化工具相比,使用命令行可以获得更大的灵活性。
3.命令参数:
1) -l 显示套件的文件列表
2) -h (or --hash) 安装时输出hash记号 ("#''),用来显示安装进度
3) -i 显示套件的相关信息
4) -U<套件档> --upgrade<套件档> 升级指定的套件档
5) -p<套件档> 查询指定的RPM套件档
6) -q 查看软件包是否被安装
7) -v 显示指令执行过程
8) -a 查询所有套件
9) -R 显示套件的关联性信息
10)-e 删除(或卸载)软件包
4.使用实例:
示例1:[root@localhost ~]rpm -q mariadb-5.5.47-1.el7_2.x86_64 查询指定软件包是否被安装
[root@localhost ~]rpm -q mariadb--.el7_2.x86_64 mariadb--.el7_2.x86_64 [root@localhost ~]# rpm -q httpd 未安装软件包 httpd
示例2:[root@localhost packages]# rpm -qa | grep httpd 查询所有套件中已经安装的软件包(与httpd有关的软件包)
[root@localhost packages]# rpm -qa | grep httpd httpd--.el7.centos..x86_64 httpd-tools--.el7.centos..x86_64 [root@localhost packages]# -.el7.centos..x86_64 //在网络软件库并没有这个包 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 警告:没有匹配 httpd--.el7.centos..x86_64 的软件包 No matches found [root@localhost packages]# -.el7.centos..x86_64 //但本地确实已经安装了这个软件包:系统自带 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 已安装的软件包 名称 :httpd 架构 :x86_64 版本 : 发布 :.el7.centos. 大小 :9.4 M 源 :installed 来自源:updates 简介 : Apache HTTP Server 网址 :http://httpd.apache.org/ 协议 : ASL 2.0 描述 : The Apache HTTP Server is a powerful, efficient, and extensible : web server. [root@localhost packages]# -.el7.centos..x86_64 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 已安装的软件包 名称 :httpd-tools 架构 :x86_64 版本 : 发布 :.el7.centos. 大小 : k 源 :installed 来自源:updates 简介 : Tools for use with the Apache HTTP Server 网址 :http://httpd.apache.org/ 协议 : ASL 2.0 描述 : The httpd-tools package contains tools which can be used with : the Apache HTTP Server.
示例3:[root@localhost packages]# rpm -e mariadb-5.5.47-1.el7_2.x86_64 卸载指定的安装过的包
[root@localhost packages]# yum install mysql //已经安装过 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 软件包 :mariadb--.el7_2.x86_64 已安装并且是最新版本 无须任何处理 [root@localhost packages]# rpm -e mariadb--.el7_2.x86_64 //卸载指定安装包 [root@localhost packages]# yum install mysql //重新下载指定安装包 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 正在解决依赖关系 --> 正在检查事务 ---> 软件包 mariadb.x86_64..el7_2 将被 安装 --> 解决依赖关系完成 依赖关系解决 ========================================================================================================================================== Package 架构 版本 源 大小 ========================================================================================================================================== 正在安装: mariadb x86_64 :-.el7_2 updates 8.9 M 事务概要 ========================================================================================================================================== 安装 软件包 总下载量:8.9 M 安装大小: M Is this ok [y/d/N]: y Downloading packages: mariadb--.el7_2.x86_64. FAILED http://mirrors.cug.edu.cn/centos/7.2.1511/updates/x86_64/Packages/mariadb-5.5.47-1.el7_2.x86_64.rpm: [Errno 12] Timeout on http://mirrors.cug.edu.cn/centos/7.2.1511/updates/x86_64/Packages/mariadb-5.5.47-1.el7_2.x86_64.rpm: (28, 'Resolving timed out after 30419 milliseconds') 正在尝试其它镜像。 mariadb--.el7_2.x86_64.rpm | :: Running transaction check Running transaction test Transaction test succeeded Running transaction 警告:RPM 数据库已被非 yum 程序修改。 正在安装 : :mariadb--.el7_2.x86_64 / 验证中 : :mariadb--.el7_2.x86_64 / 已安装: mariadb.x86_64 :-.el7_2 完毕!
示例4:[root@localhost packages]# rpm -qpR gnome-bluetooth-3.14.1-1.el7.x86_64.rpm 查看指定软件包的依赖关系
[root@localhost packages]# find -name "gnome-bluetooth-3.14.1-1.el7.x86_64.rpm" -exec ls -l {} \; //在当前目录下能够找到指定.rpm包 -rw-r--r--. root root 11月 ./gnome-bluetooth--.el7.x86_64.rpm [root@localhost packages]# rpm -qpR gnome-bluetooth--.el7.x86_64.rpm //查看它依赖的文件 /bin/sh /bin/sh /bin/sh bluez >= 5.0 desktop-file-utils desktop-file-utils gnome-bluetooth-libs = :-.el7 libatk-()(64bit) libc.so.()(64bit) libc.so.(GLIBC_2.2.5)(64bit) libc.so.(GLIBC_2.)(64bit) libcairo-gobject.so.()(64bit) libcairo.so.()(64bit) libgdk-.so.()(64bit) libgdk_pixbuf-()(64bit) libgio-()(64bit) libglib-()(64bit) libgmodule-()(64bit) libgnome-bluetooth.so.()(64bit) libgobject-()(64bit) libgtk-.so.()(64bit) libm.so.()(64bit) libpango-()(64bit) libpangocairo-()(64bit) libpthread.so.()(64bit) libudev.so.()(64bit) pulseaudio-module-bluetooth rpmlib(CompressedFileNames) <= - rpmlib(FileDigests) <= - rpmlib(PayloadFilesHavePrefix) <= rtld(GNU_HASH) rpmlib(PayloadIsXz) <= [root@localhost packages]# -.el7.x86_64.rpm //yum命令查询依赖关系 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 软件包:gnome-bluetooth.x86_64 :-.el7 依赖:/bin/sh provider: bash.x86_64 -.el7 依赖:bluez >= 5.0 provider: bluez.x86_64 .el7 依赖:desktop-file-utils provider: desktop-.el7 依赖:gnome-bluetooth-libs = :-.el7 provider: gnome-bluetooth-libs.x86_64 :-.el7 provider: gnome-bluetooth-libs.i686 :-.el7 依赖:libatk-()(64bit) provider: atk.x86_64 -.el7 依赖:libc.so.()(64bit) provider: glibc.x86_64 .el7_2. 依赖:libc.so.(GLIBC_2.2.5)(64bit) provider: glibc.x86_64 .el7_2. 依赖:libc.so.(GLIBC_2.)(64bit) provider: glibc.x86_64 .el7_2. 依赖:libcairo-gobject.so.()(64bit) provider: cairo-gobject.x86_64 -.el7 依赖:libcairo.so.()(64bit) provider: cairo.x86_64 -.el7 依赖:libgdk-.so.()(64bit) provider: gtk3.x86_64 -.el7 依赖:libgdk_pixbuf-()(64bit) provider: gdk-pixbuf2.x86_64 -.el7 依赖:libgio-()(64bit) provider: glib2.x86_64 -.el7 依赖:libglib-()(64bit) provider: glib2.x86_64 -.el7 依赖:libgmodule-()(64bit) provider: glib2.x86_64 -.el7 依赖:libgnome-bluetooth.so.()(64bit) provider: gnome-bluetooth-libs.x86_64 :-.el7 依赖:libgobject-()(64bit) provider: glib2.x86_64 -.el7 依赖:libgtk-.so.()(64bit) provider: gtk3.x86_64 -.el7 依赖:libm.so.()(64bit) provider: glibc.x86_64 .el7_2. 依赖:libpango-()(64bit) provider: pango.x86_64 -.el7 依赖:libpangocairo-()(64bit) provider: pango.x86_64 -.el7 依赖:libpthread.so.()(64bit) provider: glibc.x86_64 .el7_2. 依赖:libudev.so.()(64bit) provider: systemd-libs.x86_64 -.el7_2. 依赖:pulseaudio-module-bluetooth provider: pulseaudio-module-bluetooth.x86_64 .el7 依赖:rtld(GNU_HASH) provider: glibc.x86_64 .el7_2. provider: glibc.i686 .el7_2.
示例5:[root@localhost packages]# rpm -Va 校验所有的rpm包,查找丢失的文件
[root@localhost packages]# rpm -Va S.....T. c /etc/hba.conf ....L.... c /etc/pam.d/fingerprint-auth ....L.... c /etc/pam.d/password-auth ....L.... c /etc/pam.d/postlogin ....L.... c /etc/pam.d/smartcard-auth ....L.... c /etc/pam.d/system-auth 遗漏 /var/run/wpa_supplicant 遗漏 /var/run/pluto S.....T. c /etc/plymouth/plymouthd.conf S.....T. c /etc/login.defs S.....T. c /etc/libuser.conf S.....T. c /etc/openldap/ldap.conf 遗漏 /var/run/gluster .M....... c /etc/cups/subscriptions.conf S.....T. c /etc/yum/pluginconf.d/langpacks.conf .M....G.. /var/log/gdm S.....T. c /etc/cgrules.conf S.....T. c /etc/cups/cups-browsed.conf .......T. /lib/modules/-.el7.x86_64/modules.devname .......T. /lib/modules/-.el7.x86_64/modules.softdep [root@localhost packages]# which mysql /usr/bin/mysql
示例6:[root@localhost packages]# rpm -ql mariadb-5.5.47-1.el7_2.x86_64 查看指定软件包的安装的位置
[root@localhost packages]# yum install mysql 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 软件包 :mariadb--.el7_2.x86_64 已安装并且是最新版本 无须任何处理 [root@localhost packages]# rpm -ql mariadb--.el7_2.x86_64 /etc/my.cnf.d/client.cnf /usr/bin/aria_chk /usr/bin/aria_dump_log /usr/bin/aria_ftdump /usr/bin/aria_pack /usr/bin/aria_read_log /usr/bin/msql2mysql /usr/bin/my_print_defaults /usr/bin/mysql /usr/bin/mysql_find_rows /usr/bin/mysql_waitpid /usr/bin/mysqlaccess /usr/bin/mysqladmin /usr/bin/mysqlbinlog /usr/bin/mysqlcheck /usr/bin/mysqldump /usr/bin/mysqlimport /usr/bin/mysqlshow /usr/bin/mysqlslap /usr/share/doc/mariadb- /usr/share/doc/mariadb-/COPYING /usr/share/doc/mariadb-/COPYING.Google /usr/share/doc/mariadb-/COPYING.LESSER /usr/share/doc/mariadb-/COPYING.Percona /usr/share/doc/mariadb-/README /usr/share/doc/mariadb-/README.mysql-docs /usr/share/doc/mariadb-/README.mysql-license /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz /usr/share/.gz
示例7:[root@localhost packages]# rpm -qi ftp-0.17-66.el7.x86_64 查看指定软件包的信息
[root@localhost packages]# yum install ftp 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 软件包 .el7.x86_64 已安装并且是最新版本 无须任何处理 [root@localhost packages]# rpm -qi .el7.x86_64 Name : ftp Version : 0.17 Release : .el7 Architecture: x86_64 Install Date: 2016年06月21日 星期二 11时26分00秒 Group : Applications/Internet Size : License : BSD with advertising Signature : RSA/SHA256, 2014年07月03日 星期四 18时25分20秒, Key ID 24c6a8a7f4a80eb5 Source RPM : .el7.src.rpm Build Date : 2014年06月09日 星期一 13时01分11秒 Build Host : worker1.bsys.centos.org Relocations : (not relocatable) Packager : CentOS BuildSystem <http://bugs.centos.org> Vendor : CentOS URL : ftp://ftp.linux.org.uk/pub/linux/Networking/netkit Summary : The standard UNIX FTP (File Transfer Protocol) client Description : The ftp package provides the standard UNIX command-line FTP (File Transfer Protocol) client. FTP is a widely used protocol for transferring files over the Internet and for archiving files. If your system is on a network, you should install ftp in order to do file transfers.
[root@localhost packages]# .el7.x86_64 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.cqu.edu.cn * extras: mirrors.cqu.edu.cn * updates: mirrors.cqu.edu.cn 已安装的软件包 名称 :ftp 架构 :x86_64 版本 :0.17 发布 :.el7 大小 : k 源 :installed 来自源:anaconda 简介 : The standard UNIX FTP (File Transfer Protocol) client 网址 :ftp://ftp.linux.org.uk/pub/linux/Networking/netkit 协议 : BSD with advertising 描述 : The ftp package provides the standard UNIX command-line FTP (File : Transfer Protocol) client. FTP is a widely used protocol for : transferring files over the Internet and for archiving files. : : If your system is on a network, you should install ftp in order to do : file transfers.
示例8:[root@localhost packages]# rpm -i ftp://ftp.linux.org.uk/pub/linux/Networking/netkit 直接从网址下载(-i参数)
示例9:[root@localhost packages]# rpm -i -vv ftp://ftp.linux.org.uk/pub/linux/Networking/netkit 显示指令执行的细节(-vvc参数)
[root@localhost packages]# rpm -i ftp://ftp.linux.org.uk/pub/linux/Networking/netkit curl: () RETR response: 错误:跳过 ftp://ftp.linux.org.uk/pub/linux/Networking/netkit - 传输失败 [root@localhost packages]# rpm -i -vv ftp://ftp.linux.org.uk/pub/linux/Networking/netkit 获取ftp://ftp.linux.org.uk/pub/linux/Networking/netkit curl: () RETR response: 错误:跳过 ftp://ftp.linux.org.uk/pub/linux/Networking/netkit - 传输失败 [root@localhost packages]# rpm -e ftp [root@localhost packages]# rpm -i -vv ftp://ftp.linux.org.uk/pub/linux/Networking/netkit 获取ftp://ftp.linux.org.uk/pub/linux/Networking/netkit curl: () RETR response: 错误:跳过 ftp://ftp.linux.org.uk/pub/linux/Networking/netkit - 传输失败 [root@localhost packages]# wget ftp://ftp.linux.org.uk/pub/linux/Networking/netkit //用wget测试是否能下载时,发现也是不行的,说明是网址的问题。 ---- ::-- ftp://ftp.linux.org.uk/pub/linux/Networking/netkit => “netkit” 正在解析主机 :c35c:fd02:: 正在连接 ... 已连接。 正在以 anonymous 登录 ... 登录成功! ==> SYST ... 完成。 ==> PWD ... 完成。 ==> TYPE I ... 完成。 ==> CWD () /pub/linux/Networking ... 完成。 ==> SIZE netkit ... 完成。 ==> PASV ... 无法连接到 : 拒绝连接 //指定网站拒绝连接
5.其它:
rpm的详细介绍:
1)简介:
RPM(Red Hat Package Manager),是Red Hat 软件包管理器。RPM包里面包含有"可执行的二进制程序";"程序运行时所需要的文件"。
一个RPM 包中的应用程序,有时除了自身所带的附加文件保证其正常以外,还需要其它特定版本文件,这就是软件包的依赖关系。依赖关系并不是Linux特有的, Windows操作系统中也是同样存在的;比如我们在Windows系统中运行3D游戏,在安装的时候,他可能会提示,要安装Direct 9 ;Linux和Windows原理是差不多的。
一个软件包安装的流程图:
2)RPM软件包管理器的全面用途:
1.可以安装、删除、升级和管理软件;当然也支持在线安装和升级软件;
2.通过RPM包管理能知道软件包包含哪些文件,也能知道系统中的某个文件属于哪个软件包;
3.可以在查询系统中的软件包是否安装以及其版本;
4.作为开发者可以把自己的程序打包为RPM 包发布;
5.软件包签名GPG和MD5的导入、验证和签名发布
6.依赖性的检查,查看是否有软件包由于不兼容而扰乱了系统;
3)RPM 的使用权限:
RPM软件的安装、删除、更新只有root权限才能使用;对于查询功能任何用户都可以操作;如果普通用户拥有安装目录的权限,也可以进行安装。
不是所有的软件包都能通过rpm 命令来安装,只有以.rpm结尾的软件包才可以。
4)当rpm系统出了不能安装和查询的问题时:
[root@localhost packages]rpm -initdb
[root@localhost packages]rpm -rebuilddb //这个命令需要执行很长时间
linux常用命令:rpm 命令的更多相关文章
- ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘
本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...
- Linux 常用的压缩命令有 gzip 和 zip
Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz 相应的解压缩命令则是 gunzip 和 unzip ...
- Linux系统下RPM命令和yum的使用
Linux系统下RPM命令和yum的使用 RPM:Redhat Packages Manager (红帽系列软件包的管理),主要用于安装.卸载.升级和管理软件. 一个包由下面几个部分构成: 例如:ht ...
- Linux下面使用rpm命令
RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种 ...
- LINUX常用配置及命令
一. Fedora系统配置 1. [设置网卡IP] 步骤如下: 1) 用root用户登陆,打开/etc/sysconfig/network-scripts/ifcfg-eth0文 ...
- linux常用60条命令 转
Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命 ...
- linux常用配置文件和命令总结
常用配置文件说明: 1..设置-n永远生效:Vim的配置文件:命令模式想永久生效, ~/.vimrc,新建文件,在里面输入保存即可 2.设置别名永远生效:在~/.bashrc 修改当前用户家目录里的 ...
- Linux常用的基础命令总结
man 查看英文命令帮助 可以看作--help 拷贝目录的命令cp -a 包含所有 ls -a 显示所有文件包括隐藏文件 -ld ls -F 过滤目录文件(给不同类型文件结尾加上不同的符号) ...
- Java线上问题排查思路及Linux常用问题分析命令学习
前言 之前线上有过一两次OOM的问题,但是每次定位问题都有点手足无措的感觉,刚好利用星期天,以测试环境为模版来学习一下Linux常用的几个排查问题的命令. 也可以帮助自己在以后的工作中快速的排查线上问 ...
- 入门学习Linux常用必会命令实例详解
Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统, ...
随机推荐
- zookeeper 安装的三种模式
Zookeeper安装 zookeeper的安装分为三种模式:单机模式.集群模式和伪集群模式. 单机模式 首先,从Apache官网下载一个Zookeeper稳定版本,本次教程采用的是zookeeper ...
- 使用pidstat监控资源使用
linux可以使用pidstat命令监控系统资源,比如监控cup使用如下: pidstat -u 还可以使用 -r(内存) -d(硬盘)
- poj3417Network【LCA】【树形DP】
Yixght is a manager of the company called SzqNetwork(SN). Now she's very worried because she has jus ...
- numpy的文件存储 .npy .npz 文件
1)Numpy能够读写磁盘上的文本数据或二进制数据.将数组以二进制格式保存到磁盘np.load和np.save是读写磁盘数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 ...
- Redis is loading the dataset in memory
Redis is loading the dataset in memory During handling of the above exception, another exception occ ...
- Python 标准输出 sys.stdout 重定向
本文环境:Python 2.7 使用 print obj 而非 print(obj) 一些背景 sys.stdout 与 print 当我们在 Python 中打印对象调用 print obj 时候, ...
- flask中的信号量
一.在flask中自定义信号 from flask import Flask, current_app, flash, render_template from flask.signals impor ...
- Hibernate错误
1.Field 'id' doesn't have a default value 原来是我的数据设计的时候,把主键的类型定义为int的,原本想是用自增的方式来的,可是由于自己的粗心,写sql语句的时 ...
- JS DOM节点
html代码: <body onload ="loaded12()"> <form name="form1" action="htt ...
- SQLServer和MySQL job和 event定时器的差别
SQLServer和MySQL job和 event定时器的差别