Re: Solaris strip LD_LIBRARY_PATH when su - oracle

From: Michael Austin <maustin_at_firstdbasource.com>
Date: Thu, 14 May 2009 12:30:47 -0500
Message-ID: <jzYOl.22302$as4.12392_at_nlpi069.nbdc.sbc.com>



KT wrote:
> Hi All,
>
> In my rc script, I have su - oracle to run
> /var/opt/oracle/product/10.2.0/db_1/bin/lsnrctl
>
> However, it fails with the following:
> ld.so.1: /var/opt/oracle/product/10.2.0/db_1/bin/lsnrctl: fatal:
> libclntsh.so.10.1: open failed: No such file or directory
>
> The cause is that the env var
> LD_LIBRARY_PATH=/var/opt/oracle/product/10.2.0/db_1/lib was stripped
> by the su process. According to the su man page:
> " Variables with LD_ prefix are removed for security reasons.
> Thus, su bin will not retain previously exported variables
> with LD_ prefix while becoming user bin (bin used as example
> previously)"
>
> How do I make Solaris 8 su to keep the LD_LIBRARY_PATH setting or hard
> code this setting into Oracle configuration file so that lsnrctl will
> not fail?
>
> Thanks,
> Kerr

if you put LD_LIBRARY_PATH in the oracle .profile it will keep it. If you need to keep all environment variables of the root process, then use:

su oracle

See the UNIX docs for the difference... Received on Thu May 14 2009 - 12:30:47 CDT

Original text of this message