如何检查某个软件包是否安装在我的服务器上?

如何检查某个软件包是否安装在我的服务器上?

我最近安装了 Ubuntu Server 版本 13.10 (Saucy Salamander)。但是我遇到了一点问题。

在安装结束时,它会询问您是否需要几个额外的软件包,例如 OpenSSH 服务器和虚拟机主机。以下是我正在查看的内容:

对话提供套餐

现在,我的问题是我不记得我是否选中了“虚拟机主机”复选框。如何检查我的服务器是否有相应的软件包?

虚拟机主机附带哪些软件包?

答案1

您是否想了解所有带有选项的 dpkg 命令?请阅读以下链接。

15 个 dpkg 命令来管理基于 Debian 的 Linux 服务器

列出所有已安装的软件包

less是一个简单的文本阅读器,用于在现有终端窗口中打开的新缓冲区中滚动查看软件包列表。该列表不会与其他终端命令和输出混合。点击q返回到终端提示符。man less有关更多信息,请参阅。

dpkg -l | less

检查某个包是否已安装:

dpkg -l {package_name}
dpkg -l vlc

检查包是否已安装(例如vlc)。如果已安装,请启动包:

dpkg -l | grep vlc

显示软件包的安装位置。-S大写字母 S 代表“搜索”

sudo dpkg -S {package_name}
sudo dpkg -S skype

使用 Grep 进行搜索:

dpkg -l | grep {keywords}
dpkg -l | grep pdf

答案2

apt -qq list PACKAGE也可用于检查PACKAGE是否已安装。

如果安装了,它将打印类似的内容([installed]在行尾带有):

$ apt -qq list awscli
awscli/stable,now 1.4.2-1 all [installed]

如果未安装,则输出将是:

$ apt -qq list awscli
awscli/stable 1.4.2-1 all

答案3

使用dpkg

此命令是 Debian 包管理器。

您可以使用以下命令列出所有已安装的软件包

dpkg -l

你可以通过以下方式查看特定包的详细信息

dpkg -p packagename

要了解它是否已安装,请使用

dpkg -s packagename | grep Status

你可以通过以下方式了解哪个软件包包含你想要的软件

apt-cache search name*  

在你的情况下,你应该使用这个命令来搜索你想要的包名称

apt-cache search virtual machine host 

答案4

dpkg-query我找到了一种仅使用命令而不使用管道来检查包安装的方法。

我在为 ansible playbook 编写任务时搜索了这样的解决方案。

你可以做这样的事情:

/usr/bin/dpkg-query --show --showformat='${db:Status-Status}\n' '<your package name>'

这只是做这件事的另一种方法。

相关内容