当前位置: 首页>>技术问答>>正文


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

, , ,

问题描述

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

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

server,package-management,virtual,ubuntu

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

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

最佳解决办法

列出所有安装的软件包

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

dpkg -l | less

要检查包是否已安装:

dpkg -l {package_name}
dpkg -l vlc

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

dpkg -l | grep vlc

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

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

要使用Grep进行搜索:

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

次佳解决办法

使用dpkg

该命令是debian软件包管理器。

您可以列出所有已安装的软件包

dpkg -l

您可以查看特定软件包的详细信息

dpkg -p packagename

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

dpkg -s packagename | grep Status

您可以了解哪个软件包包含您想要的软件

apt-cache search name*  

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

apt-cache search virtual machine host 

第三种解决办法

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

第四种办法

我找到了一种方法来检查软件包安装,只用dpkg-query命令并且没有管道。

我在编写完整的剧本时寻找解决方案。

所以,你可以做这样的事情:

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

这是做这件事的另一种方式。

第五种办法

使用tasksel(如果您还没有sudo apt-get install tasksel)并运行tasksel --list-tasks

tasksel将打印出一份任务列表,每个安装的任务旁边都会有一个i,并且每个任务旁边都会安装一个u

如果您希望安装任务,请使用tasksel install <task>。您正在查找的任务的名称是virt-host

软件选择项目称为”tasks”。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/522.html,未经允许,请勿转载。