Где настроить переменные окружения перманентно для SAP и Oracle под Linux

Спойлер - переменные окружения для

SAP в ~/.sapenv_$HOSTNAME.csh

Oracle в ~/.dbenv_$HOSTNAME.csh

При условии, что вы используете CSH

Проверено на RHEL 6

В файле ~/.login текущего пользователя при установке создаются скрипты с описанием переменных окружения для последующей загрузки:

# @(#) $Id: //bas/720_REL/src/krn/tpls/ind/SAPSRC.CSH#1 $ SAP
# necessary to get hostname without domain (AIX, OS/390 and NOT sun)
switch (`uname`)
   case AIX*:
       alias hostname 'hostname -s'
   breaksw
   case OS/390*:
       setenv _BPXK_AUTOCVT ON
       setenv _TAG_REDIR_IN TXT
       set    _TAG_REDIR_IN=TXT
       setenv _TAG_REDIR_OUT TXT
       set    _TAG_REDIR_OUT=TXT
       setenv _TAG_REDIR_ERR TXT
       set    _TAG_REDIR_ERR=TXT
       alias hostname 'hostname -s'
   breaksw
endsw
# SAP environment
if ( -e $HOME/.sapenv_`hostname`.csh ) then
   source $HOME/.sapenv_`hostname`.csh
else if ( -e $HOME/.sapenv.csh ) then
   source $HOME/.sapenv.csh
endif
# APO environment
if ( -e $HOME/.apoenv_`hostname`.csh ) then
   source $HOME/.apoenv_`hostname`.csh
endif
# LiveCache environment
if ( -e $HOME/.lcenv_`hostname`.csh ) then
   source $HOME/.lcenv_`hostname`.csh
else if ( -e $HOME/.lcenv.csh ) then
   source $HOME/.lcenv.csh
endif
# JAVA environment
if ( -e $HOME/.j2eeenv_`hostname`.csh ) then
   source $HOME/.j2eeenv_`hostname`.csh
else if ( -e $HOME/.j2eeenv.csh ) then
   source $HOME/.j2eeenv.csh
endif
# XI environment
if ( -e $HOME/.xienv_`hostname`.csh ) then
   source $HOME/.xienv_`hostname`.csh
else if ( -e $HOME/.xienv.csh ) then
   source $HOME/.xienv.csh
endif
# RDBMS environment
# @(#) $Id: //bas/720_REL/src/krn/tpls/ind/DBSRC.CSH#1 $ SAP
if ( -e $HOME/.dbenv_`hostname`.csh ) then
   source $HOME/.dbenv_`hostname`.csh
else if ( -e $HOME/.dbenv.csh ) then
   source $HOME/.dbenv.csh
endif

Текст:

if ( -e $HOME/.sapenv_`hostname`.csh ) then
   source $HOME/.sapenv_`hostname`.csh
else if ( -e $HOME/.sapenv.csh ) then
   source $HOME/.sapenv.csh

 

Если файл ~/.sapenv_имя машины.csh  найден - грузить его

Иначе грузить ~/.sapenv.csh

 

Чтобы проверить какую оболочку использует ваш пользователь:

nano /etc/passwd

к примеру, root использует csh - root:x:0:0:root:/root:/bin/csh, значит и скрипты для загрузки переменных будут .csh

 

Из этого скрипта видим, что для переменных окружения SAP используется файл ~/.sapenv_hostname.csh (где hostname - имя машины), а для oracle ~/.dbenv_hostname.csh, при условии, что ваша оболочка(csh), которая использует скрипты с расширением csh.

 

Соответственно, добавляем в самом начале файла нужные нам значения переменных, например:

setenv SAPSYSTEMNAME  SM1

Проверяем echo $SAPSYSTEMNAME

Прим. для скриптов .sh загрузчик будет ~/.profile, а не ~/.logion