20个作为Sysadmin管理Ubuntu或Debian软件包的apt命令
APT或者Advanced Package Tool是基于Debian/Ubuntu的发行版中用于软件包管理的命令行工具。
它是可用的软件包管理器之一,与apt-get
一起,它允许您安装、修改或删除不同的软件包,而无需从源代码构建它们。它可以执行更多与软件包管理相关的操作,我们将在下一节中介绍。
使用apt
命令的一般语法如下:
$ apt [COMMAND] [PACKAGE]
请记住在apt
之前使用sudo
,因为它的许多子命令需要特权来进行系统级更改。
这里我们将介绍您可以与apt
一起使用的不同子命令及其用法。
更新软件包数据库
apt
需要一个包含所有可在Debian/Ubuntu系统上安装的软件包的数据库的软件包存储库。在开始安装软件包之前,应该更新这个存储库数据库,因为apt
需要了解软件包的详细信息,包括版本、架构和远程位置。
更新存储库数据库很简单,只需执行以下命令:
$ sudo apt update
示例:
abhisheknair@yaoweibin:~$ sudo apt update
Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Hit:2 http://azure.archive.ubuntu.com/ubuntu focal InRelease
Get:3 http://azure.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Get:4 http://azure.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [1086 kB]
Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [841 kB]
Fetched 2255 kB in 1s (2677 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
14 packages can be upgraded. Run 'apt list --upgradable' to see them.
abhisheknair@yaoweibin:~$
升级已安装的软件包
可以使用以下命令将系统上已安装的软件包升级到最新可用版本:
$ sudo apt upgrade
使用upgrade
命令,如果需要满足依赖关系,则会安装软件包,但不会删除现有软件包。如果升级一个软件包需要删除一个已安装的软件包,那么不会执行这个软件包的升级。
示例:
abhisheknair@yaoweibin:~$ sudo apt update
获取:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
已获取:2 http://azure.archive.ubuntu.com/ubuntu focal InRelease
获取:3 http://azure.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
获取:4 http://azure.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
获取:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [1086 kB]
获取:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [841 kB]
已获取 2255 kB,用时 1s (2677 kB/s)
正在读取软件包列表… 完成
正在构建依赖树
正在读取状态信息… 完成
有 14 个软件包可以升级。运行 ‘apt list –upgradable' 来查看它们。
abhisheknair@yaoweibin:~$ sudo apt upgrade
正在读取软件包列表… 完成
正在构建依赖树
正在读取状态信息… 完成
正在计算升级… 完成
以下软件包将会升级:
apt apt-utils libapt-pkg6.0 libpython3.8 libpython3.8-minimal libpython3.8-stdlib libuv1 linux-base linux-base-sgx open-vm-tools python3-distupgrade python3.8
python3.8-minimal ubuntu-release-upgrader-core
升级了 14 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未升级。
需要下载 9485 kB 的归档文件。
此操作将消耗额外的 603 kB 磁盘空间。
是否继续进行?[Y/n] Y
获取:1 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libapt-pkg6.0 amd64 2.0.6 [835 kB]
获取:2 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 apt amd64 2.0.6 [1296 kB]
获取:3 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 apt-utils amd64 2.0.6 [216 kB]
获取:4 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8 amd64 3.8.10-0ubuntu1~20.04 [1625 kB]
获取:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3.8 amd64 3.8.10-0ubuntu1~20.04 [387 kB]
获取:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8-stdlib amd64 3.8.10-0ubuntu1~20.04 [1675 kB]
获取:7 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3.8-minimal amd64 3.8.10-0ubuntu1~20.04 [1898 kB]
获取:8 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8-minimal amd64 3.8.10-0ubuntu1~20.04 [717 kB]
获取:9 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libuv1 amd64 1.34.2-1ubuntu1.3 [80.8 kB]
获取:10 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 ubuntu-release-upgrader-core all 1:20.04.35 [23.9 kB]
获取:11 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-distupgrade all 1:20.04.35 [104 kB]
获取:12 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-base all 4.5ubuntu3.6 [17.8 kB]
获取:13 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-base-sgx all 4.5ubuntu3.6 [4660 B]
获取:14 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 open-vm-tools amd64 2:11.2.5-2ubuntu1~ubuntu20.04.1 [604 kB]
已获取 9485 kB,用时 0s (54.4 MB/s)
预设设定软件包 …
(正在读取数据库 … 现已安装 59511 个文件和目录。)
准备解包 …/libapt-pkg6.0_2.0.6_amd64.deb …
正在解包 libapt-pkg6.0:amd64 (2.0.6) (2.0.5) …
正在设置 libapt-pkg6.0:amd64 (2.0.6) …
(正在读取数据库 … 现已安装 59511 个文件和目录。)
准备解包 …/archives/apt_2.0.6_amd64.deb …
正在解包 apt (2.0.6) (2.0.5) …
正在设置 apt (2.0.6) …
(正在读取数据库 … 现已安装 59511 个文件和目录。)
准备解包 …/00-apt-utils_2.0.6_amd64.deb …
正在解包 apt-utils (2.0.6) (2.0.5) …
准备解包 …/01-libpython3.8_3.8.10-0ubuntu1~20.04_amd64.deb …
正在解包 libpython3.8:amd64 (3.8.10-0ubuntu1~20.04) (3.8.5-1~20.04.3) …
准备解包 …/02-python3.8_3.8.10-0ubuntu1~20.04_amd64.deb …
正在解包 python3.8 (3.8.10-0ubuntu1~20.04) (3.8.5-1~20.04.3) …
准备解包 …/03-libpython3.8-stdlib_3.8.10-0ubuntu1~20.04_amd64.deb …
正在解包 libpython3.8-stdlib:amd64 (3.8.10-0ubuntu1~20.04) (3.8.5-1~20.04.3) …
准备解包 …/04-python3.8-minimal_3.8.10-0ubuntu1~20.04_amd64.deb …
正在解包 python3.8-minimal (3.8.10-0ubuntu1~20.04) (3.8.5-1~20.04.3) …
准备解包 …/05-libpython3.8-minimal_3.8.10-0ubuntu1~20.04_amd64.deb …
正在解包 libpython3.8-minimal:amd64 (3.8.10-0ubuntu1~20.04) (3.8.5-1~20.04.3) …
准备解包 …/06-libuv1_1.34.2-1ubuntu1.3_amd64.deb …
正在解包 libuv1:amd64 (1.34.2-1ubuntu1.3) (1.34.2-1ubuntu1.1) …
准备解包 …/07-ubuntu-release-upgrader-core_1%3a20.04.35_all.deb …
正在解包 ubuntu-release-upgrader-core (1:20.04.35) (1:20.04.33) …
准备解包 …/08-python3-distupgrade_1%3a20.04.35_all.deb …
正在解包 python3-distupgrade (1:20.04.35) (1:20.04.33) …
准备解包 …/09-linux-base_4.5ubuntu3.6_all.deb …
正在解包 linux-base (4.5ubuntu3.6) (4.5ubuntu3.1) …
准备解包 …/10-linux-base-sgx_4.5ubuntu3.6_all.deb …
正在解包 linux-base-sgx (4.5ubuntu3.6) (4.5ubuntu3
请确保在升级软件包之前执行sudo apt update
,以避免升级过程中出现问题,并确保从软件源获取最新可用的软件包。如果你愿意,你可以将这些命令合并为一行,如下所示:
$ sudo apt update && sudo apt upgrade -y
全系统升级软件包
apt还提供了一个full-upgrade
命令。它与upgrade
命令的不同之处在于,如果需要升级整个系统,它将删除当前安装的软件包。因此,对于这个命令要小心,如果可能的话,建议使用upgrade
命令。
$ sudo apt full-upgrade
安装单个软件包
使用apt
可以通过以下语法来安装新的软件包:
$ sudo apt install [软件包名称]
示例:
abhisheknair@yaoweibin:~$ sudo apt install unzip
正在读取软件包列表... 完成
正在构建依赖关系树
正在读取状态信息... 完成
建议安装:
zip
下列【新软件包】将被安装:
unzip
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 14 个未被升级
需要下载 169 kB 的归档文件。
解压缩后会消耗 593 kB 的额外空间。
获取:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
已下载 169 kB,耗时 0s (4040 kB/s)
正在选中未选择的软件包 unzip。
(正在读取数据库 ... 系统当前共安装有 59511 个文件和目录。)
正准备解包 .../unzip_6.0-25ubuntu1_amd64.deb ...
正在解包 unzip (6.0-25ubuntu1) ...
正在设置 unzip (6.0-25ubuntu1) ...
正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...
正在处理用于 man-db (2.9.1-1) 的触发器 ...
abhisheknair@yaoweibin:~$
安装多个软件包
你可以使用apt
在系统上安装多个软件包。它的语法与前面的示例类似:
$ sudo apt install [软件包名称1] [软件包名称2] ... [软件包名称n]
示例:
abhisheknair@yaoweibin:~$ sudo apt install zip unzip
正在读取软件包列表... 完成
正在构建依赖关系树
正在读取状态信息... 完成
下列【新软件包】将被安装:
unzip zip
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 0 个未被升级
需要下载 336 kB 的归档文件。
解压缩后会消耗 1231 kB 的额外空间。
获取:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
获取:2 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 zip amd64 3.0-11build1 [167 kB]
已下载 336 kB,耗时 0s (7749 kB/s)
正在选中未选择的软件包 unzip。
(正在读取数据库 ... 系统当前共安装有 59527 个文件和目录。)
正准备解包 .../unzip_6.0-25ubuntu1_amd64.deb ...
正在解包 unzip (6.0-25ubuntu1) ...
正在选中未选择的软件包 zip。
正准备解包 .../zip_3.0-11build1_amd64.deb ...
正在解包 zip (3.0-11build1) ...
正在设置 unzip (6.0-25ubuntu1) ...
正在设置 zip (3.0-11build1) ...
正在处理用于 man-db (2.9.1-1) 的触发器 ...
正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...
abhisheknair@yaoweibin:~$
如果已安装系统上的某个指定软件包,则apt将在存储库中查找更新,如果有更新,则升级软件包,否则将保持已安装的版本不变。
安装特定版本
在企业系统中,通常需要安装特定版本的软件包。apt
允许你安装一个给定版本的软件包,假设它在存储库中可用,使用以下命令:
$ sudo apt install [软件包名称]=[版本号]
示例:
abhisheknair@yaoweibin:~$ sudo apt install unzip=6.0-25ubuntu1
正在读取软件包列表... 完成
正在构建依赖关系树
正在读取状态信息... 完成
将会安装下列新软件包:
unzip
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 169 kB 的归档。
解压缩后将会使用 593 kB 的额外空间。
获取:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
已下载 169 kB,耗时 0秒 (2767 kB/s)
正在选择未选择的软件包 unzip。
(正在读取数据库 ... 系统当前共安装有 59541 个文件和目录。)
准备解压 .../unzip_6.0-25ubuntu1_amd64.deb ...
正在解压缩 unzip (6.0-25ubuntu1) ...
正在设置 unzip (6.0-25ubuntu1) ...
正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...
正在处理用于 man-db (2.9.1-1) 的触发器 ...
abhisheknair@yaoweibin:~$
删除软件包
与安装软件包一样,可以使用以下命令从系统中删除软件包:
$ sudo apt remove [包名]
示例:
abhisheknair@yaoweibin:~$ sudo apt remove unzip
正在读取软件包列表... 完成
正在构建依赖关系树
正在读取状态信息... 完成
将会卸载下列软件包:
unzip
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 14 个软件包未被升级。
卸载后将会释放 593 kB 的磁盘空间。
是否继续? [Y/n] Y
(正在读取数据库 ... 系统当前共安装有 59529 个文件和目录。)
正在删除 unzip (6.0-25ubuntu1) ...
正在处理用于 man-db (2.9.1-1) 的触发器 ...
正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...
abhisheknair@yaoweibin:~$
清除软件包
与删除软件包一样,清除软件包也是执行相同的任务,但是使用remove
命令时,apt
只会删除软件包的二进制文件,而保留配置文件不变。另一方面,purge
命令确保从系统中删除与软件包相关的所有内容,包括二进制文件和配置文件。保留配置文件可以在重新安装应用程序时再次使用相同的配置文件。
要清除一个软件包,请使用:
$ sudo apt purge [包名]
示例:
abhisheknair@yaoweibin:~$ sudo apt purge unzip
正在读取软件包列表... 完成
正在构建依赖关系树
正在读取状态信息... 完成
将会卸载下列软件包:
unzip*
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 14 个软件包未被升级。
卸载后将会释放 593 kB 的磁盘空间。
是否继续? [Y/n] Y
(正在读取数据库 ... 系统当前共安装有 59529 个文件和目录。)
正在删除 unzip (6.0-25ubuntu1) ...
正在处理用于 man-db (2.9.1-1) 的触发器 ...
正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...
(正在读取数据库 ... 系统当前共安装有 59511 个文件和目录。)
正在删除 unzip (6.0-25ubuntu1) 的配置文件 ...
abhisheknair@yaoweibin:~$
搜索软件包
apt
不仅可以用作安装和删除软件包的实用程序,还可以使用search
命令在软件库中搜索所需的软件包:
$ apt search [搜索文本]
示例:
查看软件包内容
要获取关于软件包的详细信息,无论它是否已安装或将要安装,您可以使用如下的show
命令:
示例:
abhisheknair@yaoweibin:~$ apt show firefox
Package: firefox
Version: 90.0+build1-0ubuntu0.20.04.1
Priority: optional
Section: web
Origin: Ubuntu
Maintainer: Ubuntu Mozilla Team
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 226 MB
Provides: gnome-www-browser, iceweasel, www-browser
Depends: lsb-release, libatk1.0-0 (>= 1.12.4), libc6 (>= 2.30), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.10.0), libdbus-1-3 (>= 1.9.14), libdbus-glib-1-2 (>= 0.78), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.10.1), libgcc-s1 (>= 3.3), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.42), libgtk-3-0 (>= 3.14), libharfbuzz0b (>= 0.6.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libstdc++6 (>= 9), libx11-6, libx11-xcb1 (>= 2:1.6.9), libxcb-shm0, libxcb1, libxcomposite1 (>= 1:0.4.5), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6, libxrender1, libxt6
Recommends: xul-ext-ubufox, libcanberra0, libdbusmenu-glib4, libdbusmenu-gtk3-4
Suggests: fonts-lyx
Replaces: kubuntu-firefox-installer
Task: ubuntu-desktop-minimal, ubuntu-desktop, kubuntu-desktop, kubuntu-full, xubuntu-desktop, lubuntu-desktop, ubuntustudio-desktop, ubuntukylin-desktop, ubuntu-mate-core, ubuntu-mate-desktop, ubuntu-budgie-desktop
Xul-Appid: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
Download-Size: 57.0 MB
APT-Sources: http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
Description: Safe and easy web browser from Mozilla
Firefox delivers safe, easy web browsing. A familiar user interface,
enhanced security features including protection from online identity theft,
and integrated search let you get the most out of the web.
N: There is 1 additional record. Please use the ‘-a' switch to see it
abhisheknair@yaoweibin:~$
列出已安装的软件包
我们经常需要列出系统上已安装的软件包以便进行不同的操作。使用apt
命令可以简单地获取已安装软件包的列表:
$ apt list –installed
列出所有软件包
要列出系统上可用的所有软件包,使用带有--all-versions
关键词的list
命令:
$ apt list –all-versions
列出可升级的软件包
包需要保持更新,因为新版本持续发布,带来了改进或新增的功能和错误修复,包括关键的安全漏洞修复。如前文所述,apt
命令可以轻松地使用upgrade
命令对Debian/Ubuntu系统进行补丁修复。要列出系统上所有可用的已安装软件包的升级,请运行:
$ apt list --upgradable
示例:
abhisheknair@yaoweibin:~$ apt list --upgradable
Listing... Done
apt-utils/focal-updates 2.0.6 amd64 [从 2.0.5 升级]
apt/focal-updates 2.0.6 amd64 [从 2.0.5 升级]
libapt-pkg6.0/focal-updates 2.0.6 amd64 [从 2.0.5 升级]
libpython3.8-minimal/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [从 3.8.5-1~20.04.3 升级]
libpython3.8-stdlib/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [从 3.8.5-1~20.04.3 升级]
libpython3.8/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [从 3.8.5-1~20.04.3 升级]
libuv1/focal-updates,focal-security 1.34.2-1ubuntu1.3 amd64 [从 1.34.2-1ubuntu1.1 升级]
linux-base-sgx/focal-updates 4.5ubuntu3.6 all [从 4.5ubuntu3.1 升级]
linux-base/focal-updates 4.5ubuntu3.6 all [从 4.5ubuntu3.1 升级]
open-vm-tools/focal-updates 2:11.2.5-2ubuntu1~ubuntu20.04.1 amd64 [从 2:11.0.5-4 升级]
python3-distupgrade/focal-updates 1:20.04.35 all [从 1:20.04.33 升级]
python3.8-minimal/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [从 3.8.5-1~20.04.3 升级]
python3.8/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [从 3.8.5-1~20.04.3 升级]
ubuntu-release-upgrader-core/focal-updates 1:20.04.35 all [从 1:20.04.33 升级]
abhisheknair@yaoweibin:~$
清理未使用的软件包
在正常使用过程中,有时您的系统可能安装了不再需要的软件包。这可能是因为这些软件包是作为其他软件包的依赖关系的一部分安装的,而后来已经删除了这些软件包,尽管依赖关系仍然存在于系统中。为了清理这些软件包并释放一些磁盘空间,您可以使用以下命令:
$ sudo apt autoremove
示例:
abhisheknair@yaoweibin:~$ sudo apt autoremove
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
abhisheknair@yaoweibin:~$
我的系统没有任何残留的软件包,所以输出报告没有变化。
检查软件包依赖关系
一个软件包可能有一个或多个必须在系统上安装的依赖关系,以确保软件包正常工作。apt
在安装软件包时会确保所需的依赖关系被安装。如果要检查软件包的依赖关系,请使用以下命令:
$ apt depends [软件包名称]
示例:
abhisheknair@yaoweibin:~$ apt depends zip
zip
Depends: libbz2-1.0
Depends: libc6 (>= 2.14)
Recommends: unzip
abhisheknair@yaoweibin:~$
重新安装软件包
一个软件包可能会损坏,或者您可能需要重新安装它以确保所有软件包文件的正确顺序。如果要重新安装一个软件包而不必先删除它,可以使用以下命令:
$ sudo apt reinstall [软件包名称]
示例:
abhisheknair@yaoweibin:〜$ sudo apt reinstall unzip
正在读取软件包列表…完成
正在构建依赖关系树
正在读取状态信息…完成
0 升级,0 新安装,1 重新安装,0 未升级,0 将被移除及 0 未升级。
需要下载 169 kB 的归档。
此操作将消耗掉额外的 0 B 磁盘空间。
获取:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
已下载 169 kB,耗时 0s (5695 kB/s)
(正在读取数据库 …目前已安装 59559 个文件和目录。)
正在准备解包 …/unzip_6.0-25ubuntu1_amd64.deb…
正在解包 unzip (6.0-25ubuntu1) (6.0-25ubuntu1) …
正在设置 unzip (6.0-25ubuntu1) …
正在处理用于 mime-support (3.64ubuntu1) 的触发器 …
正在处理用于 man-db (2.9.1-1) 的触发器 …
abhisheknair@yaoweibin:〜$
下载软件包
可以将软件包文件下载到本地文件系统而不进行安装。要使用 apt
下载软件包,请使用以下命令:
$ apt download [软件包名称]
示例:
abhisheknair@yaoweibin:〜$ apt download unzip
获取:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
已下载 169 kB,耗时 0s (1405 kB/s)
abhisheknair@yaoweibin:〜$
abhisheknair@yaoweibin:〜$ ls -l unzip_6.0-25ubuntu1_amd64.deb
-rw-r--r-- 1 abhisheknair abhisheknair 168956 Aug 16 2019 unzip_6.0-25ubuntu1_amd64.deb
abhisheknair@yaoweibin:〜$
检查软件包更改日志
我们可以使用 apt
简单地检查有关任何软件包的更改日志,方法如下:
$ apt changelog [软件包名称]
编辑源
apt
的 edit-sources
命令可让您在编辑 sources.list
文件时进行一致性和有效性的检查。这是一个正在进行的命令,因此应谨慎使用。您可以编辑 sources.list
如下:
$ sudo apt edit-sources
获取APT帮助
要获取有关 apt 命令的更多帮助,请使用:
$ apt help
示例:
abhisheknair@yaoweibin:〜$ apt help
apt 2.0.6 (amd64)
Usage: apt [options] command
apt 是一个命令行包管理器,提供了搜索、管理以及查询有关软件包的信息的命令。
它提供了与专门的APT工具(如apt-get和apt-cache)相同的功能,但默认情况下启用了适用于交互使用的选项。
最常用的命令:
list - 根据软件包名称列出软件包
search - 在软件包描述中搜索
show - 显示软件包详细信息
install - 安装软件包
reinstall - 重新安装软件包
remove - 删除软件包
autoremove - 自动删除所有未使用的软件包
update - 更新可用软件包的列表
upgrade - 安装/升级软件包来升级系统
full-upgrade - 通过删除/安装/升级软件包来升级系统
edit-sources - 编辑源信息文件
satisfy - 满足依赖字符串
有关可用命令的更多信息,请参见 apt(8)。
有关配置选项和语法的详细信息,请参见 apt.conf(5)。
有关如何配置源的信息,请参见 sources.list(5)。
可以通过 apt_preferences(5) 表达软件包和版本选择。
有关安全详细信息,请参见 apt-secure(8)。
这个APT有超级牛力。
abhisheknair@yaoweibin:〜$
总结
apt
工具是一款方便而强大的基于命令行的 Debian/Ubuntu 系统包管理实用程序。在日常工作中,管理系统上的软件包并了解 apt
及其常用命令的使用可以使这项任务变得容易。
如需apt的更多帮助,请参考其man页。
$ man apt