删除未使用的应用程序/程序

Tre*_*ars 4 ubuntu apt uninstall

我做了一些搜索,但没有找到完美的答案,所以我想知道,有没有一种好方法可以卸载(并清除其依赖项)在我的 Ubuntu Server 安装中未使用的应用程序/程序?

当我第一次安装 16.04 时,预装了大量程序,我知道它们并非都是无用的,但是我如何摆脱那些我永远不会使用的程序(没有'自安装以来一直使用或运行)?因为当我使用

apt list --installed
Run Code Online (Sandbox Code Playgroud)

有太多的程序,我什至无法向后滚动到足以看到第一个程序。

有什么建议?

Gil*_*il' 5

使用交互式工具可以让您轻松获取有关包的信息(其描述、依赖项、依赖项等)。您可以在文本终端中使用aptitude。也有用于此的 GUI 程序。

请注意,很难知道是否需要一个包。有时,一个包的使用方式可能对外行来说并不明显。对于 2.6.30 和 3.19 之间的 Linux 内核,默认情况下不会准确保存文件访问时间。即使系统设置为节省文件访问时间,信息也可能不完整,例如,对于在根分区以读写方式挂载之前的早期引导期间访问的文件(例如,仅基于访问时间,您'最终会报告内核未使用)。

如果您的磁盘空间不足,安装但未运行的程序只会受到伤害。20 年前,磁盘空间略贵,但今天,在大多数情况下,已安装的程序占用的空间可以忽略不计,这并不能证明寻找未使用的程序是合理的。如果您的磁盘空间不足(例如在便宜的 VPS 上),您可以使用以下命令按大小列出包:

dpkg-query -W -f='${Installed-Size;8}  ${Package}\n' | sort -n
Run Code Online (Sandbox Code Playgroud)

安装并运行但未实际使用的程序可能会因为使用内存或存在安全风险而受到伤害。但是,没有办法自动确定,您必须真正了解程序在做什么。