以安装apache服务为例来介绍rpm命令,rpm命令需要我们手工解决rpm包之间的依赖,而且rpm命令需要本地已经下载好了安装包。以下通过实例来学习rpm命令。linux里面的二进制包又叫rpm包又叫系统默认包相当于windows的exe文件,rpm包管理有两种方式:一种是我们此次要说的rpm命令,另外一种叫yum在线安装。

1.怎么查看本机有没有安装过apache服务?

[root@localhost Packages]# rpm -q httpd
httpd-2.2.15-29.el6.centos.i686
[root@localhost Packages]# rpm -qa |grep httpd
httpd-tools-2.2.15-29.el6.centos.i686
httpd-2.2.15-29.el6.centos.i686

命令解释:以上两种方法都可以查看本机是否安装了httpd服务,如果查询有结果,说明已经安装了。"rpm -q httpd"和“rpm -qa|grep httpd”有什么区别?

rpm -q httpd:-q即query的缩写,表示查询包名为httpd的rpm软件包是否安装

rpm -qa|grep httpd:a即all的缩写,rpm -qa是查询本机安装的所有rpm软件包

2.如何卸载掉已经安装过的httpd呢?

rpm -e --nodeps httpd
#或者
rpm -e --nodeps httpd-2.2.15-29.el6.centos.i686

-e:erase本意是橡皮,这里表示移除删除的意思,当rpm要删除的包有依赖关系时,linux会提示你,最终也删除不成功,加入--nodeps选项可以忽略这些依赖关系直接删除。

3.如何安装httpd服务?

[root@localhost Packages]# rpm -ivh httpd-2.2.15-29.el6.centos.i686.rpm
error: Failed dependencies:httpd-tools = 2.2.15-29.el6.centos is needed by httpd-2.2.15-29.el6.centos.i686

此时有个前提,就是当前所在Packages目录中需要包含要安装的httpd-2.2.15-29.el6.centos.i686.rpm软件包,不然会报出“error: open of = failed: 没有那个文件或目录”的错误,我们看上边命令行中的错误是说依赖的问题,我们就先要追根溯源的去安装被依赖的rpm包。

[root@localhost Packages]# rpm -ivh httpd-tools-2.2.15-29.el6.centos.i686.rpm
Preparing...                ########################################### [100%]1:httpd-tools            ########################################### [100%]
[root@localhost Packages]# rpm -ivh httpd-2.2.15-29.el6.centos.i686.rpm
Preparing...                ########################################### [100%]1:httpd                  ########################################### [100%]

注意:这里时使用的包的全名。-i:install         -v:verbose详细的意思  h:hash

4.安装好之后,我的文件都被安装在了哪些目录,我安装好了,去哪找启动文件或者配置文件啊,是不是感觉有点迷茫?

rpm -ql httpd

或者

rpm -qlp httpd-2.2.15-29.el6.centos.i686.rpm

结果截图如下:

rpm -ql httpd:-l是location的意思,显示后边软件包httpd包含文件的位置信息

rpm -qlp httpd-2.2.15-29.el6.centos.i686.rpm:p是package(中文意思是包)的意思,表示后边跟的是包的全名

5.如何查询已安装的rpm包httpd的版本等信息?

rpm -qi httpd   #i:info的简写

或者

rpm -qip  httpd-2.2.15-29.el6.centos.i686.rpm  #要求当前目录要含有这个软件包,不然找不到文件呀

结果如下:

[root@localhost Packages]# rpm -qi httpd
Name        : httpd                        Relocations: (not relocatable)
Version     : 2.2.15                            Vendor: CentOS
Release     : 29.el6.centos                 Build Date: 2013年08月14日 星期三 01时28分20秒
Install Date: 2017年12月05日 星期二 19时16分51秒      Build Host: c6b8.bsys.dev.centos.org
Group       : System Environment/Daemons    Source RPM: httpd-2.2.15-29.el6.centos.src.rpm
Size        : 2905719                          License: ASL 2.0
Signature   : RSA/SHA1, 2013年08月14日 星期三 01时32分37秒, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
URL         : http://httpd.apache.org/
Summary     : Apache HTTP Server
Description :
The Apache HTTP Server is a powerful, efficient, and extensible
web server.
[root@localhost Packages]# rpm -qip httpd-2.2.15-29.el6.centos.i686.rpm
Name        : httpd                        Relocations: (not relocatable)
Version     : 2.2.15                            Vendor: CentOS
Release     : 29.el6.centos                 Build Date: 2013年08月14日 星期三 01时28分20秒
Install Date: (not installed)               Build Host: c6b8.bsys.dev.centos.org
Group       : System Environment/Daemons    Source RPM: httpd-2.2.15-29.el6.centos.src.rpm
Size        : 2905719                          License: ASL 2.0
Signature   : RSA/SHA1, 2013年08月14日 星期三 01时32分37秒, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
URL         : http://httpd.apache.org/
Summary     : Apache HTTP Server
Description :
The Apache HTTP Server is a powerful, efficient, and extensible
web server.

总结:

