共计 4870 个字符,预计需要花费 13 分钟才能阅读完成。
这篇文章主要讲解了“linux apt 工具怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“linux apt 工具怎么使用”吧!
APT 是 Linux 系统下的一个软件包管理工具,可以自动下载、配置、安装二进制或源代码格式的软件包;大部分 apt 命令必须以具有 sudo 权限 的用户身份运行。APT 最早被设计为 dpkg 的前端,用于处理 deb 格式的软件包;现在经过 APT-RPM 组织修改,APT 已经可以安装在支持 RPM 的系统管理 RPM 包。
如果我们想通过 Linux 命令行安装某个软件,直接在命令行下输入以下命令即可:
sudo apt-get update
sudo apt-get install 软件名
这种安装方式是通过 apt 工具 实现安装的,那 apt 到底是什么呢?
一、APT 工具
APT 全称 Advanced Packaging Tool,即 高级包装工具,是 Linux 系统下的一个软件包管理工具。APT 可以自动下载、配置、安装二进制或源代码格式的软件包,因此简化了 Unix 系统上管理软件的过程。Apt 可用来:
安装应用程序
移除应用程序
保持应用为最新
还有更多功能……
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 给出的建议安装的软件包四、使用 apt 命令管理基于 Debian 和 Ubuntu 的 Linux 发行版中的包
我在本教程中使用 Ubuntu 21.04,但你可以使用任何其他基于 Debian/Ubuntu 的 Linux 发行版,例如 Linux Mint、elementary OS、Linux Lite 等。
4.1、使用 apt 更新包数据库
apt 作用于可用包的数据库。如果数据库没有更新,系统将不知道是否有可更新的软件包可用。这就是为什么在任何 Linux 系统中进行了全新安装后,首先要更新存储库。
更新包数据库需要超级用户权限,因此您需要使用 sudo。
sudo apt update
运行此命令看到从各种服务器检索的包信息:
在此处看到三种类型的行:Hit、Get 和 Ign。基本上这些是:
命中 (Hit):包版本与之前的版本没有变化。
忽略 (Ign):包被忽略。要么是包版本太新,它甚至懒得检查,要么在检索文件时出错,但错误微不足道,因此被忽略。
获取 (Get):有一个新版本可用。它将下载有关版本的信息(而不是包本身)。您可以在上面的屏幕截图中看到带有“获取 (Get)”行的下载信息(大小以 kb 为单位)。
4.2、使用 apt 升级已安装的软件包
更新软件包数据库后,就可以升级已安装的软件包。最方便的方法是升级所有具有可用更新的软件包。可以简单地使用以下命令:
sudo apt upgrade
这将显示将要升级的所有软件包的数量和种类。
还有另一种方法可以使用以下命令提供完整升级:
sudo apt full-upgrade
full-upgrade 与 upgrade 的工作原理相同,只是如果系统升级需要删除系统上已安装的软件包,它会这样做。然而,正常的升级命令不会这样做。
4.3、apt update 和 apt upgrade 的区别
虽然听起来像当执行 apt update 时,它会更新软件包,你将获得最新版本的软件包。但事实并非如此。apt update 只更新包的数据库。
例如,如果你安装了 XYZ 包 1.3 版,则在 apt 更新后,数据库将知道有更新的 1.4 版可用。当你在 apt update 之后执行 apt upgrade 时,它会将已安装的软件包升级(或更新)到较新的版本。
这就是为什么使用此命令更新 Ubuntu 系统最快、最方便的原因:
sudo apt update
sudo apt upgrade
-y
4.4、使用 apt 安装新软件包
如果已经知道包的名称,则可以使用以下命令进行安装:
sudo apt install package_name
只需将 package_name 替换为所需的包。假设你想安装 mplayer,你可以简单地使用下面的命令:
sudo apt install mplayer
可以使用自动完成功能。当不确定确切的包名称时,可以输入几个字母并按 Tab,它会建议所有以这些字母开头的可用的包。例如:
注意是按 Tab,而不是 Enter!
使用自动完成功能查找具有给定名称的包:
4.5、使用 apt 安装多个软件包
不必一次只安装一个软件包。可以通过同时提供多个软件包名称来一次安装多个软件包:
sudo apt install package_1 package_2 package_3
4.6、如果在已安装的软件包上运行 apt install 会怎样
这将只查看数据库,如果找到更新的版本,它会将已安装的软件包升级到较新的软件包。因此,使用它不会造成任何伤害,除非你不希望它升级。
4.7、在不升级的情况下安装软件包
如果由于某种原因你想安装一个包,但不想升级,如果它已经安装了。在这种情况下,你可以通过以下方式使用选项 –no-upgrade:
sudo apt install package_name
--no-upgrade
4.8、只升级软件包,而不是安装它
如果你只想升级软件包但不想安装它(如果尚未安装),则可以使用以下命令执行此操作:
sudo apt install package_name
--only-upgrade
4.9、安装特定版本的应用程序
默认情况下,将为应用程序安装存储库中可用的最新版本。但是如果不想安装最新版本,可以指定版本号。你需要知道要安装的确切版本号。
只需在包名称后添加 =version 即可。
sudo apt install package_name
= version_number
4.10、使用 apt 删除已安装的软件包
删除软件包就像安装它们一样简单。只需使用以下命令:
sudo apt remove package_name
卸载软件包的另一种方法是使用清除。该命令的使用方式如下:
sudo apt purge package_name
apt remove 和 apt purge 的区别
apt remove 只是删除包的二进制文件。它留下了残留的配置文件。
apt purge 删除与包相关的所有内容,包括配置文件。
如果你习惯于 apt remove 删除特定软件然后重新安装它,你的软件将具有相同的配置文件。当然,再次安装时会要求你覆盖现有的配置文件。
当你弄乱了程序的配置,你想从系统中完全清除它的痕迹再重新开始,清除会很有用。也可以在已删除的包上使用 apt purge。
通常,apt remove 卸载软件包绰绰有余。
4.11、搜索 packages
这不是搜索包的最好方式。但是当你在寻找一些特定的库时,这很有用。只需将以下命令与所需的搜索词一起使用,就可以找到包含搜索词的所有包。
apt search search term
4.12、查看 package 的内容
如果你想在安装或删除软件包之前了解有关软件包的更多信息,可以使用以下命令:
apt show package_name
这将显示有关给定包的信息,例如其依赖项、安装和下载大小、包的不同来源、包内容的描述等:
4.13、列出可升级和已安装的版本
apt 命令有一个名为 list 的新选项。使用此命令,可以查看所有准备升级的较新版本的软件包:
apt list --upgradable
还可以使用 –installed 选项查看系统上所有已安装的软件包:
apt list --installed
还有第三个选项,称为 –all-versions。它将列出可用于你的系统的所有软件包:
apt list --all-versions
4.14、使用 apt 清理系统
与 apt-get 不同,这里没有 clean 和 autoclean 命令。但是仍然可以使用 autoremove 选项释放一些磁盘空间:
sudo apt autoremove
安装软件时会自动安装一些满足依赖关系的库和包。如果软件包被删除,这些自动安装的库和包虽然没有用,但仍会保留在系统中。可以使用此命令清除掉。
感谢各位的阅读,以上就是“linux apt 工具怎么使用”的内容了,经过本文的学习后,相信大家对 linux apt 工具怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!