Oracle 版本: 19.3.0.0
OS 版本: AIX 7.2
問題描述:
在 AIX 7.2 搭配 vxfs 的環境下安裝 19.3 grid ,執行 gridSetup.sh 後出現以下錯誤 :
/u01/19.0.0/grid $ ./gridSetup.sh  Exception in thread "Attach API initializer" java.lang.ExceptionInInitializerError         at java.lang.J9VMInternals.ensureError(J9VMInternals.java:146)         at java.lang.J9VMInternals.recordInitializationFailure(J9VMInternals.java:135)         at java.nio.file.FileSystems.getDefault(FileSystems.java:187)         at java.nio.file.Paths.get(Paths.java:95)         at com.ibm.tools.attach.target.IPC.checkOwnerAccessOnly(IPC.java:142)         at com.ibm.tools.attach.target.TargetDirectory.createMyDirectory(TargetDirectory.java:90)         at com.ibm.tools.attach.target.AttachHandler.createFiles(AttachHandler.java:207)         at com.ibm.tools.attach.target.AttachHandler.initialize(AttachHandler.java:306)         at com.ibm.tools.attach.target.AttachHandler.run(AttachHandler.java:239) Caused by: java.lang.RuntimeException: default directory must be absolute  | 
由 java Initialize Error ,懷疑是否 java 的問題,執行 find . -name java 產生了權限錯誤 :
/u01/19.0.0/grid $ find . -name java fch: The file access permissions do not allow the specified action.  | 
檢查了 /u01 權限,看起來是沒有問題的 :
# ls –ld /u01 drwxr-x---   67 grid   oinstall       8192 Jun 05 16:32 /u01  | 
問題分析:
在 AIX 環境上不僅要檢查目錄的權限,還要檢查 underlying mount point permissions ,將 /u01 umount 之後再檢查權限 :
# umount /u01 # ls –ld /u01 drwxr-x---   67 root  root       8192 Jun 05 16:32 /u01  | 
發現原本 /u01 的權限為 root ,這邊導致問題所在。
解決方法:
更改 /u01 的權限之後再重新 mount 即可 :
# chown grid:oinstall /u01 # ls –ld /u01 drwxr-x---   67 grid  oinstall       8192 Jun 05 16:32 /u01 # mount /dev/vx/dsk/oradg/oravol /u01  |