linux – Busybox env不显示LD_LIBRARY_PATH

我们在一个嵌入式系统上使用linux,它有busybox 1.20.2用于各种shell命令.我们有一个非常奇怪的问题,即env现在显示LD_LIBRARY_PATH的值:

$export LD_LIBRARY_PAT=/usr/bin
$export LD_LIBRARY_PATH=/usr/bin
$export LD_LIBRARY_PATH1=/usr/bin
$env | sort
ENV=/etc/profile.environment
HISTFILE=/tmp/.ash_history.debug.357
HOME=/home/debug
LD_LIBRARY_PAT=/usr/bin
LD_LIBRARY_PATH1=/usr/bin
LOGNAME=debug
MAIL=/var/mail/debug
PATH=/home/debug/bin:/usr/bin:/bin:/usr/sbin:/sbin
PWD=/home/debug
PYTHONPATH=:/home/debug/tools/tools-0.0.0/common
SHELL=/bin/bash
SHLVL=1
SSH_CLIENT=10.10.10.22 58307 22
SSH_CONNECTION=10.10.10.22 58307 10.10.12.23 22
SSH_TTY=/dev/pts/0
TERM=xterm
USER=debug
_=/usr/bin/env
$
$echo $LD_LIBRARY_PAT
/usr/bin
$echo $LD_LIBRARY_PATH
/usr/bin
$echo $LD_LIBRARY_PATH1
/usr/bin

如您所见,LD_LIBRARY_PATH已设置,但它不会显示在env的输出中. AFAIK,它是唯一发生这种情况的环境变量.

任何人都可以解释为什么会这样吗?谢谢!

解决方法:

Linux won’t let you mess with the LD_LIBRARY_PATH因为busybox(可能)的setuid位已打开. Busybox在其二进制文件中内置了一堆常见的linux命令,因此需要setuid.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...