Alex_McAvoy

想要成为渔夫的猎手

Linux 软件包管理

【概述】

著名的 Linux 系统基本分为两大类:

  • RedHat 系列:Redhat、Centos、Fedora 等
  • Debian 系列:Debian、Ubuntu、Kali 等

两大系列,对软件的安装管理有所区别:

  • Redhat 系列:安装软件包格式为 rpm 包,一般利用 rpm -参数 安装,所用的包管理工具为 yum
  • Debian 系列:安装软件包格式为 deb 包,一般利用 dpkg -参数 安装,所用的包管理工具为 apt-get

在 Linux 系统中,当要安装软件时,一般用 yum 安装或 rpm 软件包管理。

除上述两种软件包外,还有源代码软件包、绿色免安装软件包等,他们的说明如下:

封装类型 说明
rpm 软件包 扩展名为 .rpm
deb 软件包 扩展名为 .deb
源代码软件包 一般为 .tar.gz、.tar.bz2 等格式的压缩包,包含程序的原始代码
提供安装程序软件包 在压缩包内提供 install.sh、setup 等安装程序或以 .bin 格式的单个执行文件提供
绿色免安装软件包 在压缩包内提供已编译好的执行程序文件,解压后可直接使用

【Redhat 系列】

RPM 软件包

RPM 由 Red Hat 公司提出,其通过建立统一的数据库文件,详细的记录软件包安装、卸载等变化信息,且能够自动分析软件包依赖关系。

一般命名格式为:

例如:bash-3.1-16.1.i386.rpm,软件名称为 bash-3,版本号是 1-16,发型次数为 1,硬件平台为 i386,扩展名为 rpm

命令格式为:rpm [options] [package]

常见的选项有:

  • -i:安装一个新的 rpm 软件包
  • -e:卸载指定的 rpm 软件包
  • -h:以 # 显示安装进度
  • -v:显示安装过程中的常用信息
  • –nodeps:安装、升级或卸载软件时,忽略依赖关系

常用的命令为:rpm -ivh *.rpm

yum 软件包管理

yum 是 Reahat 系列中的 Shell 前端软件包管理器,其基于 rpm 包管理,能够从指定的服务器自动下载 rpm 包并安装,可以处理依赖性关系,一次性安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了管理软件包的便捷方式,在配置软件源后,即可便捷地对软件包进行管理。

命令格式为:yum [options] [command] [package]

常见的命令有:

安装:

  • yum install:全部安装
  • yum install package1:安装软件包 package1
  • yum install group1:安装程序组 group1

更新:

  • yum check-update:检查可更新的程序
  • yum update:全部更新
  • yum update package1:更新软件包 package1
  • yum update group1:更新程序组 group1

查找与显示:

  • yum info package1:显示软件包 package1 的信息
  • yum list:显示已安装和可安装的软件包
  • yum list package1:显示程序包 package1 的信息
  • yum groupinfo group1:显示程序组 group1 的信息
  • yum search string:根据关键字 string 查找软件包

删除程序:

  • yum remove package1:删除程序 package1
  • yum groupremove group1:删除程序组 group1
  • yum deplist package1:查看软件 package1 的依赖情况

清除缓存:

  • yum clean packages:清除缓存目录下的软件包
  • yum clean headers:清除缓存目录下的 headers
  • yum clean oldheaders:清除缓存目录下旧的 headers

【Debian 系列】

deb 软件包

所有源自 Debian 的 Linux 发行版都使用 deb 格式,其与 rpm 十分相似。

在 Debian 系列中,对软件的安装、更新、移出时,需要使用 Debian 专门开发的套件管理系统 dpkg,其与 RPM 十分相似。

命令格式为:dpkg [options] [package]

常见的选项有:

  • -i:安装一个新的 dep 软件包
  • -r:卸载指定的 dep 软件包
  • -I:显示 deb 包的信息
  • -s:显示已安装的软件信息

apt 管理工具

APT 是 Debian 系列中的 Shell 前端软件包管理器,其基于 dpkg 包管理,类似于 yum

apt 管理器包含多个以 apt- 开头的工具,如:apt-getapt-caheapt-cdrom 等,其中最常用的就是 apt-get

apt-get 是用于处理 apt 包的公用程序集,常可用它来在线安装、卸载、升级软件包等。

当执行安装操作时,apt-get 工具首先会在本地的软件源数据库中搜索关于要安装的软件的相关信息,并根据这些信息在相关的软件源镜像服务器上下载软件,进行安装。

使用 apt-get 需要定期从服务器上下载一个软件包列表,使用 apt-get update 命令来保持本地的软件包列表是最新的,这个表里会有软件依赖信息的记录

命令格式为:apt-get [options] [command]

常用的选项有:

  • -y:自动回应是否安装软件包的选项
  • -f:修复损坏的依赖关系
  • -q:静默安装方式,指定多个 q 或 -q=# 来设置静默级别(#为数字)
  • –reinstall:重新安装已安装但可能存在问题的软件包

常用的命令有:

  • install:安装软件包
  • update:更新本地软件源列表
  • remove:移除已安装的软件包与有依赖关系的软件包
  • autoremove:移除之前被其他软件包依赖,但现在不再被使用的软件包
感谢您对我的支持,让我继续努力分享有用的技术与知识点!