【发布时间】:2014-12-24 07:49:24
【问题描述】:
我们在嵌入式系统上使用 linux,该系统具有用于各种 shell 命令的 busybox 1.20.2。我们遇到了一个非常奇怪的问题,即 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,这是发生这种情况的唯一环境变量。
谁能解释为什么会这样?谢谢!
【问题讨论】:
-
奇怪的问题...它是否以 root 身份工作?
-
你能用
env以外的东西来测试吗? python或perl或其他东西,看看它是否正确继承LD_LIBRARY_PATH?是否会因为某种原因,busybox 明确禁止导出LD_LIBRARY_PATH?