查找命令所属rpm包
有时我们在执行某个命令时,却提示:
[root@localhost ~]# iptraf-bash: iptraf: command not found
我相信很多朋友也会经常遇到这个问题。
要解决这个问题就需要安装相应的软件包,很多时候命令名不一定就是软件包的名字,
在这里的iptraf命令恰好是软件包的名字,这样就比较好解决了,直接安装软件包就ok了。如下:
yum install iptraf
但是如果命令名字和软件包名字不相同怎么办呢?
如iostat命令,其命令名就和软件包名字不一样,直接安装的话会失败:
[root@localhost ~]# yum install iostatLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * rpmforge: mirrors.neusoft.edu.cnSetting up Install ProcessNo package iostat available.Error: Nothing to do
这时我们就需要使用下面的方法了:
[root@localhost ~]# yum -q install /usr/bin/iostat========================================================================================================================================== Package Arch Version Repository Size==========================================================================================================================================Installing: sysstat x86_64 9.0.4-20.el6 163 225 kTransaction Summary==========================================================================================================================================Install 1 Package(s)Is this ok [y/N]:
这里的/usr/bin/iostat是不存在的,那为什么却可以找到所属的包呢?
其实就是用了rpm数据库来查找的。至于为什么要用/usr/bin这个路径,是因为这个命令是属于用户的命令,即/usr。这个也是猜测的,如果用这个路径查不到包,就换一个。
这里要是用/bin的话是查不到的:
[root@localhost bin]# yum install /bin/iostatLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * rpmforge: mirrors.neusoft.edu.cnSetting up Install ProcessNo package /bin/iostat available.Error: Nothing to do
主要问题是看命令的路径了,要是对的话,应该可以查到的。
比较好的方法,赞一个!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。