Problema

Ao tentar executar o script rootcrs.sh para fazer lock ou unlock do Grid Home, a execução apresentou o erro abaixo:

[root@rac01 ~]# $ORACLE_HOME/crs/install/rootcrs.sh -lock
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
/u01/app/grid/crsdata/rac01/crsconfig/crslock_rac01_2024-04-18_09-29-18PM.log
2024/04/18 21:29:20 CLSRSC-180: An error occurred while executing the command '/bin/rpm -qf /sbin/init'
Died at /u01/app/19.0.0/grid/crs/install/s_crsutils.pm line 2729.
The command '/u01/app/19.0.0/grid/perl/bin/perl -I/u01/app/19.0.0/grid/perl/lib -I/u01/app/19.0.0/grid/crs/install -I/u01/app/19.0.0/grid/xag /u01/app/19.0.0/grid/crs/install/rootcrs.pl -lock' execution failed

O erro principal no resultado acima é esse:

CLSRSC-180: An error occurred while executing the command '/bin/rpm -qf /sbin/init'

Uma forma de investigar melhor o erro é executar manualmente o mesmo comando que aparece no resultado do erro:

[root@rac01 ~]# /bin/rpm -qf /sbin/init
error: rpmdb: BDB0113 Thread/process 6667/140182132197248 failed: BDB1507 Thread died in Berkeley DB library
error: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db5 - (-30973)
error: cannot open Packages database in /var/lib/rpm
error: rpmdb: BDB0113 Thread/process 6667/140182132197248 failed: BDB1507 Thread died in Berkeley DB library
error: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db5 - (-30973)
error: cannot open Packages database in /var/lib/rpm
error: rpmdb: BDB0113 Thread/process 6667/140182132197248 failed: BDB1507 Thread died in Berkeley DB library
error: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db5 - (-30973)
error: cannot open Packages database in /var/lib/rpm

Causa

O repositório de RPM está corrompido no sistema operacional.

Solução

1) Crie um backup dos arquivos do diretório “/var/lib/rpm”:

mkdir /var/lib/rpm/backup
cp -a /var/lib/rpm/__db* /var/lib/rpm/backup/

2) Remova todos os arquivos originais:

rm -f /var/lib/rpm/__db*

3) Recrie o repostório:

rpm --rebuilddb

Caso apareça, o erro abaixo pode ser ignorado:

error: could not delete old database at /var/lib/rpmold.65150

Teste

Testando o comando o rpm novamente:

[root@rac01 ~]# /bin/rpm -qf /sbin/init
systemd-239-78.0.4.el8.x86_64

E agora o script rootcrs.sh funciona normalmente:

[root@rac01 ~]# $ORACLE_HOME/crs/install/rootcrs.sh -lock
Using configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/rac01/crsconfig/crslock_rac01_2024-04-18_09-34-39PM.log
2024/04/18 21:34:40 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'

2 thoughts on “Script rootcrs.sh falha com “CLSRSC-180: An error occurred while executing the command ‘/bin/rpm -qf /sbin/init'””

Leave a Reply

Discover more from Blog do Dibiei

Subscribe now to keep reading and get access to the full archive.

Continue reading