软件包是什么?

是将应用程序、配置文件和数据打包在一起的产物。

所有的linux发行版都采用了某种形式的软件包系统,这使得linux软件管理和在windows下一样方便。

suse、red hat、fedora等发行版都是用rpm包,Debian和Ubuntu则使用.deb格式的软件包。

包管理器是什么?

包管理器(package manager)是一种工具,它允许用户在操作系统上安装、删除、升级、配置和管理软件包。

软件包管理器可以是像 软件中心 这样的图形化应用,也可以是像 apt-get 或 pacman 这样的命令行工具。

包管理器是如何工作的?

几乎所有的 Linux 发行版都有软件仓库,它基本上是软件包的集合。

软件库包含不同种类的软件包。

软件仓库也有元数据文件,其中包含了软件包的信息,如软件包的名称、版本号、软件包的描述和软件仓库名称等。

系统上的包管理器首先会与元数据进行交互,在系统上创建一个元数据的本地缓存。

  • 当你运行包管理器的更新选项(例如 apt update)时,软件包管理器会通过引用仓库中的元数据来更新本地元数据缓存;
  • 当你运行软件包管理器的安装命令(例如 apt install package_name)时,软件包管理器会引用这个缓存;如果在缓存中找到了包的信息,就会使用互联网连接到相应的仓库,并在你的系统上安装之前先下载包。

一个包可能有很多依赖关系,也就是说在安装之前需要安装其他软件包。软件包管理器通常会处理这些依赖关系,并将其与你正在安装的软件包一起自动安装。

rpm

rpm是红帽公司开发的软件包管理方式。

全称为 redhat package management,用于安装 卸载 .rpm软件。

rpm软件包管理安装软件的时候,会产生一系列问题,比如,你安装一个软件包,而这个软件包有依赖软件,那么你需要先安装依赖软件

#安装 i.安装 v.显示详细过程 h.以进度条显示
$ rpm -ivh xxx.rpm   

#卸载 需要手动解决依赖
$ rpm -e xxx.rpm

#升级
$ rpm -Uvh xxx.rpm

#查看是否已经安装 
$ rpm -q xxx.rpm

#查询软件的安装路径
$ rpm -ql xxx.rpm

#查询软件的配置文件路径 
$ rpm -qc xxx.rpm

串联下:

使用wget下载一个 rpm包, 然后用 rpm -ivh  xxx.rpm  安装这个软件,

嫌麻烦的话,可以直接用  yum  install  sqoop   来自动下载和安装依赖的rpm软件。

yum

全称为 Yellow dog Updater, Modified,是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。

基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

配置文件是/etc/yum.conf

#安装xxx软件 
$ yum install xxx        

#删除软件包 
$ yum remove xxx

注:yum工具是红帽子才有的软件管理工具,例如suse和乌班图等系统,就没有yum

ap-get

ap-get是ubuntu下的一个软件安装方式,它是基于debain。

#安装包 
$ sudo apt-get install package 

#删除包 
$ sudo apt-get remove package

wget

wget不是安装方式,他是一种下载软件,类似与迅雷。 如果要下载一个软件,我们可以直接 wget 下载地址。

著名的linux系统基本上分两大类:

1.RedHat系列:Redhat、Centos、Fedora等
2.Debian系列:Debian、Ubuntu等

RedHat 系列 
1 常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数”
2 包管理工具 yum
3 支持tar包

Debian系列 
1 常见的安装包格式 deb包,安装deb包的命令是“dpkg -参数”
2 包管理工具 apt-get
3 支持tar包

tar vs rpm

tar 只是一种压缩文件格式,一般包括编译脚本,可以在自己的环境下编译。

rpm 一般都是预先编译好的文件,直接通过rpm命令进行安装删除等操作,很可能已经绑定到某种CPU或者发行版上

 

作者 admin

百度广告效果展示