« Linuxでの空きメモリー | トップページ | IEのレジストリを操作 »

Oracleユーザー以外でSQL*Plusがつながらない件

RHEL4にOracle10g 10.2.0.1をインストールしoracle以外のユーザーからSQL*Plusでアクセスしようとしたところ以下エラーが発生してつながらない現象がおきました。

<textarea>
SQL*Plus: Release 10.2.0.1.0 - Production on 水 4月 23 12:04:32 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

ERROR:
ORA-01034: ORACLE not available
ORA-27121: unable to determine size of shared memory segment
Linux Error: 13: Permission denied

</textarea>

ORACLE_HOMEへpathは通しているのでメッセージに出ている通りPermissionがあやしいと思い調べてみたところ、、

掲示板の記事

$ORACLE_HOME/bin/oracleのパーミッションがrwxr-x--xになっているー(つд`)
rwsr-sr-xにしたところ問題なくつながりました。

ところで、、パーミッションのsってなに?ということで調べてみました。

パーミッション

sは、setID bitというものらしく、ファイルのownerのように実行できるビットとのことです。owerのxに相当するらしい。そんな特殊な権限があるとは知りませんでしたYO!

chmod u+s $ORACLE_HOME/bin/oracle
chmod g+s $ORACLE_HOME/bin/oracle


を実行して解決しました。
ちなみにインスール手順通りやれば上記のような作業をする必要はないです。
(パーミッションを変えた人がいたのでこういうことに。。)


|

« Linuxでの空きメモリー | トップページ | IEのレジストリを操作 »