1.不管是httpd的rpm包安装,还是mysql的rpm软件包安装,亦或是其他rpm软件包的安装,哪类文件安装到哪类文件夹下面,都是预先在在rpm包里定义好的,一般来说,有如下的约定:

/usr/[s]bin:存放安装后的启动文件

/etc/xxxx:xxxx软件的配置文件

/usr/lib/xxxx:xxxx软件依赖的库

/usr/share/doc/xxxx,/usr/share/man/xxxx:xxxx软件的帮助文档

2.rpm包安装后如果产生服务都在/etc/rc.d/init.d目录下,比如启动httpd服务可以通过如下方式:

/etc/rc.d/init.d/httpd start或者service  httpd  start 或者/usr/sbin/apachectl -k start

linux中使用rpm命令详解相关推荐

  1. linux cut命令学习,Linux中的cut 命令详解

    今天小编要跟大家分享的文章是关于Linux中的cut 命令详解.cut 命令在Linux和Unix中的作用是从文件中的每一行中截取出一些部分,并输出到标准输出中.我们可以使用 cut 命令从一行字符串 ...

  2. linux中的tar命令详解,【Linux】tar命令详解

    tar命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用 ...

  3. Linux 中的 nl 命令详解及C/C++代码实现(文件行数)

    在Linux 操作系统中,如果想编辑文本文件时,希望显示在其前面附加行号的行,这时 Linux 中 nl 命令就派上用场,nl 命令对文件中的行进行编号. Linux nl命令 nl 命令是一个 Un ...

  4. Linux 中的 renice 命令详解及C/C++代码实现

    Linux 中的 nice 命令有助于执行具有修改的调度优先级的程序/进程. 它启动具有用户定义的调度优先级的进程. 如果我们给一个进程更高的优先级,那么内核会为这个进程分配更多的 CPU 时间. 而 ...

  5. Linux 中的 chown 命令详解及C/C++代码实现

    操作系统中的不同用户拥有所有权和权限,以确保文件的安全并限制谁可以修改文件的内容.在 Linux 中,chown 命令用于更改系统中另一个用户对文件或目录的所有权. 什么是 chown 命令? cho ...

  6. linux中ln -s 命令详解

    ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在 ...

  7. linux中free -m命令详解,Linux中free命令起什么作用呢?

    摘要: 下文讲述Linux中free的功能说明,如下所示: free命令功能: 用于返回linux系统的物理内存和物理空闲内存 还有交换内存 及被内核使用的缓冲和缓存 free命令的原理: 通过查询/ ...

  8. linux中的du 命令详解

    Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. 1.命令格式: du [选项][文件] 2.命令功能 ...

  9. linux桌面怎么解压tar文件,Linux中tar解压缩命令详解-tar文件怎么打开

    语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项:c 创建新的档案文件.如果用户想备份一个目录或是一些 ...

  10. linux+gunzip解压命令,Linux中的Gunzip命令详解

    Gunzip是用于解压缩Gzip文件的命令行工具.在本教程中,我们将解释如何使用该gunzip命令. Gunzip是用于解压缩Gzip文件的命令行工具. Gzip是最流行的压缩算法之一,可减小文件大小 ...

最新文章

  1. 图解 Attention(完整版)!
  2. 转载【IDEA】向IntelliJ IDEA创建的项目导入Jar包的两种方式
  3. 【机器视觉】 dev_display算子
  4. 三维旋转四元数系列(2.三维旋转之轴角与罗德里格斯公式推导)
  5. android stl,Android NDK中的c++ STL
  6. scala type关键字用于起别名
  7. android 6.0权限机制的简单封装(支持批量申请权限)
  8. 数据中心风侧直接自然冷却节能潜力分析
  9. Go-Kit实现莫斯电码转换
  10. ico付费图标下载器 附带易语言源码
  11. 如何建立线上问题快速响应机制
  12. H3CNE V7.0 视频教程
  13. SQL AlawaysOn 之一:安装域控制器
  14. 2013年10月22日、|充实自己|看书看到恶心看教学视频看到吐|也许旷几次课也是值得的
  15. Android开发我音乐App
  16. OS App体验设计
  17. ESO+LTV MPC算法笔记
  18. 应用机器学习 Applied Machine Learning (AML) ppt2
  19. 医药行业2021年1月投资月报:加配弹性品种,稳守核心资产-20210106
  20. Ray----Tune(2):Tune的用户指南

热门文章

  1. AETA地震预测 AI 算法大赛——Helloworld队比赛方案(亚军)
  2. 论文笔记4 --(ReID)Re-ranking Person Re-identification with k-reciprocal Encoding
  3. 大前研一/聰明人必做的十件事
  4. python运行内存不足_python svm内存不足怎么解决?
  5. 全国区号省份mysql_中国各个省份的区号
  6. 查看源文件默认编辑器打开
  7. codeMirror 光标定位问题
  8. php utc gmt,时区缩写 UTC, CST, GMT, CEST 以及转换
  9. mysql中.myd文件_MySQL中找不到.myd文件的有关问题
  10. 【目标跟踪论文阅读】Cooling-Shrinking Attack: Blinding the Tracker with Imperceptible Noises