运维开发网

确定Arch,CenOS/RHEL,Fedora,Ubuntu/Debian,openSUSE上是否安装了软件包

运维开发网 https://www.qedev.com 2021-01-31 19:20 出处:云网牛站 作者:申仲
本文教你如何确定Arch Linux、CenOS/Red Hat(RHEL)、Fedora、Ubuntu/Debian、openSUSE上是否安装了软件包?及附上使用which、whereis、locate命令确定是否在Linux上安装了软件包的方法。 如何确定Arch Li

本文教你如何确定Arch Linux、CenOS/Red Hat(RHEL)、Fedora、Ubuntu/Debian、openSUSE上是否安装了软件包?及附上使用which、whereis、locate命令确定是否在Linux上安装了软件包的方法。

确定Arch,CenOS/RHEL,Fedora,Ubuntu/Debian,openSUSE上是否安装了软件包

 

如何确定Arch Linux上是否安装了软件包?

使用pacman Package Manager在Arch Linux及其衍生产品(例如Manjaro等)中查找,如果以下命令未返回任何内容,则说明给定的软件包未安装在系统中:

$ pacman -Qs nano

local/nano 4.3-1 (base)

Pico editor clone with enhancements

 

如何确定CenOS/Red Hat(RHEL) Linux上是否安装了软件包?

使用yum Package Manager或rpm Package Manager在Red Hat及其克隆(如CentOS、Oracle Linux)上找。

找出是否使用yum命令安装了软件包:

# yum list installed openssh

Loaded plugins: fastestmirror, universal-hooks

Loading mirror speeds from cached hostfile

* EA4: 203.174.85.202

* cpanel-addons-production-feed: 203.174.85.202

* cpanel-plugins: 203.174.85.202

* base: centos.netonboard.com

* epel: mirror.airenetworks.es

* extras: centos.netonboard.com

* nux-dextop: mirror.li.nux.ro

* updates: centos.netonboard.com

Installed Packages

openssh.x86_64   7.4p1-16.el7   @base

查找是否使用rpm命令安装了软件包:

# rpm -qa nano

nano-2.3.1-10.el7.x86_64

 

如何确定Fedora Linux上是否安装了软件包?

使用dnf软件包管理器或rpm软件包管理器在Fedora Linux上查找,查找是否使用dnf命令安装了软件包:

# dnf list installed httpd

Last metadata expiration check performed 0:44:26 ago on Tue Jun  9 22:52:44 2019.

Installed Packages

httpd.x86_64   2.4.12-1.fc22   @System

查找是否使用rpm命令安装了软件包:

# rpm -qa nano

 

如何确定Ubuntu/Debian Linux上是否安装了软件包?

在基于Debian的系统中有几个命令(Ubuntu、Linux Mint等)来查找,可参考在Ubuntu/Debian系统中查看已经安装成功的软件包一文。

使用以下命令之一查找此信息:

apt软件包管理器、apt-cache命令、dpkg-query命令、dpkg软件包管理器。

查明是否使用apt-cache命令安装了软件包:

# apt-cache policy nano

nano:

Installed: 2.9.3-2

Candidate: 2.9.3-2

Version table:

*** 2.9.3-2 500

500 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 Packages

100 /var/lib/dpkg/status

查找是否使用apt命令安装了软件包:

# apt -qq list nano

nano/bionic,now 2.9.3-2 amd64 [installed]

使用dpkg-query命令确定是否安装了软件包:

# dpkg-query --list | grep -i nano

ii  nano    2.9.3-2    amd64    small, friendly text editor inspired by Pico

使用dpkg命令确定是否安装了软件包:

# dpkg -l | grep -i nano

ii  nano     2.9.3-2    amd64   small, friendly text editor inspired by Pico

 

如何确定openSUSE Linux上是否安装了软件包?

使用zypper软件包管理器或rpm软件包管理器在openSUSE Linux上查找,使用zypper命令确定是否安装了软件包:

$ zypper se --installed-only | grep -i GIMP

确定Arch,CenOS/RHEL,Fedora,Ubuntu/Debian,openSUSE上是否安装了软件包

查找是否使用rpm命令安装了软件包:

# rpm -qa nano

 

附:如何使用which、whereis、locate命令确定是否在Linux上安装了软件包?

每个发行版都带有其自己的程序包管理器,该程序包管理器使您可以验证。但是,Linux中有一些命令,可让您检查此信息。

1、如何使用which命令确定是否在Linux上安装了软件包?

在终端中输入命令时,which命令将返回可执行路径。如果要为可执行文件创建桌面快捷方式或符号链接,此功能特别有用。which命令搜索当前用户的PATH环境变量中列出的目录,而不是针对所有用户。这意味着,当您登录自己的帐户时,无法搜索root用户文件或目录。运行以下命令以打印VIM可执行文件位置的完整路径,如果您的计算机上安装了VIM软件包,它将显示安装路径,如下所示:

# which vi

/usr/bin/vi

2、如何使用whereis命令确定是否在Linux上安装了软件包?

whereis命令用于在二进制文件,源文件和手册页文件中搜索给定命令。如果以下输出显示给定软件包二进制文件或可执行文件的位置,则该给定软件包已安装在系统上,否则,该软件包将不会安装在系统上:

# whereis vi

vi: /usr/bin/vi /usr/share/man/man1/vi.1p.gz /usr/share/man/man1/vi.1.gz

参考:Linux中的Whereis命令,教你如何使用whereis命令及注意事项。

3、如何使用locate命令确定是否在Linux上安装了软件包?

locate命令比find命令执行得更快,因为它使用的是updatedb数据库,而find命令则是实时搜索。它使用数据库而不是查找单个目录路径来获取给定的文件。locate命令尚未安装在大多数发行版上,因此请使用发行包软件包管理器进行安装,如果是在Ubuntu系统中,则运行sudo apt install mlocate或sudo apt-get install mlocate命令安装。

确定Arch,CenOS/RHEL,Fedora,Ubuntu/Debian,openSUSE上是否安装了软件包

数据库由Cron不断更新,即使这样,我们也可以手动更新它。如果以下输出显示给定软件包二进制文件或可执行文件的位置,则该给定软件包已安装在系统上,否则,该软件包将不会安装在系统上:

# locate --basename '\nano'

/usr/bin/nano

/usr/share/nano

/usr/share/doc/nano

 

0

精彩评论

暂无评论...
验证码 换一张
取 消