![如何在安装 .deb 文件之前找到所有依赖(依赖遍历器)包?](https://linux22.com/image/850621/%E5%A6%82%E4%BD%95%E5%9C%A8%E5%AE%89%E8%A3%85%20.deb%20%E6%96%87%E4%BB%B6%E4%B9%8B%E5%89%8D%E6%89%BE%E5%88%B0%E6%89%80%E6%9C%89%E4%BE%9D%E8%B5%96%EF%BC%88%E4%BE%9D%E8%B5%96%E9%81%8D%E5%8E%86%E5%99%A8%EF%BC%89%E5%8C%85%EF%BC%9F.png)
按照以下说明安装 Ubuntu Core 13.10 时wiki.ubuntu.com/Core/InstallationExample,步骤 5 说 Ubuntu 12.04 “Precise Pangolin” 开发内核需要'wireless-crda' 包。这个 wiki 建议查看packages.ubuntu.com。 但是,那precise/linux-image-3.8.0-37-generic 页面甚至根本没有提到“wireless-crda”包。
在阅读 Ask Ubuntu 文章中有关“下载 +kernel +packages +deb”的内容后,'“依赖于”+内核+软件包',‘无线-crda’和 ”如何在从 .deb 安装软件时自动获取缺失的依赖项?“我还是不知道该如何弄清楚全部依赖包。
更新#1
来自的答案如何检查 deb 包的依赖列表
1.apt-cache showpkg linux-image-3.11.0-18-generic
不输出“wireless-crda”依赖项:
Reverse Depends:
linux-image-3.11.0-18-generic:i386,linux-image-3.11.0-18-generic
linux-signed-image-3.11.0-18-generic,linux-image-3.11.0-18-generic 3.11.0-18.32
linux-image-virtual,linux-image-3.11.0-18-generic
linux-image-generic,linux-image-3.11.0-18-generic
linux-image-extra-3.11.0-18-generic,linux-image-3.11.0-18-generic
Dependencies:
3.11.0-18.32 - initramfs-tools (2 0.36ubuntu6) module-init-tools (2 3.3-pre11-4ubuntu3) dpkg (2 1.10.24) fdutils (0 (null)) linux-doc-3.11.0 (16 (null)) linux-source-3.11.0 (0 (null)) linux-tools (0 (null)) linux-headers-3.11.0-18-generic (0 (null)) grub-pc (16 (null)) grub-efi-amd64 (16 (null)) grub-efi-ia32 (16 (null)) grub (16 (null)) lilo (2 19.1) hotplug (3 0.0.20040105-1) hotplug:i386 (3 0.0.20040105-1) linux-image-3.11.0-18-generic:i386 (0 (null))
Provides:
3.11.0-18.32 - redhat-cluster-modules linux-image-3.0 linux-image kvm-api-4 ivtv-modules fuse-module
Reverse Provides:
2.dpkg -I linux-image-3.11.0-18-generic_3.11.0-18.32_amd64.deb
也不会输出“wireless-crda”依赖项:
Depends: initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3)
Recommends: grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub | lilo (>= 19.1)
Suggests: fdutils, linux-doc-3.11.0 | linux-source-3.11.0, linux-tools, linux-headers-3.11.0-18-generic
Conflicts: hotplug (<< 0.0.20040105-1)
Provides: fuse-module, ivtv-modules, kvm-api-4, linux-image, linux-image-3.0, redhat-cluster-modules
通过安装内核时apt-get install linux-{headers,image}-generic
有一个依赖的“wireless-crda”包。
问题:
如何在实际安装 Ubuntu 内核 .deb 文件之前找到答案 -全部需要安装哪些依赖包?
答案1
你可以看看packages.ubuntu.com。该apt-get install linux-{headers,image}-generic
命令安装两个包:
1. Linux 头文件通用
依赖于取决于Linux 标头-3.11.0-18-通用,这取决于:
- libc6,这取决于libgcc1
- Linux 标头-3.11.0-18,这取决于核心工具
2. linux-image-通用
依赖于取决于:
2.2. linux-image-3.11.0-18-通用
依赖于取决于:
2.3. linux-image-extra-3.11.0-18-通用
依赖于取决于:
到这里您已经发现内核 .deb 文件是如何依赖于 wireless-crda 的。
答案2
使用apt-cache showpkg pkg-name1
或dpkg -I pkg-name1_version.deb
你可以获取依赖项列表软件包名称1. 但其中一个依赖包软件包名称1说软件包名称2可能依赖于其他包软件包名称3等等。
因此,你不仅需要知道软件包名称1的依赖项,还有它们的依赖项的依赖项......然后您可以下载软件包(尚未安装在您的系统中)。