profile + .bash_profile + instate client

Iniciado por Elias Mansur Espindola Jr, 04 de Abril de 2006, 09:46

tópico anterior - próximo tópico

Elias Mansur Espindola Jr

Bom dia a todos.
Estou com um problema de path.

Instalei o "Instante Cliente 10.x.x.x" e o "SQLPLUS" ambos da Oracle.
Só que ao executar o comando <sqlplus> no shell é me retornado a seguinte mensagem:

sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

Só que o arquivo existe e está neste diretório:

/usr/lib/oracle/10.2.0.1/client/lib

Como eu faço para altera  a path no Ubuntu para não ocorrer mais este erro?

Veja o meu arquivo profile (/etc)

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "`id -u`" -eq 0 ]; then
 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11"
else
 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games"
fi

if [ "$PS1" ]; then
 if [ "$BASH" ]; then
   PS1='\u@\h:\w\$ '
   if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
   fi
 else
   if [ "`id -u`" -eq 0 ]; then
     PS1='# '
   else
     PS1='$ '
   fi
 fi
fi

export PATH

umask 022


Agora o meu arquivo .bash_profile (/home)

# ~/.bash_profile: executed by bash(1) for login shells.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/login.defs
#umask 022

# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
   . ~/.bashrc
fi

# set PATH so it includes user's private bin if it exists
if [ -d ~/bin ] ; then
   PATH=~/bin:/usr/lib/oracle/10.2.0.1/client/lib/:"${PATH}"
fi


Obrigado pela atenção

Elias Mansur Espindola Jr

Bom dia!

Pesssoal, eu descobri que o profile é apenas para executáveis.
Para alterar o endereço de onde o Linux vai buscar os .SO deve se alterar ou criar um arquivo chamado ld.so.conf dentro da pasta /etc

Para criar lembre-se
cd /etc
sudo gedit ld.so.conf

Este arquivo deve ter este formato:
# Begin /etc/ld.so.conf

/lib
/usr/lib
/usr/X11R6/lib

# End /etc/ld.so.conf

É neste arquivo que vc vai colocar o endereço de seus .SO
Por exemplo, eu adicionei este diretório /usr/lib/oracle/10.2.0.1/client/lib/
Após salvar o arquivo execute o comando
ldconfig
Espero ter ajudado.