安装19c 数据库 libclntsh.so: file format not recognized

联系:手机/微信(+86 17813235971) QQ(107644445)QQ咨询惜分飞

标题:安装19c 数据库 libclntsh.so: file format not recognized

作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

今天在qq群里面,讨论一个19c(19.3)在linux系统(CentOS 7.9)安装的问题,感觉有点意思,给整理出来供参考
安装日志报错

INFO: 
/usr/bin/ld:/home/oracle/app/oracle/product/19.0.0/dbhome_1/lib//libclntsh.so: 
      file format not recognized; treating as linker script
/usr/bin/ld:/home/oracle/app/oracle/product/19.0.0/dbhome_1/lib//libclntsh.so:1: syntax error

INFO: 
make[2]: *** [dlopenlib] Error 1

INFO: 
make[2]: Leaving directory `/home/oracle/app/oracle/product/19.0.0/dbhome_1/rdbms/lib'

INFO: 
make[1]: Leaving directory `/home/oracle/app/oracle/product/19.0.0/dbhome_1/rdbms/lib'

INFO: 
make[1]: *** [/home/oracle/app/oracle/product/19.0.0/dbhome_1/lib/libasmperl19.so] Error 2

INFO: 
make: *** [libasmperl19.ohso] Error 2

拿这个错误在mos上检索,发现匹配文章:19c Installation Fails with error “libclntsh.so: file format not recognized; treating as linker script” (Doc ID 2631283.1),结合文章分析,第一反应怀疑安装介质有问题,让网友进行sha256sum 验证
20210420215951


通过验证确认安装介质没有问题,和官方公布的一致.进一步检查 ls -l $ORACLE_HOME/libcln* 文件
20210420220158

这个问题比较明显,根据官方的描述,这些文件应该是:
20210420220835

这里比较明显对应的ln丢失了.从提供的以前unzip解压日志看
20210420221610

解压有这些文件,但是ln丢失,qq群朋友对unzip进行安装
20210420221740

然后重新解压oracle安装程序,验证libcln,一切正常,安装也成功
20210420221853

只可惜以前的unzip直接被安装新的unzip覆盖了,未做保留现场进行分析,为什么解压后ln丢失