Minhas variáveis são
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Como salvar essas variáveis permanentemente?
Minhas variáveis são
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Como salvar essas variáveis permanentemente?
Respostas:
Você pode adicioná-lo ao arquivo .profileou ao arquivo de perfil do shell de login (localizado no diretório inicial).
Para alterar a variável ambiental "permanentemente", é necessário considerar pelo menos estas situações:
/etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profilena ordem~/.bashrc$BASH_ENV$EDITOR ~/.profile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
$EDITOR ~/.zprofile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
$EDITOR ~/.profile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
$EDITOR ~/.profile
#add lines at the bottom of the file:
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
export LD_LIBRARY_PATH ORACLE_HOME
$EDITOR ~/.login
#add lines at the bottom of the file:
setenv LD_LIBRARY_PATH /usr/lib/oracle/11.2/client64/lib
setenv ORACLE_HOME /usr/lib/oracle/11.2/client64
Se você quiser torná-lo permanente para todos os usuários, poderá editar os arquivos correspondentes em /etc/, por exemplo , /etc/profilepara shells semelhantes a Bourne, /etc/csh.loginpara (t) csh e /etc/zsh/zprofilee /etc/zsh/zshrcpara zsh.
Outra opção é usar /etc/environment, que nos sistemas Linux é lida pelo módulo PAM pam_enve suporta apenas atribuições simples, não expansões no estilo de shell. (Veja o guia do Debian sobre isso.)
É provável que esses arquivos já contenham algumas atribuições; portanto, siga a sintaxe que você já vê presente no seu arquivo.
Certifique-se de reiniciar o shell e conectar novamente o usuário, para aplicar as alterações.
Se você precisar adicionar uma variável de ambiente para todo o sistema, agora existe uma /etc/profile.dpasta que contém o script sh para inicializar a variável.
Você pode colocar seu script sh com todas as variáveis exportadas aqui.
Tenha cuidado, embora isso não deva ser usado como uma maneira padrão de adicionar variáveis ao env no Debian.
.profiledentro, /etc/mas eu não como definir as variáveis neste, .profilepor favor me diga
.profileestá no seu diretório pessoal não/etc/
[Admin@localhost etc]$ cat ~/.profile cat: /home/Admin/.profile: No such file or directory [Admin@localhost etc]$
:wqé o comando para gravar o arquivo e saia em vi não se esqueça de digitar escantes
crontabscripts. Nenhum desses locais será procurado quando um crontabscript estiver em execução.
Para fazer isso para todos os usuários / conchas, dependendo da distribuição que você possa usar /etc/environmentou /etc/profile. Criar um novo arquivo /etc/profile.dpode ser preferível, se existir, pois será menos provável que entre em conflito com as atualizações feitas pelo sistema de empacotamento.
Em /etc/environment, as variáveis são geralmente definidas com name=value, por exemplo:
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Em /etc/profile, você deve usar, exportpois este é um script, por exemplo:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
O mesmo vale para um arquivo /etc/profile.d, também pode haver restrições de nomes que devem ser atendidas para que o arquivo funcione. No Debian, o arquivo deve ter a extensão .sh(embora não precise de uma linha de reta ou permissões executáveis, pois é originário). verifique a documentação da sua distribuição ou consulte o /etc/profilescript para ver como esses arquivos são carregados.
Observe também que essa configuração LD_LIBRARY_PATHpermanentemente é potencialmente problemática , incluindo um risco à segurança. Como alternativa, eu sugeriria encontrar uma maneira de acrescentar LD_LIBRARY_PATHo início da linha de comando para cada programa que precisa dele antes da execução. Por exemplo:
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib myprog
Uma maneira de fazer isso é usar um script de wrapper para executar o programa. Você pode atribuir a ele o mesmo nome que o seu programa e colocá-lo em /usr/local/binqualquer lugar que aparecer antes da localização do seu programa PATH. Aqui está um exemplo de script (não esqueça chmod +xdo script):
#!/bin/sh
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib /real/location/of/myprog "$@"
environmentarquivo, o que faz com que eles sejam carregados? Por exemplo, depois de sair do editor vi (alterações escrito com sucesso), estou esperando para escrever echo $MY_NEW_VARIABLEe vê-lo imprimir - EDIT: Eu vejo que eles estão lá se eu lançar um novo shell de comando
/etc/environment, mesmo se eu reiniciei o terminal bash ou digitei source /etc/environment. Portanto, se você estiver tendo problemas em que a variável de ambiente não está se perpetuando, tente reiniciar.
/etc/environmentnão é um script, portanto não pode ser originado. Ele é carregado no momento do login (e em vários outros eventos do sistema) pelo PAM, para que você possa fazer logout / login ou executar uma nova sessão de login em um terminal, $ su <your username here>para selecionar os novos valores nessa sessão isolada. Os valores desaparecerão assim que você sair, por isso provavelmente é menos propenso a erros fazer logoff / login totalmente completos.
Quando você instala o oracle, o oracle solicita que você execute alguns scripts antes de clicar em ok. Esse script colocou uma configuração fictícia no .bash_profilediretório inicial do usuário in oracle. Para ver o arquivo, ls -almostrará todos os arquivos ocultos.
Digite nano bash_profilepara abrir o arquivo. Faça alterações no arquivo para refletir seu nome de host e o nome sid apropriado. verifique outras configurações que precisem de modificação. pressione o controle x para salvar e digite y quando for perguntado se deseja salvar. Pressione a tecla Enter para salvar. Reinicie o computador. Registrando como usuário Oracle. inicie o banco de dados digitando
sqlplus / as sysdba
startup
/usr/lib/oracle/11.2/client64/libum novo arquivo no/etc/ld.so.conf.d/caminho. Então você não precisa definir LD_LIBRARY_PATH, veja também aqui .