OPatchAuto falha com “ERROR: Invalid Patch location”

Problema

Tentativa de realizar apply ou analyze de Release Update com OPatchAuto falha com mensagem de erro “ERROR: Invalid Patch location”:

[root@rac01 ~]# opatchauto apply /home/grid/32545008/ -analyze

OPatchauto session is initiated at Wed Jun 30 19:42:02 2021

System initialization log file is /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2021-06-30_07-42-04PM.log.

Session log file is /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/opatchauto2021-06-30_07-42-19PM.log
The id for this session is 684S

Executing OPatch prereq operations to verify patch applicability on home /u01/app/product/19.0.0.0/grid

Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/19.0.0.0/db_1
Patch applicability verified successfully on home /u01/app/oracle/product/19.0.0.0/db_1

Patch applicability verified successfully on home /u01/app/product/19.0.0.0/grid


Executing patch validation checks on home /u01/app/product/19.0.0.0/grid
Patch validation checks successfully completed on home /u01/app/product/19.0.0.0/grid


Executing patch validation checks on home /u01/app/oracle/product/19.0.0.0/db_1
Patch validation checks successfully completed on home /u01/app/oracle/product/19.0.0.0/db_1


Verifying SQL patch applicability on home /u01/app/oracle/product/19.0.0.0/db_1
SQL patch applicability verified successfully on home /u01/app/oracle/product/19.0.0.0/db_1

OPatchAuto successful.

--------------------------------Summary--------------------------------

Analysis for applying patches has failed:

Host:rac01
RAC Home:/u01/app/oracle/product/19.0.0.0/db_1
Version:19.0.0.0.0
Analysis for patches has failed.
ERROR: Invalid Patch location: /home/grid/32545008/


Host:rac01
CRS Home:/u01/app/product/19.0.0.0/grid
Version:19.0.0.0.0


==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /home/grid/32545008/32579761
Log: /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_19-42-32PM_1.log

Patch: /home/grid/32545008/32576499
Log: /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_19-42-32PM_1.log

Patch: /home/grid/32545008/32585572
Log: /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_19-42-32PM_1.log

Patch: /home/grid/32545008/32584670
Log: /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_19-42-32PM_1.log

Patch: /home/grid/32545008/32545013
Log: /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_19-42-32PM_1.log


OPATCHAUTO-72053: Analysis for the patches failed.
OPATCHAUTO-72053: Command execution failed.
OPATCHAUTO-72053: Please check the summary for more details.

OPatchauto session completed at Wed Jun 30 19:43:26 2021
Time taken to complete the session 1 minute, 24 seconds

Nota: Por padrão, o OPatchAuto aplica o patch no GI Home e em todos os DB Homes que estiverem na mesma versão do GI Home, a menos que seja especificada a opção -oh (que é usada para indicar o diretório do Oracle Home que deve ser atualizado).

Na sessão SUMMARY, o erro foi reportado somente para o DB Home (RAC Home):

--------------------------------Summary--------------------------------

Analysis for applying patches has failed:

Host:rac01
RAC Home:/u01/app/oracle/product/19.0.0.0/db_1
Version:19.0.0.0.0
Analysis for patches has failed.
ERROR: Invalid Patch location: /home/grid/32545008/


Host:rac01
CRS Home:/u01/app/product/19.0.0.0/grid
Version:19.0.0.0.0


==Following patches were SUCCESSFULLY analyzed to be applied:

Causa

O usuário “oracle” não tem permissão para acessar o diretório onde o patch foi extraído.

Apesar de o OPatchAuto ser executado com usuário root, este utilitário é apenas o orquestrador que automatiza as ações executadas com OPatch. Na prática, o OPatchAuto irá aplicar os patches no Grid Infrastructure com o OPatch do GI Home, conectando com o usuário grid. Por outro lado, os patches do Database são aplicados com o OPatch do respectivo DB Home, conectando com o usuário oracle.

Note que o diretório “32545008” pertence ao usuário grid e ao grupo oinstall, com permissão 775 em todos os arquivos e sub-pastas:

# stat /home/grid/32545008 | grep Gid
Access: (0775/drwxrwxr-x)  Uid: (54322/    grid)   Gid: (54321/oinstall)

