1、问题描述:
admin容器运行hostshell指令出现如下报错:stack smashing detected ***:terminated报错
输入图片说明
输入图片说明
2、运行环境
KubeOS系统基于openEuler 22.03(LTS-SP1) admin容器基础镜像版本:openeuler-22.03-lts-sp1
3、问题复现
手动export LD_LIBRARY_PATH 环境变量后,执行env、hostshell均出现stack smashing detected ***:terminated报错
4、手动exprot LD_LIBRARY_PATH 变量,并增加/usr/lib64后,执行env、hostshell命令,不再报错
输入图片说明
5、问题解决:
猜想,由于系统默认的LD_LIBRARY_PATH 环境变量的内容为空,在使用env设置LD_LIBRARY_PATH时,系统最开始的环境变量/lib、/lib64、/usr/lib、/usr/lib64没有被设置到LD_LIBRARY_PATH中去,导致hostshell指令依赖的动态库路径/usr/lib64无法从环境变量LD_LIBRARY_PATH中获取,hostshell指令运行失败
因此将系统最开始的lib和lib64路径也添加到LD_LIBRARY_PATH环境变量中,使hostshell依赖的动态库路径可以从该环境变量中获取,避免hostshell运行出错。