linux如何查找软件包得依赖关系

73次阅读
没有评论

共计 5568 个字符,预计需要花费 14 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要介绍 linux 如何查找软件包得依赖关系,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

apt-cache 是一个 apt 软件包管理工具,它可查询 apt 的二进制软件包缓存文件。通过它我们可查询软件包的状态信息。

apt-cache show package_name

显示软件的信息,包括版本号,安装状态和包依赖关系等。

apt-cache search package_name

搜索软件包,可用正则表达式。

apt-cache showpkg package_name

显示软件包的依赖关系信息。

apt-cache policy package_name

显示软件包的安装状态和版本信息。

apt-cache depends package_name

显示指定软件包所依赖的软件包。

apt-cache rdepends package_name

显示软件包的反向依赖关系,即有什么软件包需依赖你所指定的软件包

——-

1.apt-cache showpkg
显示软件包的一些常规信息
例: apt-cache showpkg openssh

2.apt-cache stats
显示相关的统计信息顯示相關的統計資訊

3.apt-cache dump
显示缓存中的每个软件包的简要描述信息

4.apt-cache unmet
显示不符合一致性的依赖关系

5.apt-cache show
显示指定软件包的记录信息。类似于 rpm -qi

6.apt-cache search
查找软件包,类似于 rpm -qa|grep package_name
例: apt-cache search openssh

7.apt-cache depends
显示软件包的依赖性关系

8.apt-cache pkgnames
列出所有的软件包

apt-get 和 apt-cache 是 Ubuntu Linux 中的命令行下的包管理工具。apt-get 的 GUI 版本是 Synaptic 包管理器。本篇中我们会展示 apt-get 和 apt-cache 命令的 15 个不同例子。

示例:1 列出所有可用包

linuxtechi@localhost:~$ apt-cache pkgnamesaccount-plugin-yahoojpceph-fusedvd+rw-toolse3gnome-commander-datagrub-gfxpayload-listsgweled.......................................

示例:2 用关键字搜索包

这个命令在你不确定包名时很有用,只要在 apt-cache(LCTT 译注:这里原文是 apt-get,应为笔误)后面输入与包相关的关键字即可。

linuxtechi@localhost:~$ apt-cache search  web server apache2 - Apache HTTP Serverapache2-bin - Apache HTTP Server (binary files and modules)apache2-data - Apache HTTP Server (common files)apache2-dbg - Apache debugging symbolsapache2-dev - Apache HTTP Server (development headers)apache2-doc - Apache HTTP Server (on-site documentation)apache2-utils - Apache HTTP Server (utility programs for web servers)......................................................................

注意:如果你安装了“apt-file”包,我们就可以像下面那样用配置文件搜索包。

linuxtechi@localhost:~$ apt-file search nagios.cfgganglia-nagios-bridge: /usr/share/doc/ganglia-nagios-bridge/nagios.cfgnagios3-common: /etc/nagios3/nagios.cfgnagios3-common: /usr/share/doc/nagios3-common/examples/nagios.cfg.gzpnp4nagios-bin: /etc/pnp4nagios/nagios.cfgpnp4nagios-bin: /usr/share/doc/pnp4nagios/examples/nagios.cfg

示例:3 显示特定包的基本信息

linuxtechi@localhost:~$ apt-cache show postfixPackage: postfixPriority: optionalSection: mailInstalled-Size: 3524Maintainer: LaMont Jones  lamont@debian.org Architecture: amd64Version: 2.11.1-1Replaces: mail-transport-agentProvides: default-mta, mail-transport-agent.....................................................

示例:4 列出包的依赖

linuxtechi@localhost:~$ apt-cache depends postfixpostfix Depends: libc6 Depends: libdb5.3 Depends: libsasl2-2 Depends: libsqlite3-0 Depends: libssl1.0.0 |Depends: debconf Depends:  debconf-2.0  cdebconf debconf Depends: netbase Depends: adduser Depends: dpkg............................................

示例:5 使用 apt-cache 显示缓存统计

