软件的安装时操作系统管理的基础,与Windows不同,Linux的软件管理有很多种方式,Redhat的最常用的是RPM方式,安装集成在光盘中的RPM包。这种方式比Windows平台的软件管理更加便捷(个人感觉,总体感觉Windows程序安装于卸载有点复杂),使用起来也更加的心用手。

  1、Redhat中的rpm包的位置——  光盘目录中的  Package 目录全部都是。

  2、RPM常用命令解读:

    a、安装程序:    rpm -ivh <软件包的绝对路径>   #i为install;v,verbose;h,hash

[root@asdf /]# rpm -ivh /media/RHEL_6.1\ i386\ Disc\ 1/Packages/vsftpd-2.2.2-6.el6_0.1.i686.rpm 

    b、卸载程序:    rpm -e  <软件名>

[root@asdf /]# rpm -e vsftpd  # e => erase 、uninstall
[root@asdf /]# rpm -q vsftpd #检测一下是否已卸载
package vsftpd is not installed rpm -aq|grep yum|xargs rpm -e --nodeps  #卸载所有yum相关包

    c、查询指定软件是否已安装:   rpm -q  <软件名>   /    rpm  -qa <软件名> /  rpm -qa | grep <软件名>

[root@asdf /]# rpm -q yum     # q,query
yum-3.2.29-17.el6.noarch
[root@peano /]# rpm -qa yum #这个命令没有上一个命令快
yum-3.2.29-17.el6.noarch
[root@peano /]# rpm -qa | grep yum #该命令使用管道进行正则匹配
yum-metadata-parser-1.1.2-16.el6.i686
PackageKit-yum-0.5.8-19.el6.i686
yum-utils-1.1.30-6.el6.noarch
yum-rhn-plugin-0.9.1-26.el6.noarch
PackageKit-yum-plugin-0.5.8-19.el6.i686
yum-3.2.29-17.el6.noarch

    d、查询已安装软件中的某一个文件的软件包的详细名称:  rpm -qf <某一文件>

[root@peano /]# rpm -qf /etc/yum.conf   #qf, query file
yum-3.2.29-17.el6.noarch

    e、查询已安装程序都安装在哪里:  rpm -ql  <程序名>

[root@asdf /]# rpm -ql yum    #猜测:  ql,query location
/etc/bash_completion.d
/etc/bash_completion.d/yum.bash
/etc/logrotate.d/yum
/etc/yum
/etc/yum.conf
/etc/yum.repos.d
/etc/yum/pluginconf.d
/etc/yum/protected.d
/etc/yum/vars
/etc/yum/version-groups.conf
/usr/bin/yum
/usr/lib/python2.6/site-packages/rpmUtils
/usr/lib/python2.6/site-packages/rpmUtils/__init__.py
/usr/lib/python2.6/site-packages/rpmUtils/__init__.pyc
/usr/lib/python2.6/site-packages/rpmUtils/__init__.pyo
/usr/lib/python2.6/site-packages/rpmUtils/arch.py
/usr/lib/python2.6/site-packages/rpmUtils/arch.pyc
/usr/lib/python2.6/site-packages/rpmUtils/arch.pyo
/usr/lib/python2.6/site-packages/rpmUtils/miscutils.py
/usr/lib/python2.6/site-packages/rpmUtils/miscutils.pyc
/usr/lib/python2.6/site-packages/rpmUtils/miscutils.pyo
/usr/lib/python2.6/site-packages/rpmUtils/oldUtils.py
/usr/lib/python2.6/site-packages/rpmUtils/oldUtils.pyc
/usr/lib/python2.6/site-packages/rpmUtils/oldUtils.pyo
/usr/lib/python2.6/site-packages/rpmUtils/transaction.py
/usr/lib/python2.6/site-packages/rpmUtils/transaction.pyc
/usr/lib/python2.6/site-packages/rpmUtils/transaction.pyo
---More---

    f、查询已安装软件包信息:  rpm -qi <软件名>

[root@asdf /]# rpm -qi yum     #qi,  query infomation
Name : yum Relocations: (not relocatable)
Version : 3.2.29 Vendor: Red Hat, Inc.
Release : 17.el6 Build Date: Thu 28 Apr 2011 10:43:39 AM PDT
Install Date: Mon 02 Jul 2012 02:58:17 AM PDT Build Host: x86-005.build.bos.redhat.com
Group : System Environment/Base Source RPM: yum-3.2.29-17.el6.src.rpm
Size : 4640583 License: GPLv2+
Signature : RSA/8, Fri 29 Apr 2011 06:41:01 AM PDT, Key ID 199e2f91fd431d51
Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
URL : http://yum.baseurl.org/
Summary : RPM package installer/updater/manager
Description :
Yum is a utility that can check for and automatically download and
install updated RPM packages. Dependencies are obtained and downloaded
automatically, prompting the user for permission as necessary.
[root@asdf /]#

     g、查询已安装软件的文档位置信息:rpm -qd <软件名>