# ls -lrt /home/grid/32545008
total 132
-rwxrwxr-x 1 grid oinstall   5824 Apr 20 04:46 bundle.xml
drwxrwxr-x 5 grid oinstall     62 Apr 20 07:17 32579761
drwxrwxr-x 4 grid oinstall     48 Apr 20 07:18 32584670
drwxrwxr-x 5 grid oinstall     81 Apr 20 07:18 32545013
drwxrwxr-x 5 grid oinstall     62 Apr 20 07:21 32576499
-rwxrwxr-x 1 grid oinstall      0 Apr 20 07:22 README.txt
drwxrwxr-x 2 grid oinstall   4096 Apr 20 07:22 automation
drwxrwxr-x 4 grid oinstall     48 Apr 20 07:22 32585572
-rwxrwxr-x 1 grid oinstall 122690 Jun  4 09:48 README.html

Mas uma tentativa de acessar esse diretório conectado com o usuário “oracle” falha por falta de permissão:

# su - oracle
Last login: Wed Jun 30 19:52:02 -03 2021 from 192.168.1.218 on pts/1
[oracle@rac01 ~]$ ls -l /home/grid/32545008
ls: cannot access /home/grid/32545008: Permission denied

Isso ocorre porque o usuário oracle não tem permissão no diretório /home/grid.

Solução

A solução neste caso é mover a pasta do patch para uma localização onde o usuário oracle tenha permissão de leitura em todo o diretório, desde a raíz.

Neste exemplo, vou mover a pasta para o /tmp :

# mv /home/grid/32545008/ /tmp/

Testando a acessbilidade com o usuário oracle:

# su - oracle
Last login: Wed Jun 30 20:11:01 -03 2021 on pts/0
[oracle@rac01 ~]$
[oracle@rac01 ~]$ ls -lrt /tmp/32545008/
total 132
-rwxrwxr-x 1 grid oinstall   5824 Apr 20 04:46 bundle.xml
drwxrwxr-x 5 grid oinstall     62 Apr 20 07:17 32579761
drwxrwxr-x 4 grid oinstall     48 Apr 20 07:18 32584670
drwxrwxr-x 5 grid oinstall     81 Apr 20 07:18 32545013
drwxrwxr-x 5 grid oinstall     62 Apr 20 07:21 32576499
-rwxrwxr-x 1 grid oinstall      0 Apr 20 07:22 README.txt
drwxrwxr-x 2 grid oinstall   4096 Apr 20 07:22 automation
drwxrwxr-x 4 grid oinstall     48 Apr 20 07:22 32585572
-rwxrwxr-x 1 grid oinstall 122690 Jun  4 09:48 README.html

Testando a execução do analyze com OPatchAuto novamente:

# opatchauto apply /tmp/32545008/ -analyze

OPatchauto session is initiated at Wed Jun 30 20:15:44 2021

System initialization log file is /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchautodb/systemconfig2021-06-30_08-15-46PM.log.

Session log file is /u01/app/product/19.0.0.0/grid/cfgtoollogs/opatchauto/opatchauto2021-06-30_08-15-59PM.log
The id for this session is DAYI

Executing OPatch prereq operations to verify patch applicability on home /u01/app/product/19.0.0.0/grid

Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/19.0.0.0/db_1
Patch applicability verified successfully on home /u01/app/product/19.0.0.0/grid

Patch applicability verified successfully on home /u01/app/oracle/product/19.0.0.0/db_1


Executing patch validation checks on home /u01/app/product/19.0.0.0/grid
Patch validation checks successfully completed on home /u01/app/product/19.0.0.0/grid


Executing patch validation checks on home /u01/app/oracle/product/19.0.0.0/db_1
Patch validation checks successfully completed on home /u01/app/oracle/product/19.0.0.0/db_1


Verifying SQL patch applicability on home /u01/app/oracle/product/19.0.0.0/db_1
SQL patch applicability verified successfully on home /u01/app/oracle/product/19.0.0.0/db_1

OPatchAuto successful.

--------------------------------Summary--------------------------------

Analysis for applying patches has completed successfully:

Host:rac01
RAC Home:/u01/app/oracle/product/19.0.0.0/db_1
Version:19.0.0.0.0


==Following patches were SKIPPED:

Patch: /tmp/32545008/32576499
Reason: This patch is not applicable to this specified target type - "rac_database"

Patch: /tmp/32545008/32585572
Reason: This patch is not applicable to this specified target type - "rac_database"

Patch: /tmp/32545008/32584670
Reason: This patch is not applicable to this specified target type - "rac_database"


==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /tmp/32545008/32579761
Log: /u01/app/oracle/product/19.0.0.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_20-16-12PM_1.log

Patch: /tmp/32545008/32545013
Log: /u01/app/oracle/product/19.0.0.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2021-06-30_20-16-12PM_1.log



OPatchauto session completed at Wed Jun 30 20:17:37 2021
Time taken to complete the session 1 minute, 53 seconds

Leave a Reply

Scroll to Top

Discover more from Blog do Dibiei

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

Continue reading