Defina variáveis de ambiente global na inicialização no Solaris 11

2

Eu estou querendo criar um arquivo no Solaris, para que eu possa exportar alguns "itens" sempre que a máquina for inicializada.

ou seja,

Eu quero exportar ORACLE_HOME e ORACLE_SID e alguns outros diretórios, por conta própria, quando a máquina tiver iniciado.

Estas são as duas pastas Oracle que eu preciso exportar:

export ORACLE_HOME=/oracle/product/11.1.0/db_1/
export ORACLE_SID=orcl

Esta é a outra pasta que eu preciso exportar:

export TESTFOLDER_DIR=/test/testfolder/bin/

É altamente irritante que eu tenha que fazer isso toda vez que a máquina for ligada.

Eu tentei pesquisá-lo, mas ainda não vi nada (ainda estou pesquisando). É fácil fazer o arquivo com os comandos de exportação, mas colocá-lo em algum lugar que a máquina saiba usá-los na inicialização, é o problema.

Existe alguma maneira de fazer isso?

    
por Kevdog777 26.02.2013 / 10:32

2 respostas

4

Se essas variáveis precisarem ser definidas para cada conta, o mais simples seria adicionar as declarações de exportação a /etc/profile . Este arquivo não é o perfil do root, mas um arquivo de origem para cada conta usando um shell interativo da família Bourne shell (sh, ksh, bash, ...)

Você pode adicionar apenas no final deste arquivo.

export ORACLE_HOME=/oracle/product/11.1.0/db_1/
export ORACLE_SID=orcl
export TESTFOLDER_DIR=/test/testfolder/bin/

Caso contrário, basta adicionar essas três linhas no arquivo de inicialização do shell (provavelmente $HOME/.profile ou $HOME/.bash_profile ).

Se você estiver efetuando login como root (o que não é uma boa prática), isso seria /.profile ou /root/.profile

Por fim, caso deseje definir essas variáveis incondicionalmente, seja qual for o shell usado e até mesmo para itens de login não interativos, como serviços, você pode usar o arquivo /etc/default/init . Note que o export builtin não é necessário neste arquivo, pois não é um script de shell real, mas realmente um arquivo de configuração, por exemplo:

ORACLE_HOME=/oracle/product/11.1.0/db_1/
ORACLE_SID=orcl
TESTFOLDER_DIR=/test/testfolder/bin/
    
por 26.02.2013 / 10:41
0

No Solaris, 11 /etc/default/init contém a seguinte declaração:

# READERS OF THIS FILE: This file is Obsolete.  Migrate to reading properties from svc:/system/environment:init.

Portanto, as variáveis de ambiente do sistema podem e devem ser definidas usando o utilitário SMF e configurando o serviço apropriado de maneira apropriada.

    
por 29.12.2015 / 19:38