Linux篇(三):Linux的包管理工具

什么是包管理工具

简单来说,Linux软件包管理工具是一组命令的集合,其作用是提供在操作系统中安装,升级,卸载需要的软件的方法,并提供对系统中所有软件状态信息的查询。在 GNU/Linux( 以下简称 Linux) 操作系统中,RPM 和DPT为最常见的两类软件包管理工具,他们分别应用于基于 rpm 软件包的 Linux 发行版本和基于deb软件包的 Linux 发行版本。

版本 前端 后端 包格式
Debian, Ubuntu等 dpkg-deb/apt-get DPT管理器 deb
RedHat,SUSE等 yum RPM管理器 rpm

#注意: deb前端工具和deb格式程序包在具体发行的Linux环境下的区别, rpm管理器和rpm格式程序包同理.

RPM 软件包管理

RPM 全称为 Redhat Package Manager,最早由 Red Hat 公司制定实施,随后被 GNU 开源操作系统接受并成为很多 Linux 系统 (RHEL) 的既定软件标准。
yum(Yellodog Update Modifier),是RPM提供的更高级工具,能手动管理RPM的依赖关系 ;
rpm与 yum的具体命令,此处不再赘述,网上有较多资料;(博客中与linux相关的知识主要以Ubuntu为主)
在这里插入图片描述

DEB 软件包管理工具

1. 本地管理:dpkg命令
基于 Debian 操作系统 (UBUNTU) 的 DEB 软件包管理工具- DPKG,全称为 Debian Package,是一个可以安装、构建、删除及管理 Debian 软件包的命令行工具,用来制作Debian包的工具,同时也可以查看、解压Debian包。
dpkg -i 全称的安装命令,必须全称
dpkg -L 列出安装的路径,可以查看怎么使用, package只需要前边的名字就可以
dpkg -r 卸载, package只需要前边的名字就可以
dpkg -P 卸载软件及配置文件
dpkg -s 显示软件安装的状态,看是不是安装了
2. 在线安装:apt类命令
由于操作系统中软件包存在复杂的依赖关系,为了解决软件包的依赖性问题和获取问题,出现了APT(是Debian Linux开发的)
APT是Ubuntu Linux中的命令行软件包管理工具,用于获取、安装、编译、卸载和查询Deb软件包,以及检查软件包的依赖关系。常用的APT实用程序是apt-get、apt- cache、apt-file、apt-cdrom等。
Ubuntu采用集中式的软件仓库机制,将各式各样的软件包分门别类的存放在软件仓库中,进行有效的组织和管理。然后,将软件仓库至于许许多多的镜像服务器中,并保持基本一致。这样,所有的Ubuntu用户随时都能获得最新版本的安装软件包。因此,对于用户,这些镜像就是他们的软件源。
需要知道的3个路径:
/etc/apt/sources.list 这是安装包的镜像站点
/var/lib/apt/lists 本地软件包索引(这样才能快速的定位用哪个网站)
/var/cache/apt/archives/ 安装包的默认下载目录
apt的命令如下:
sudo apt-get update 更新本地索引,即更新/var/lib/apt/lists里边的内容
sudo apt-get upgrade 所有软件包都更新。。。慎用
sudo apt-get install xxxx (不是全称,软件包名即可)安装
sudo apt-get --reinstall install xxxx 重新安装,可以在不卸载的情况下更新版本
sudo apt-get remove --purge xxxx 彻底卸载(–purge是彻底)
sudo apt-get clean 删除默认目录下的deb包
sudo apt-get source xxx 下载 xxx的源码到当前目录
sudo apt-cache policy xxx 查看已经安装的软件的信息
sudo apt-cache show xxx 查看索引文件中已有软件包的详细信息
sudo apt-cache showpkg xxx 跟show差不多
sudo apt-cache depends xxx 列出xxx所依赖的文件
sudo apt-cache rdepends xxx 列出xxx被依赖的文件

PS: Linux中apt与apt-get命令的区别与解释

Ubuntu 16.04 发布时,一个引人注目的新特性便是 apt 命令的引入。其实早在 2014 年,apt 命令就已经发布了第一个稳定版,只是直到 2016 年的 Ubuntu 16.04 系统发布时才开始引人关注。
随着 apt install package 命令的使用频率和普遍性逐步超过 apt-get install package,越来越多的其它 Linux 发行版也开始遵循 Ubuntu 的脚步,开始鼓励用户使用 apt 而不是 apt-get。
Debian 作为 Ubuntu、Linux Mint 和 elementary OS 等 Linux 操作系统的母板,其具有强健的「包管理」系统,它的每个组件和应用程序都内置在系统中安装的软件包中。Debian 使用一套名为 Advanced Packaging Tool(APT)的工具来管理这种包系统,不过请不要把它与 apt 命令混淆,它们之间是其实不是同一个东西。
在基于 Debian 的 Linux 发行版中,有各种工具可以与 APT 进行交互,以方便用户安装、删除和管理的软件包。apt-get 便是其中一款广受欢迎的命令行工具,另外一款较为流行的是 Aptitude 这一命令行与 GUI 兼顾的小工具。
apt 命令的引入是为了解决命令过于分散的问题,它包括了 apt-get 命令出现以来使用最广泛的功能选项,以及 apt-cache 和 apt-config 命令中很少用到的功能。
在使用 apt 命令时,用户不必再由 apt-get 转到 apt-cache 或 apt-config,而且 apt 更加结构化,并为用户提供了管理软件包所需的必要选项。
简单来说就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合。1


  1. https://blog.csdn.net/maizousidemao/article/details/79859669 ↩︎

发布了37 篇原创文章 · 获赞 33 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/xu_fengyu/article/details/85218057