ash:未找到命令

ash:未找到命令

我在我的 NAS 上安装了 Unison 包,当通过这个 ssh 进入 NAS 时它可以工作$NAS unison -version

但是,当我在本地运行命令而没有先使用 ssh 连接到系统时,ssh remotehost unison -version我会返回此错误。

ash: unison: not found

答案1

首先检查 SSH 到 NAS 时的路径是什么:

ssh remotehost 'echo $PATH'

然后在 NAS 上检查unison安装位置:

which unison

最有可能的是它不在ssh路径上。

解决方案

如果存在上述问题,您可以采取以下措施之一:

  1. 指定完整路径:ssh remotehost /full/path/unison

  2. 延伸路径:ssh remotehost 'PATH="$PATH:/full/path" ; unison'

  3. ssh如果在配置PermitUserEnvironment中启用,则设置路径。将其添加到:sshdPATH~/.ssh/environment

  4. 在 NAS 上的登录 shell 中执行命令:ssh remotehost 'ash -l -c "unison"'

相关内容