現象
CentOS 5.5 x86 に Oracle Database 11g Release 2 Grid Infrastructure (11.2.0.2.0) for Linux x86 をインストール中に root.sh を実行すると「ACFS-9459」が発生する。
[root@node01 ~]# /u01/app/11.2.0/grid/root.sh (中略) ACFS-9459: ADVM/ACFS is not supported on this OS version: 'error: file /etc/SuSE-release: No such file or directory
原因
仕様。たぶん。
root.sh から呼ばれている /u01/app/11.2.0/grid/lib/osds_acfslib.pm を見ると以下の通り CentOS には対応していない。
どの箇所か探して、
[root@node01 ~]# find /u01/app/11.2.0/grid -name '*.log' -o -print0|xargs -0 grep 'DVM/ACFS is not supported on this OS version' /u01/app/11.2.0/grid/lib/osds_acfslib.pm: "ADVM/ACFS is not supported on this OS version: '%s'",
ソースコードをのぞいてみる。
[root@node01 ~]# less /u01/app/11.2.0/grid/lib/osds_acfslib.pm (中略) # see - http://www.oracle.com/us/technologies/027626.pdf open (RPM_QF, "rpm -qf /etc/redhat-release 2>&1 |"); $release = <RPM_QF>; close (RPM_QF); if (($release =~ /^redhat-release/) || # straight RH ($release =~ /^enterprise-release/)) # Oracle Enterprise Linux { if ($release =~ /release-4/) # RH/OEL 4
解決策
CentOS をサポートするよう/u01/app/11.2.0/grid/lib/osds_acfslib.pm を書き換えて再実行する。
# see - http://www.oracle.com/us/technologies/027626.pdf open (RPM_QF, "rpm -qf /etc/redhat-release 2>&1 |"); $release = <RPM_QF>; close (RPM_QF); if (($release =~ /^redhat-release/) || # straight RH ($release =~ /^enterprise-release/) || # Oracle Enterprise Linux ($release =~ /^centos-release/)) # CentOS { if ($release =~ /release-4/) # RH/OEL 4
これで良いのかどうかはわかりません。コードを書き換えて無理やり通しただけです。
良い子も悪い子もマネしないでくださいw