Linux 学习笔记(四):apt 命令是什么

如果我们想通过 Linux 命令行安装某个软件,直接在命令行下输入以下命令即可:

sudo apt-get update
sudo apt-get install <软件名>

这种安装方式是通过 apt 工具 实现安装的,那 apt 到底是什么呢? 

一、APT 工具

        APT 全称 Advanced Packaging Tool,即 高级包装工具,是 Linux 系统下的一个软件包管理工具。APT 可以自动下载、配置、安装二进制或源代码格式的软件包,因此简化了 Unix 系统上管理软件的过程。

        APT 最早被设计为 dpkg(Debian Package)的前端,用于处理 deb 格式的软件包。现在经过 APT-RPM 组织修改,APT 已经可以安装在支持 RPM 的系统管理 RPM 包。这个包管理器包含以 apt- 开头的多个工具,如  apt-get    apt-cache    apt-cdrom  等。

        简单来说,apt 就是一个命令行实用程序,用于 安装、更新、管理、删除、查找… 软件包。大部分 apt 命令必须以具有 sudo 权限 的用户身份运行。

  • apt 适用于 Ubuntu、Debian 和相关 Unix 发行版,不适用于 redhat、centos……

二、APT 工作原理

        APT 是一个客户/服务器系统。在服务器上先复制所有的 deb 包(deb - Debian 软件包格式的文件扩展名);然后使用 APT 的分析工具 - genbasedir,根据每个 deb 包的包头信息对所有的 deb 包进行分析,并将分析结果记录在一个文件 - DEB 索引清单中。APT 服务器的 DEB 索引清单置于 base 文件夹内。一旦 APT 服务器内的 deb包 有所变动,一定要使用 genbasedir 产生新的 DEB 索引清单。客户端在进行安装或升级时先要查询 DEB 索引清单,从而获得所有具有依赖关系的软件包,并一同下载到客户端以便安装。

        当客户端需要安装、升级或删除某个软件包时,客户端计算机取得 DEB 索引清单的压缩文件后,将其解压置于 /var/state/apt/lists/ 目录下。而客户端使用 apt-get install 或 apt-get upgrade 命令时,就会将这个文件夹内的数据和客户端计算机内的 DEB 数据库进行比对,知道哪些 DEB 是已安装、未安装或是可升级的。

        客户端需要定期从服务器上下载一个软件包列表,因为 apt 工具实际上是在可用软件包的数据库上工作。当执行安装操作时 apt-get 工具会在本地可用软件包数据库中搜索目标软件的相关信息,并根据这些信息在相关的服务器上下载软件并安装。所以在安装之前通常都会通过  sudo apt-get update  更新一下本地的软件包数据库。

三、APT 命令

(1)apt-get 常用命令

命令 说明
sudo apt-get update 更新本地软件包数据库
sudo apt-get install <软件名> 安装软件包
sudo apt-get --reinstall install <软件名> 重新安装软件包,如:系统被破坏、一些错误的配置导致软件无法正常工作…
sudo apt-get upgrade 升级所有已安装的软件包
sudo apt-get full-upgrade 完全升级已安装的软件包
sudo apt-get remove <软件名> 移除已安装的软件包(包括与被移除软件包有依赖关系的软件包,但不包含软件包的配置文件)
sudo apt-get autoremove 移除之前被其他软件包依赖,但现在不再被使用的软件包
sudo apt-get purge <软件名> 完全移除软件包(包括软件包的配置文件
sudo apt-get clean 移除下载到本地的已经安装的软件包,默认保存在 /var/cache/apt/archives/
sudo apt-get list 生成软件包列表
sudo apt-get search <软件名> 搜索软件包
sudo apt-get show <软件名> 显示软件包具体信息,如:版本号、安装大小、依赖关系等

(2)apt-get 常用参数

参数 说明
-y 自动回应是否安装软件包的选项,在一些自动化安装脚本中非常有用
-s 模拟安装
-q 安静安装方式,指定多个 q-q=#(#表示数字,用于设定静默级别),在不想要安装过程中屏幕输出过多内容时非常有用
-f 修复损坏的依赖关系
-d 下载,不安装
--reinstall 重新安装已经安装但可能存在问题的软件包
--install-suggests 同时安装 APT 给出的建议安装的软件包

猜你喜欢

转载自blog.csdn.net/Amentos/article/details/129362109