linuxtechi@localhost:~$ apt-cache stats Total package names: 60877 (1,218 k)Total package structures: 102824 (5,758 k) Normal packages: 71285 Pure virtual packages: 1102 Single virtual packages: 9151 Mixed virtual packages: 1827 Missing: 19459Total distinct versions: 74913 (5,394 k)Total distinct descriptions: 93792 (2,251 k)Total dependencies: 573443 (16.1 M)Total ver/file relations: 78007 (1,872 k)Total Desc/File relations: 93792 (2,251 k)Total Provides mappings: 16583 (332 k)Total globbed strings: 171 (2,263 )Total dependency version space: 2,665 kTotal slack space: 37.3 kTotal space accounted for: 29.5 M

示例:6 使用“apt-get update”更新仓库

使用命令“apt-get update”, 我们可以重新从源仓库中同步文件索引。包的索引从“/etc/apt/sources.list”中检索。

linuxtechi@localhost:~$ sudo apt-get update Ign http://extras.ubuntu.com utopic InRelease Hit http://extras.ubuntu.com utopic Release.gpg Hit http://extras.ubuntu.com utopic Release Hit http://extras.ubuntu.com utopic/main Sources Hit http://extras.ubuntu.com utopic/main amd64 Packages Hit http://extras.ubuntu.com utopic/main i386 Packages Ign http://in.archive.ubuntu.com utopic InRelease Ign http://in.archive.ubuntu.com utopic-updates InRelease Ign http://in.archive.ubuntu.com utopic-backports InRelease ................................................................

示例:7 使用 apt-get 安装包

linuxtechi@localhost:~$ sudo apt-get install icinga

上面的命令会安装叫“icinga”的包。

示例:8 升级所有已安装的包

linuxtechi@localhost:~$ sudo apt-get upgrade

示例:9 更新特定的包

在 apt-get 命令中的“install”选项后面接上“-only-upgrade”用来更新一个特定的包,如下所示:

linuxtechi@localhost:~$ sudo apt-get install filezilla --only-upgrade

示例:10 使用 apt-get 卸载包

linuxtechi@localhost:~$ sudo apt-get remove skype

上面的命令只会删除 skype 包,如果你想要删除它的配置文件,在 apt-get 命令中使用“purge”选项。如下所示:

linuxtechi@localhost:~$ sudo apt-get purge skype

我们可以结合使用上面的两个命令:

linuxtechi@localhost:~$ sudo apt-get remove --purge skype

示例:11 在当前的目录中下载包

linuxtechi@localhost:~$ sudo apt-get download icingaGet:1 http://in.archive.ubuntu.com/ubuntu/ utopic/universe icinga amd64 1.11.6-1build1 [1,474 B]Fetched 1,474 B in 1s (1,363 B/s)

上面的目录会把 icinga 包下载到你的当前工作目录。

示例:12 清理本地包占用的磁盘空间

linuxtechi@localhost:~$ sudo apt-get clean

上面的命令会清空 apt-get 所下载的包占用的磁盘空间。

我们也可以使用“autoclean”选项来代替“clean”,两者之间主要的区别是 autoclean 清理不再使用且没用的下载。

linuxtechi@localhost:~$ sudo apt-get autocleanReading package lists... DoneBuilding dependency treeReading state information... Done

示例:13 使用“autoremove”删除包

当在 apt-get 命令中使用“autoremove”时,它会删除为了满足依赖而安装且现在没用的包。

linuxtechi@localhost:~$ sudo apt-get autoremove icinga

示例:14 显示包的更新日志

linuxtechi@localhost:~$ sudo apt-get changelog apache2Get:1 Changelog for apache2 (http://changelogs.ubuntu.com/changelogs/pool/main/a/apache2/apache2_2.4.10-1ubuntu1/changelog) [195 kB]Fetched 195 kB in 3s (60.9 kB/s)

上面的命令会下载 apache2 的更新日志,并在你屏幕上分页显示。

示例:15 使用“check”选项显示损坏的依赖关系

linuxtechi@localhost:~$ sudo apt-get checkReading package lists... DoneBuilding dependency treeReading state information... Done

以上是“linux 如何查找软件包得依赖关系”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-07发表,共计5568字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)