看似成功安装后未找到 hwinfo

看似成功安装后未找到 hwinfo

我使用安装了 hwinfo sudo apt-get install hwinfo,系统告诉我:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  hwinfo
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/32.8 kB of archives.
After this operation, 90.1 kB of additional disk space will be used.
Selecting previously unselected package hwinfo.
(Reading database ... 192008 files and directories currently installed.)
Preparing to unpack .../hwinfo_21.6-1_amd64.deb ...
Unpacking hwinfo (21.6-1) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up hwinfo (21.6-1) ...

虽然当我后来进入时hwinfo它说command not found.man hwinfo有效,即显示手册,但locate hwinfo不返回任何内容。

我使用的是 Debian 8.1

dpkg-query -L hwinfo表明 hwinfo 存在/usr/sbin/hwinfo并直接调用它也可以工作。所以我认为这是一个路径问题?

答案1

通过运行,dpkg-query -L hwinfo您可以查看此软件包安装的所有文件及其位置。

所以很可能安装为/usr/sbin/hwinfo./usr/sbin如果您想仅使用命令hwinfo而不是完整的路径+命令来运行它,请添加到您的 $PATH 变量/usr/sbin/hwinfo

答案2

包的名称并不总是与其包含的任何命令的名称相同。您可以使用dpkg -L hwinfo | grep bin/列出它提供的命令(或apt-file list hwinfo | grep bin/在安装之前)。

hwinfo软件包确实包含一个名为 的命令hwinfo,但它是/usr/sbin/hwinfo.目录sbin( /sbin/usr/sbin/usr/local/sbin) 包含仅供 root 用户使用的命令。这并不一定意味着这些命令如果被其他用户调用就不起作用,只是它们不太可能有用。这些sbin目录通常位于仅适用于 root 用户的命令搜索路径中。

可以/usr/sbin/hwinfo以非root用户身份运行,但其报告不完整;它需要 root 访问权限才能查询某些信息。因此运行sudo hwinfosu -c hwinfo以获得完整的输出,或者/usr/sbin/hwinfo如果不完整的输出就足够了。

您不应该添加/usr/sbin到您的PATH命令,因为它包含的大多数命令无法以非 root 用户身份有效运行。

相关内容