요약
Sun Solaris에서 booting시 자동으로 Altibase server를 startup하는 스크립트 작성 방법 입니다.
방법
Solaris는 run level과 관계가 있는 rc스크립트를 제공합니다. 이 스크립트들은 /sbin 디렉토리 안에 존재하며 /etc 디렉토리의 rc 스크립트와 심볼릭 링크되어 있습니다.
/sbin/rc# 스크립트들은 그들과 일치하는 이름의 /etc/rc#.d 디렉토리 아래에 해당하는 파일들이 존재하는데, /etc/rc#.d 디렉토리에는 run level을 위해 시스템 프로세스를 start하고 stop하는 스크립트들을 포함하고 있습니다.
이 디렉토리 안에 존재하는 파일들을 파일명이 K와 S로 시작하며, K* 스크립트는 프로세스 kill할 때 사용되며, S* 스크립트는 프로세스를 start할 때 사용됩니다. 이들 파일은 alphanumeric 순으로 수행됩니다.
/etc/init.d 디렉토리 안에는 프로세스를 start 시키거나 또는 kill 시키는 실질적인 run control 파일들이 존재하는데 이들은 etc/rc#.d 디렉토리와 하드링크 되어 있습니다.
단계
STEP1
/etc/alti-conf.d/alti.conf file을 만듭니다. 이 file에서는 자동 구동시 필요한 변수들을 정의하고 Setting합니다. 이 file의 내용은 아래와 같습니다.
ALTIBASE_HOME=/home/altibase/altibase_home ; export ALTIBASE_HOME |
---|
만약 자동 구동을 하고 싶지 않다면 START_ALTIBASE의 값을 0으로 맞추면 됩니다. 그리고 ALTIBASE_OWNER나 ALTIBASE_HOME이 변경되었을 경우에는 반드시 이 File에 있는 값을 수정 해 주어야 합니다.
STEP2
/etc/init.d/alti_start file을 만든다. 이 script에서는 알티베이스 구동 명령어를 이용해서 실제로 DBMS를 startup하는 script 입니다.
#!/sbin/sh {*}ADMIN="$ Unknown macro: {ALTIBASE_HOME}
/bin/isql -s 127.0.0.1 -u sys -p manager -sysdba"* *$ Unknown macro: {ADMIN}
<<EOF{*} |
---|
STEP3
/etc/init.d/alti_stop file을 만듭니다.
이 script에서는 알티베이스 구동 명령어를 이용해서 실제로 DBMS를 stop하는 script입니다.
#!/sbin/sh ADMIN="$ Unknown macro: {ALTIBASE_HOME}
/bin/isql -s 127.0.0.1 -u sys -p manager -sysdba" *$ Unknown macro: {ADMIN}
<<EOF{*} |
---|
STEP4
/etc/init.d/altibase file을 만듭니다.
이 file은 실제로 나중에 startup script나 stop script가 symbolic link를 만들 file입니다. 이 file의 내용은 아래와 같습니다.
#!/sbin/sh {*}echo "usage: $0 Unknown macro: {start|stop}
"* |
---|
STEP5
/etc/rc3.d Directory에서 Startup Script와 Shutdown Script의 Hard Link를 만듭니다.
#cd /etc/rc3.d |
---|
STEP6
각각의 Script가 정상적으로 수행될 수 있도록 수행 권한을 Setting합니다.
#cd /etc/rc3.d |
---|
STEP7
정상적으로 동작하는 지 Test를 해봅니다. 이 때 Test는 root계정에서 수행해 보아야 합니다.
# /etc/init.d/altibase <start:stop> |
---|