我正在安装 arch linux,一切进展顺利,包括iwctl
从实时 USB 运行。但是:
当我安装了 arch 并从磁盘重新启动,并尝试再次运行时iwctl
,它显示:“等待守护进程 IWD”。
当我调用命令 iwd 时,出现错误command not found
。但是,调用后,man iwd
我得到了一个完美的手动输入iwd
,其概要为:iwd [options]。包括选项:--version 和 --help。
这表明 iwd 是一个命令行程序,但正如我之前所说,它没有被找到。
解决我的问题的是调用systemctl start iwd
。(因此要清楚,我的实际问题已经解决)。
我只是想了解为什么会发生这种情况:为什么我的 bash shell 找不到iwd
,而 systemctl 却找到了?iwd
尽管手册页建议这样做,但实际上它不是一个 bash 命令? 我怎么会知道这一点? 这是一个错误吗?
iwd
通常安装在 中/usr/libexec
,但大多数用户都没有安装PATH
它(也不应该安装)。因此,您的 shell 无法自行找到它。iwd
还附带了服务定义,这就是为什么systemctl
知道它——它不关心“命令”(无论它们采取何种形式),它关心的是服务。在某些情况下直接运行可能会很有用
iwd
,但我想这些情况很不寻常,以至于大多数情况iwd
下没有bin
或不会引起问题。sbin