Appearance
Debian 12 检查已安装的软件包
1. 列出所有 apt 安装的软件包
Bash
dpkg -l这会列出所有已安装的软件包,包括名称、版本和简短描述。输出以表格形式显示,状态列(如 ii 表示已安装)。
2. 检查安装历史
查看 apt 的安装历史记录,可以检查 /var/log/apt/history.log 文件:
Bash
cat /var/log/apt/history.log或查看压缩的旧日志:
Bash
zcat /var/log/apt/history.log.1.gz这些日志记录了 apt 的安装、升级和删除操作,包含时间和软件包详情。
3. 查看明确通过 apt 安装的软件包
Debian 区分了手动安装(用户明确通过 apt 安装)和自动安装(作为依赖安装)的软件包。列出手动安装的软件包:
Bash
apt list --manual-installed这会显示用户主动安装的软件包,而非依赖自动安装的。
信息
apt-mark showmanual 在实际使用中可能包含一些并非用户显式安装的包,这通常是因为:
- 安装某些大软件(比如
gnome-core)时,会把它依赖的子包也标记为manual; - 部分系统安装镜像会在初始安装阶段将一些软件设为
manual; - 某些脚本或系统服务可能修改了标记状态。
4. 过滤特定软件包
如果想查找某个特定的软件包,可以结合 grep 过滤:
Bash
dpkg -l | grep <软件包名>例如,检查是否安装了 nginx:
Bash
dpkg -l | grep nginx5. 检查特定软件包是否安装
使用 dpkg 命令确认某个软件包是否安装:
Bash
dpkg -l | grep ^ii | grep <软件包名>或者直接:
Bash
dpkg-query -l <软件包名>如果已安装,会显示详细信息,否则无输出。
6. 注意事项
确保以
root或具有sudo权限的用户身份运行命令,因为部分操作需要管理员权限。dpkg -l输出的第一列状态码(如ii)表示软件包状态,ii表示正常安装。如果系统启用了额外的仓库(如第三方
PPA),安装的软件包可能来自不同来源。如果需要查看软件包的依赖关系,可以使用:
Bashapt depends <软件包名>