Linux系列教程(十一)——Linux软件包管理之RPM命令

  前面我们介绍了Linux系统的常用命令介绍和文本编辑器vim命令的介绍。那么从这篇博客开始,我们会正式的讲解Linux的系统管理,首先要讲的是Linux的软件包管理。

1、Linux软件包分类

  一、源码包

    源码包能直接看到源码,安装时需要人为手工设置安装位置,一般是/usr/local/软件名/。源码包的升级版——脚本安装包,人为的改动源码使其有安装界面。

    优点:

    ①、开源,如果有足够的能力,可以直接修改源代码。

    ②、安装时可以自由选择所需的功能。

    ③、软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高。

    ④、卸载方便,直接删了你安装软件的那个目录就好了。

    缺点:

    ①、安装步骤较多,尤其安装较大的软件集合时,容易出现拼写错误。

    ②、编译时间过长,比后面讲的二进制安装时间长。

    ③、因为是编译安装,安装过程中一旦报错新手很难解决。

  二、二进制包

    这里的二进制包最要包括centos中的rpm包。rpm包有默认安装位置。/etc/ 配置文件安装目录;/usr/bin/ 可执行的命令安装目录;/usr/lib/ 程序所使用的函数库保存位置;/usr/share/doc/ 基本的软件使用手册保存位置;/usr/share/man/ 帮助文件保存位置。

    优点:

    ①、包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载。

    ②、安装速度比源码包快很多。

    缺点:CentOS-6.8-x86_64-bin-DVD1.iso

    ①、已经经过编译了,看不到源代码。

    ②、功能选择不如源代码包灵活。

    ③、安装过程中有很多依赖的包,依赖性不好解决。

2、rpm 包命名规则

  我们打开前面安装Linux系统的安装文件 CentOS-6.8-x86_64-bin-DVD1.iso。在package目录下都是rpm安装文件。

  我们以 httpd-2.2.15-53.el6.centos.x86_64.rpm 文件为例来看rpm包的命名规则。

  ①、httpd:软件包名

  ②、2.2.15:软件版本

  ③、15:软件发布的次数

  ④、el6.centos:适合的Linux平台

  ⑤、x86_64:适合的硬件平台,这里表示64位。

  ⑥、rpm:rpm包的扩展名,注意Linux是没有扩展名的概念,这里是告诉管理员这是一个rpm包文件。

3、rpm包安装

  范例:以安装 httpd-2.2.15-53.el6.centos.x86_64.rpm 为例:

    我们进入到该rpm文件的挂载目录 /mnt/cdrom/Packages,执行命令:rpm -ivh httpd-2.2.15-53.el6.centos.x86_64.rpm

  注意:这种安装方法可能需要先安装各种依赖,安装过程特别繁琐,后面讲解yum安装会简单的多。

4、rpm包升级

5、rpm包卸载

6、查询rpm包是否安装

7、查询软件包的详细信息

8、查询软件包的安装位置  

9、查询系统文件属于哪个RPM包

10、查询软件包的依赖性

11、总结

  本篇博客主要介绍了rpm包。包括rpm包的命名规则、安装、升级、卸载等,还有如何查询rpm包的相关信息。这里如果大家使用rpm命令手动安装某个软件包,你会发现安装遇到到的依赖让你痛不欲生,安装一个rpm时会要先先安装某个依赖的rpm,而安装这个依赖的rpm包是可能又必须先安装它所依赖的。在实际操作中,我们肯定是不会使用rpm命令手动安装软件包的,那么有更简单的方法吗?答案是肯定的,下一篇博客我们将介绍RPM包管理——yum在线管理。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算教程系列

如何在CentOS上安装Perl 5

Perl5是一种全功能的编程语言。它用于所有类型的生产项目,包括世界各地的商业业务系统。Perlbrew是Perl5的安装和版本切换工具,您可以安装,删除,并在...

1170
来自专栏云计算教程系列

如何在一个Ubuntu 18.04服务器上将Nginx配置为Web服务器和Apache的反向代理

Apache和Nginx是目前比较流行的两种常用于PHP的开源Web服务器。当托管具有不同要求的多个网站时,在同一虚拟机上运行它们会很有用。在单个系统上运行两个...

1760
来自专栏静默虚空的博客

图解使用VS的安装项目打包程序

背景 这段时间一直在做客户端程序的打包程序,遇到各种坑。因为以前没有任何这方面的经验,历经各种折腾,费尽九牛二虎之力总算是完成了。 虽然没有太多技术含量,但是因...

1775
来自专栏web

vue.js环境搭建

1333
来自专栏云计算教程系列

如何在Debian 9上安装Linux,Apache,MariaDB,PHP(LAMP)堆栈

“LAMP”堆栈是一组开源软件,通常安装在一起以使服务器能够托管动态网站和Web应用程序。这个术语实际上是一个缩写,代表L inux操作系统,带有A pache...

1032
来自专栏容器云生态

企业网站架构之Nginx详解原理以及工作模块;源码Lnmp架构

Nginx详解及lnmp环境架构 一、Nginx详解以及优点 在当前互联网环境下,一般高端的服务前端都采用nginx作为web前端,而更多的都是采用lnmp...

3227
来自专栏北京马哥教育

40张步骤截图教你用腾讯云服务器配置LNMP环境并安装wordpress

? 作者:liuxinig 来源: http://www.cnblogs.com/liuxinig/p/5928361.html 本文有点长,原因是每一步都有...

7548
来自专栏码代码的陈同学

Linux: sudo小技能

sudo 允许一个权限受限用户在指定的安全策略下以root用户或其它用户执行一条命令(不需要知道root用户密码也不需要切换到root用户)。出于安全考虑,当你...

2211
来自专栏『不羁阁』行走的少年专栏

Hexo 博客部署到腾讯云教程

2384
来自专栏云计算教程系列

# 如何在Ubuntu 16.04上配置绑定为缓存或转发DNS服务器 ###

在学习如何配置网站和服务器时,DNS或域名系统通常是一个难以实现的组件。虽然大多数人可能会选择使用其托管公司或其域名注册商提供的DNS服务器,但创建自己的DNS...

1000

扫码关注云+社区