oracle acfsctl,执行root.sh报错:CLSRSC-196: ACFS driver install action

oracle 19c已经发布了快一年了,在AIX和Linux上面安装的次数也不少了,安装的方法也层出不穷,最常用的就是图形化了,可以避免静默安装发现不了的问题。今天帮助一位朋友安装oracle 19c rac,在执行root.sh的时候,报错了。下面就详细分析下:

执行root.sh,屏幕打印日志,显示在安装acfs的时候,报错failed了,

0d692f15d505701fb84e88efbebb3279.png

前台日志只是显示failed,并没有具体的报错信息,我们在相关路径下面查找root.sh的日志,路径在前台日志重有显示,为/u01/app/grid/crsdata/主机名/crsconfig/rootcrs_主机名_日期.log。直接搜索failed,我们可以看到相关报错为:

1c9317aad468d32f0e802897ecde86e0.png

通过这个报错信息我们大概可以看出,是由于ACFS在安装的过程中发现了以前的版本,在uninstall的过程报错,又无法安装新的acfs,所以导致安装失败。

查看mos,发现有篇文章和这种情况相似,只是版本不同:AIX: ROOT.SH FAILS WITH CLSRSC-196: ACFS DRIVER INSTALL ACTIONS FAILED (Doc ID 1929899.1)。

经询问,此平台为AIX,之前安装的12.2.0.2,安装19c没有机器,所以rm -rf $GRID_HOME,直接删除相关目录来进行卸载,没有使用正常的卸载命令。可能导致文件有残留,从而导致失败。按照mos的解决方案:

Manually remove the driver files as root user:

Copy the following files from <12.1 GRID_HOME>/usm/install/cmds/bin to /usr/lib/methods/, overwriting the existing ones:

#cd <12.1 GRID_HOME>/usm/install/cmds/bin

#cp cfgacfsctl.bin cfgadvmctl.bin cfgadvmvol.bin defacfsctl.bin defadvmctl.bin ucfgacfsctl.bin ucfgadvmctl.bin ucfgadvmvol.bin udefacfsctl.bin udefadvmctl.bin /usr/lib/methods/

Modify the following files: /usr/lib/methods/ucfgacfsctl, /usr/lib/methods/ucfgadvmctl, /usr/lib/methods/udefacfsctl, /usr/lib/methods/udefadvmctl, change "ORA_CRS_HOME=" from old 11.2 GRID_HOME to 12.1 GRID_HOME

Run the following commands to complete deinstallation of old ACFS version:

#/usr/lib/methods/ucfgacfsctl -l ofsctl (Continue if error states "failed to look up ODM CuDv object class" or "device is already unconfigured")

#/usr/lib/methods/ucfgadvmctl -l advmctl (Continue if error states "failed to look up ODM CuDv object class" or "device is already unconfigured")

#/usr/lib/methods/udefacfsctl -l ofsctl (Continue if error states "failed to look up ODM CuDv object class")

#/usr/lib/methods/udefadvmctl -l advmctl (Continue if error states "failed to look up ODM CuDv object class")

#/usr/sbin/rmauth -h oracle

#rmrole oracle_devmgmt

#setkst

#rm /usr/lib/drivers/oracle#rm /usr/lib/methods/advm/usr/lib/methods/acfs#rm -rf /sbin/helpers/acfs

#rm /usr/sbin/acfsutil /usr/sbin/advmutil#rm /sbin/acfsutil /sbin/advmutil*

执行具体情况如下:

661dc26b1d321d3041fabc7b0b9e8fa9.png

通过和第一张图片对比可知:libhasgen12.so. 这里显示的是缺少12的版本,应该是找以前安装过oracle 12c rac的残留版本。卸载的时候,libhasgen19.so 找的又19版本.所以这里可以以版本来区分。root.sh执行安装acfs的时候,调用到12c的版本了,但是12c的已经删除,所以报错找不到,应该是重新安装的时候找19的版本。

重新执行root.sh报错解决。

所以以后卸载oracle,一定要按照官方推荐的卸载方法。具体参考下面几篇文章

1、How to Add Node/Instance orRemove Node/Instance in 10gr2, 11gr1, 11gr2 and 12c Oracle Clusterware and RAC(文档 ID 1332451.1)

2、How to Remove/Delete a Node FromGrid Infrastructure Clusterware When the Node Has Failed (文档 ID 1262925.1)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值