用 pacman -Rns $(pacman -Qtdq) 清理孤立软件包

pacman -Qtdq 列出不再被任何软件包依赖的依赖包,把该列表传给 pacman -Rns 即可清理。

Linux软件包pacman 包管理Arch 发行版中风险
先运行 `pacman -Qtdq` 列出孤立包,再用 `sudo pacman -Rns $(pacman -Qtdq)` 连同不再需要的依赖一起删除。

01命令

命令
$ sudo pacman -Rns $(pacman -Qtdq)

02作用说明

与 Debian 的 autoremove 或 dnf autoremove 不同,Arch 没有内置的一键孤立包清理——这条查询管道是 ArchWiki 上的标准做法。-t 过滤出不再被需要的依赖包,-d 放宽版本检查,-q 只输出包名,-Rns 则递归删除软件包及其配置。如果子命令输出为空,pacman 会报错但不会做任何更改,因此可以放心放进清理别名。

03风险

风险中风险
使用条件Arch Linux or an Arch-based distribution with pacman; -Qtdq prints nothing if there are no orphans.
!注意: 删除前先查看 `pacman -Qtdq` 的输出——偶尔会有手动安装的依赖被标记为此类,可能仍然需要保留。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • Pacman/Tips and tricks - ArchWiki
    ArchWiki · community · 2026-09-17
    依据: Documents removing unused packages (orphans): pacman -Qtdq lists orphans and pacman -Rns $(pacman -Qtdq) removes them.
  • pacman(8) — package manager utility
    Arch Linux Manual Pages · technical · 2026-09-17
    依据: -Qtdq: -t lists packages installed as dependencies that are not required by any installed package, -d skips dependency versions, -q quiet output; -Rns removes packages with their dependencies and configs.

最后验证: 2026-09-17 · 分类: 系统与设置

06相关方案