RH 6.1、7.4、7.6与SSH有关的用户相关错误以及LD_LIBRARY_PATH和openmpi mpiexec的设置

问题描述 投票:0回答:1

而且,是的,这很奇怪。

我在RH 7.6上运行openmpi-4.0.2遇到麻烦。一切都是段错误,甚至是非MPI Shell脚本。如果我以其他用户身份运行,那么一切都会按预期运行-因此,这取决于用户。我一直在寻找自己的环境和其他用户的环境,寻找有毒物质。

[将内容精简为裸机后,我发现基本的ssh命令将环境变量LD_LIBRARY_PATH设置为以“:”结尾的字符串,这对我的用户来说是有毒的。对其他使用者无毒。

对于RH 6.1、7.4和7.6,会发生这种情况。我有一个RH 7.1系统,在该系统上不会发生这种情况(怪异的行为不断地给予和给予)。

我需要解决以下问题的两件事之一:一种是通过“ mpiexec”命令在基础ssh命令中填充LD_LIBRARY_PATH的方法(到目前为止,我的所有尝试都失败了),或者在用户环境中找到了根本原因并修复它。

以下是来自RH 6.1的信息,它提供了实际的错误消息,而不仅仅是段错误。

-bash-4.1$ /usr/bin/ssh -x $(hostname) 'LD_LIBRARY_PATH=barney:fred ; export LD_LIBRARY_PATH ; echo done ; env | egrep LD_'
done
LD_LIBRARY_PATH=barney:fred
-bash-4.1$ /usr/bin/ssh -x $(hostname) 'LD_LIBRARY_PATH=barney: ; export LD_LIBRARY_PATH ; echo done ; env | egrep LD_'
done
env: relocation error: libc.so.6: symbol _dl_starting_up, version GLIBC_PRIVATE not defined in file ld-linux-x86-64.so.2 with link time reference
egrep: relocation error: libc.so.6: symbol _dl_starting_up, version GLIBC_PRIVATE not defined in file ld-linux-x86-64.so.2 with link time reference
-bash-4.1$ /usr/bin/ssh -x $(hostname) 'LD_LIBRARY_PATH=barney ; export LD_LIBRARY_PATH ; echo done ; env | egrep LD_'
done
LD_LIBRARY_PATH=barney
-bash-4.1$ sudo su - otheruser
-bash-4.1$ /usr/bin/ssh -x $(hostname) 'LD_LIBRARY_PATH=barney:fred ; export LD_LIBRARY_PATH ; echo done ; env | egrep LD_'
done
LD_LIBRARY_PATH=barney:fred
-bash-4.1$ /usr/bin/ssh -x $(hostname) 'LD_LIBRARY_PATH=barney: ; export LD_LIBRARY_PATH ; echo done ; env | egrep LD_'
done
LD_LIBRARY_PATH=barney:
-bash-4.1$ /usr/bin/ssh -x $(hostname) 'LD_LIBRARY_PATH=barney ; export LD_LIBRARY_PATH ; echo done ; env | egrep LD_'
done
LD_LIBRARY_PATH=barney
linux ssh openmpi mpiexec
1个回答
0
投票

我只跳舞了三天。 (必须让openmpi为我的用户工作。)

来自此文章:https://comp.os.linux.development.apps.narkive.com/P7hTPwxP/must-ld-library-path-end-with-a我发现终端“:”会将$ HOME添加到LD_LIBRARY_PATH的末尾。这不是我所知道的(我在* NIX系统上拥有35年的专业经验)。

我已经在我的主目录中找到libc.so.6的副本,出于某些原因(当时可能是有效的),或者仅仅因为那天我很笨拙,所以我将其放在四个月前的目录中。删除了libc.so.6,问题消失了。

[两个解决方案:不要在LD_LIBRARY_PATH后缀,并且永远不要在您的家庭目录中放置任何共享的库。

四天我永远都不会回来。

经验就是没有得到想要的东西时得到的。

保持尴尬:您只有在将其发布在stackoverflow.com上之后,才能自己找到愚蠢问题的答案。

© www.soinside.com 2019 - 2024. All rights reserved.