[root@asdf /]# rpm -qd yum     #qd, query document
/usr/share/doc/yum-3.2.29/AUTHORS
/usr/share/doc/yum-3.2.29/COPYING
/usr/share/doc/yum-3.2.29/ChangeLog
/usr/share/doc/yum-3.2.29/INSTALL
/usr/share/doc/yum-3.2.29/README
/usr/share/doc/yum-3.2.29/TODO
/usr/share/man/man5/yum.conf.5.gz
/usr/share/man/man8/yum-shell.8.gz
/usr/share/man/man8/yum.8.gz
[root@asdf /]#

    h、查询已安装软件的依赖关系:  rpm -qR <软件名>

[root@asdf /]# rpm -qR yum    # qR ,query relation
/usr/bin/python
config(yum) = 3.2.29-17.el6
pygpgme
python >= 2.4
python(abi) = 2.6
python-iniparse
python-sqlite
python-urlgrabber >= 3.9.0-8
rpm >= 0:4.4.2
rpm-python
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(VersionedDependencies) <= 3.0.3-1
yum-metadata-parser >= 1.1.0
rpmlib(PayloadIsXz) <= 5.2-1

    I、如果想查询未安装软件包的相关信息,可以在以上a-h的命令参数中加入一个小写的 p 即可查询相关的参数,比如h中的,查询依赖关系:

[root@asdf Packages]# rpm -qpc vsftpd-2.2.2-6.el6_0.1.i686.rpm
warning: vsftpd-2.2.2-6.el6_0.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
[root@asdf Packages]#

    J、对软件的更新操作有两种方式——rpm -Uvh 和-Fvh,两者区别在于前者在对没有安装的软件将自动安装,而后者将不安装处理;如果降级,可以采用以下命令

rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降级为旧版

Redhat6 RPM 软件管理常用命令汇总的更多相关文章

  1. Linux软件管理常用命令和选项

    rpm /var/lib/rpm:数据库目录 -ivh x:安装软件包x -Uvh x:升级或安装软件包x,如果没有安装x的旧版本,则安装x,否则删除x的旧版本后再安装x. -Fvh x:升级软件包x ...

  2. RPM软件管理工具

    1 概述 RPM(RedHat Package Manager),Rethat软件包管理工具,类似windows里面的setup.exe 是Linux这系列操作系统里面的打包安装工具,它虽然是RedH ...

  3. 20145222《信息安全系统设计基础》Linux常用命令汇总

    学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...

  4. C#(Net)软件开发常用工具汇总,提高你的开发效率

    C#(Net)软件开发常用工具汇总,提高你的开发效率 写代码也要读书,爱全栈,更爱生活.每日更新原创IT编程技术及日常实用技术文章. 我们的目标是:玩得转服务器Web开发,搞得懂移动端,电脑客户端更是 ...

  5. Linux - 远程管理常用命令

    远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...

  6. 【Linux】Linux 常用命令汇总

    查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...

  7. No-5.远程管理常用命令

    远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...

  8. Oozie命令行常用命令汇总[转]

    Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...

  9. vim常用命令汇总

    vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...

随机推荐

  1. 2013-4-3 C#中alt键不是Keys.Alt 而是 Keys.LMenu

    2013-4-3 C#中alt键不是Keys.Alt而是Keys.LMenu

  2. laravel validate 设置为中文(验证提示为中文)

    把 resources\lang 下en 的文件夹 复制在同一目录并改名为 zn 把zn 中的 validation.php文件修改为 https://laravel-china.org/articl ...

  3. Java JDBC学习实战(二): 管理结果集

    在我的上一篇博客<Java JDBC学习实战(一): JDBC的基本操作>中,简要介绍了jdbc开发的基本流程,并详细介绍了Statement和PreparedStatement的使用:利 ...

  4. vue 组件的强制刷新

    组件 <vue-component v-if="hackReset"></vue-component> <button @click="a& ...

  5. Class对象的isAssignableFrom方法

    isAssignableFrom 在看一个开源代码时,在加载完某个Class对象后,经常会使用 java.lang.Class#isAssignableFrom 来校验下. 之前真没有注意过Class ...

  6. 模版——KMP

    #include <iostream> #include <cstdio> #include <cstring> ; int f[maxn]; char P[max ...

  7. Linux 内核链表头数据结构

    链表头必须在使用前用 INIT_LIST_HEAD 宏来初始化. 一个"要做的事情"的链表头可能声 明并且初始化用: struct list_head todo_list; INI ...

  8. C/C++ 获取键盘事件

    Windows 系统下的 vs 中可以使用 _kbhit() 函数来获取键盘事件,使用时需要加入 conio.h 头文件 #include <conio.h> #include <i ...

  9. Next.js 笔记

    NEXT 中文文档地址! next.js 只有服务端使用的包需要做单独处理,无需打包到项目中,可以使用@zeit/next-bundle-analyzer观察代码. Router.beforePopS ...

  10. 常用数据库连接池 (DBCP、c3p0、Druid) 配置说明(转)

    1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库 ...