在 Debian 系统中,“提取依赖”通常指查看、下载或获取某个软件包的依赖关系。下面按常见需求分类说明,并给出对应命令。
apt-cache depends 包名
示例:
apt-cache depends nginx
输出包括:
Depends: 必须依赖Recommends: 推荐依赖Suggests: 建议依赖apt-cache showsrc 包名
或
apt-get build-dep 包名 --dry-run
dpkg -s 包名
apt-rdepends(需安装)sudo apt install apt-rdepends
apt-rdepends 包名
只显示直接依赖:
apt-rdepends -d 包名
apt-cache 递归(不推荐手撸)可配合脚本解析 apt-cache depends 输出。
apt-get install --download-only 包名
下载目录:
/var/cache/apt/archives/
apt-get install --download-only --reinstall 包名
或手动解析依赖后下载:
apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances 包名 | grep "^\w" | sort -u)
dpkg -x 包名.deb 目录
示例:
dpkg -x libssl3.deb ./libssl
mkdir debs
cd debs
apt-get download 包名
for deb in *.deb; do dpkg -x "$deb" ../extracted; done
dpkg -S /usr/lib/x86_64-linux-gnu/libxxx.so
| 需求 | 命令 |
|---|---|
| 查看依赖 | apt-cache depends 包名 |
| 递归依赖 | apt-rdepends 包名 |
| 下载依赖 | apt-get install --download-only 包名 |
| 解包依赖 | dpkg -x xxx.deb 目录 |
| 构建依赖 | apt-get build-dep 包名 |
如果你能说明具体目的(例如:离线安装、制作最小系统、交叉编译、Docker 镜像瘦身),我可以给你更精确的方案。