ssh 远程执行程序共享库未找到

ssh 远程执行程序共享库未找到

我想写一个脚本来在某些机器上运行一个程序。我可以登录到这些机器来执行该程序。

但是当我尝试“ssh -n -f hostname“cd xxx; ./xxx”时,它打印“加载共享库时出错:libzmq.so.4”。

我在 Google 上搜索了一下,非常确定我将 LD_LIBRARY_PATH 放在了 .bashrc 文件中,而且当我执行 ssh -n -f hostname "echo $LD_LIBRARY_PATH" 时,加载路径已正确设置。

有人能帮助我吗?非常感谢!

答案1

当使用 ssh 登录时,~/.bashrc 不是源 - 但 ~/.bash_profile 是 - 因此如果您在 ~/.bashrc 中设置了 LD_LIBRARY_PATH,则您需要在 ~/.bash_profile 中包含如下内容:

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

此外,在您的 ~/.bashrc 中您可能有:

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

如果这样做,那么您需要在文件上方添加 LD_LIBRARY_PATH 设置。

相关内容