Linux下软件包的分类及deb、rpm、tar.gz的区别

一、Linux下软件包的内容分类

Linux应用程序的软件包按内容类别可分为两类:

1.可执行文件(编译后的二进制软件包)

  解开包后就可以直接运行的。在Windows中所有的软件包都是这种类型。安装完这个程序后,你就可以使用,但你看不到源程序。而且下载时要注意这个软件是否是你所使用的平台,否则将无法正常安装。
  优点:使用简单,只需要几个命令就可以实现包的安装、升级、查询、卸载;安装速度快;
  缺点:不能看源代码;功能选择不如源代码灵活;依赖性;

2.源程序(源码包)

  解开包后,你还需要使用编译器将其编译成为可执行文件。这在Windows系统中是几乎没有的,因为Windows的思想是不开放源程序的。
  优点:开源;可以自由选择所需功能;可看源代码;卸载方便(直接删除安装位置);
  缺点:安装步骤过多;编译时间过长;

3.区别

  几乎所有的Linux发行版本都使用某种形式的软件包管理安装、更新和卸载软件。与直接从源代码安装相比,软件包管理易于安装和卸载;易于更新已安装的软件包;易于保护配置文件;易于跟踪已安装文件。  
  通常,用tar打包的,都是源程序;而用rpm、dpkg打包的则常是可执行程序。一般来说,自己动手编译源程序能够更具灵活性,但也容易遇到各 种问题和困难。而相对来说,下载那些可执行程序包,反而是更容易完成软件的安装,当然那样灵活性就差多了。所以一般一个软件总会提供多种打包格式的安装程序的。你可以根据自己的情况来选择。 

二、Linux下软件包的格式分类

Linux下的软件安装包主要有rpm、deb、tar.gz三种格式,想了解三种软件包的区别,我们先来看看Linux软件扩展名,通过扩展名可以了解软件格式,进而了解软件安装。

  • 软件后缀为.rpm最初是Red Hat Linux提供的一种包封装格式,现在许多Linux发行版本都使用;
  • 后缀为.deb是Debain Linux提供的一种包封装格式;
  • 后缀为.tar.gz、tar.Z、tar.bz2或.tgz是使用Unix系统打包工具tar打包的;
  • 后缀为.bin的一般是一些商业软件。

1.rpm格式软件包

  RPM全称是Red Hat Package Manager(Red Hat包管理器),是由红帽公司最先发布的一种用来打包软件的的文件格式,他是一种特定的用来安装,卸载软件等操作的专门格式,它里面打包的内容必定是一个可以使用的具体软件。
RPM本质上就是一个包,包含可以立即在特定机器体系结构上安装和运行的Linux软件。在红帽LINUX、SUSE、Fedora可以直接进行安装,但在Ubuntu中却无法识别。

具体操作命令请参考:RPM包命令详解

2.deb格式软件包

  deb是Debian Linux提供的一个包管理器,它与RPM十分类似。但由于RPM出现得早,并且应用广泛,所以在各种版本的Linux中都常见到,而Debian的包管理器dpkg只出现在Debian Linux中。它的优点是不用被严格的依赖性检查所困扰,缺点是只在Debian Linux发行版中才能见到这个包管理工具。
在Ubuntu系统中双击deb包就可以进入自动安装进程。

3.tar.gz格式软件包

  tar.gz就是一个压缩包,类似于win上面的zip等文件,他是为了便于传输所产生的一种专门用于网络流通的文件格式,这种文件的格式与其他两种软件存在本质上的区别,比如:tar.gz可以也是一个文本,照片等等的文件压缩在里面,并不一定是一个具体软件。
在所有的Linux版本中都能使用,但安装过程也最麻烦。

三、Linux下软件安装包的安装命令

具体操作命令请参考:Linux下安装软件命令详解

你可能感兴趣的:(Linux)