CentOS下判断软件是否已安装

分类:CentOS教程 阅读:33998 次

由于种种原因:

  • 1、时间久远,你忘记了这个文件那个文件在哪里。
  • 2、刚入一个公司的运维坑,需要各种安装各种验证一些软件的安装。
  • 3、蛋疼的各种依赖关系,是否已经安装。
  • 4、最近报软件漏洞,赶紧上机器查看版本号。

。。。。。。好吧,我把这些命令记录下来。

1、使用which命令搜索,如果没搜到?扩大范围搜:whereis

[root@ctyun ~]# which gcc /usr/bin/gcc [root@ctyun ~]# whereis gcc gcc: /usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc /usr/share/man/man1/gcc.1.gz

2、使用本地文件索引搜索,搜索更加精准和有效

#一般centos下没有安装locate命令 yum -y install mlocate #更新下索引 updatedb #搜索试试 [root@ctyun ~]# locate signal.h /usr/include/signal.h /usr/include/asm/signal.h /usr/include/asm-generic/signal.h /usr/include/linux/signal.h /usr/include/sys/signal.h

3、查询已经安装的包名称

#rpm包安装的 rpm -qa | grep "软件包名称“ #deb包安装的 dpkg -l | grep "软件包名称"

4、查询已经的软件都包含哪些文件?

[root@ctyun ~]# rpm -ql php /etc/httpd/conf.d/php.conf /usr/lib64/httpd/modules/libphp5-zts.so /usr/lib64/httpd/modules/libphp5.so /var/lib/php/session /var/lib/php/wsdlcache /var/www/icons/php.gif

5、查看yum安装过那些软件包?

yum list installed | grep "软件包名称"

6、使用基本的find命令搜索

 [root@ctyun ~]# find / -name nginx /usr/share/nginx /usr/sbin/nginx /etc/logrotate.d/nginx /etc/sysconfig/nginx /etc/rc.d/init.d/nginx /etc/nginx /var/cache/nginx /var/cache/yum/x86_64/6/nginx /var/lib/yum/repos/x86_64/6/nginx /var/log/nginx