返回顶部
首页 > 资讯 > 操作系统 >linux如何查找软件包得依赖关系
  • 335
分享到

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

2023-06-05 22:06:22 335人浏览 泡泡鱼
摘要

这篇文章主要介绍linux如何查找软件包得依赖关系,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!apt-cache是一个apt软件包管理工具,它可查询apt的二进制软件包缓存文件。通过它我们可查询软件包的状态信息。a

这篇文章主要介绍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

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

-------

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

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

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

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

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

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

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

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

---

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

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

示例: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如何查找软件包得依赖关系”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网操作系统频道!

--结束END--

本文标题: linux如何查找软件包得依赖关系

本文链接: https://lsjlt.com/news/245038.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作