centso系统命令来源查询

一 系统环境

[root@db01 ~]# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 
[root@db01 ~]# uname -a
Linux db01 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

二 问题描述

当想要使用新的命令但系统没有,也不知道该命令属于哪个软件大礼包时,就需要找到该命令的来源。

三 解决方案

此处以mkpasswd命令为例。使用该命令可以随机生成9位的由大小写字母、数字和特殊字符组成的密码字符串。

一般而言,我们会先查看该命令与其对应的软件包是否一致。

[root@m01 /]# rpm -qa mkpasswd

发现没有任何结果输出,要么是系统没有该软件包,要么mkpasswd命令已经存在但包含该命令的软件包名称并不是mkpasswd。

接下来,我们应该查看该命令对应的软件包是什么。

3.1 方法一

1)查找命令的绝对路径。下面是3种查找方法。

使用这三个命令,可以找到命令的二进制文件的绝对路径。

[root@m01 /]# type mkpasswd
mkpasswd is hashed (/usr/bin/mkpasswd)
[root@m01 /]# which mkpasswd
/usr/bin/mkpasswd
[root@m01 /]# whereis mkpasswd
mkpasswd: /usr/bin/mkpasswd /usr/share/man/man1/mkpasswd.1.gz

2)在找到/usr/bin/mkpasswd是mkpasswd命令的绝对路径后,进一步查询它属于哪个软件大礼包。

[root@m01 /]# rpm -qf /usr/bin/mkpasswd
expect-5.45-14.el7_1.x86_64

可以看到mkpasswd命令属于expect软件包下的命令,如果想要安装mkpasswd命令,就需要安装expect软件包。

注意,此处rpm -qf后面跟的命令必须以绝对路径方式展现,否则会报错(找不到该命令)。

3)最后用yum安装即可

[root@m01 /]# yum install -y expect

知道软件包名称后,可以通过命令得知该软件包中包含的命令(文件)。

[root@m01 /]# rpm -ql expect
/usr/bin/autoexpect
/usr/bin/dislocate
/usr/bin/expect
/usr/bin/ftp-rfc
/usr/bin/kibitz
/usr/bin/lpunlock
/usr/bin/mkpasswd
/usr/bin/passmass
/usr/bin/rftp
/usr/bin/rlogin-cwd
/usr/bin/timed-read
/usr/bin/timed-run
/usr/bin/unbuffer
/usr/bin/weather
/usr/bin/xkibitz
/usr/lib64/libexpect.so
/usr/lib64/libexpect5.45.so
/usr/lib64/tcl8.5/expect5.45
/usr/lib64/tcl8.5/expect5.45/pkgIndex.tcl
/usr/share/doc/expect-5.45
/usr/share/doc/expect-5.45/FAQ
/usr/share/doc/expect-5.45/HISTORY
/usr/share/doc/expect-5.45/NEWS
/usr/share/doc/expect-5.45/README
/usr/share/man/man1/autoexpect.1.gz
/usr/share/man/man1/dislocate.1.gz
/usr/share/man/man1/expect.1.gz
/usr/share/man/man1/kibitz.1.gz
/usr/share/man/man1/mkpasswd.1.gz
/usr/share/man/man1/passmass.1.gz
/usr/share/man/man1/tknewsbiff.1.gz
/usr/share/man/man1/unbuffer.1.gz
/usr/share/man/man1/xkibitz.1.gz

3.2 方法二

以查找sar命令软件包为例

1)查看属于哪个软件大礼包

sar命令属于 sysstat软件包下的二进制文件。

[root@m01 ~]# yum provides sar
sysstat-10.1.5-19.el7.x86_64 : Collection of performance monitoring tools for Linux
Repo        : @base
Matched from:
Filename    : /usr/bin/sar

2)sar命令属于sysstat-10.1.5-19.el7.x86_64软件包

因此安装命令sysstat即可。

yum  install -y sysstat
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值