Oracle BULLETIN 유닉스인 경우의 처리방법 입니다.
오라클 유저는 오라클에 접속이 되고 다른 일반 유저는 SQL*PLUS 등을 통하여 접속하려고 할 때 ORA-1034,7320 또는 ORA-1034,7429와 같은 에러가 발생하는 경우가 있다.
이와같은 문제는 대개 오라클의 커널인 oracle 화일이나 orasrv,tnslsnr 등의 Permission 과 Ownership 의 잘못된 세팅으로 발생하게 된다. 다음 사항을 체크해 보면 문제를 해결할 수 있다.
1. 위의 3가지 화일의 Permission과 Ownership을 체크한다. ls로 보았을 때 다음과 같은 상태이어야 한다.
$ cd ORACLE_HOME/bin
$ ls -l
-rwsr-s--x 1 oracle dba 7330847 Oct 20 11:01 oracle*
-rwsr-x--x 1 root dba 62009 Dec 31 1995 orasrv*
-rwsr-x--x 1 root dba 2051060 Dec 10 1995 tnslsnr*
만약 위와 같지 않다면 다음 명령으로 변경하도록 한다.
$ chmod 6751 oracle
$ chmod 4751 orasrv
$ chmod 4751 tnslsnr
2. Filesystem이 Nosetuid로 Mount 되지 않아야 한다. /etc/fstab 화일에서 Nosuid를 검사하도록 한다. 다음과 같이 되어 있으면 정상이다.
/dev/dsk/c3d0s3 /dev/rdsk/c3d0s3 /mnt4 ufs - yes rw,nosuid
3. 오라클 유저의 Umask를 확인한다. Umask가 022가 아닌 상태에서 인스톨을 하였다면 디렉토리와 화일의 Permission이 잘못 세팅되었을 수도 있다. 다음 명령으로 확인할 수 있다.
$ umask 022
4. $ORACLE_HOME/bin 디렉토리에 있는 실행화일들의 Ownership을 확인한다. 다음 화일들을 제외하고는 모두 오라클 유저가 Owner 이어야 한다.
-rw-r--r-- 1 root dba 7332
-rwsr-xr-x 1 root dba 3348364
-rwsr-xr-x 1 root dba 246
-rwsr-x--x 1 root dba 62009
-rwsr-xr-x 1 root dba 6478
-rwsr-x--x 1 root dba 2051060 Jul 12Jun 6Jun 6Dec 31Jun 28Dec 10 09:4710:4410:44199508:591995 gatewayoomgr*oomgrf*orasrv*osh*tnslsnr*
만약 Ownership이 위와 같이 않다면 chown 명령을 이용하여 수정하도록 한다.
$ chown root osh
5. 모든 오라클 화일들은 그룹이 dba로 되어 있어야 한다. 만약 그렇지 않다면 다음과 같이 해서 바꾸어 주도록 한다.
$ chgrp dba *
6. ORACLE_HOME으로 지정된 모든 디렉토리는 Permission이 755 이상어야 한다. 예를 들어 ORACLE_HOME=/usr/oracle/ora7 이라고 할 때 /usr, /usr/oracle. /usr/oracle/ora7 디렉토리의 Permission이 각각 755 로 되어 있어야 한다.
|