Se si estrae il contenuto di una patch firmata nella stessa directory in cui si trova la patch, quest'ultima non può essere installata con il comando /usr/sbin/patchadd. La patch firmata viene invece installata eseguendo /usr/sbin/patchadd ./id_patch. La patch estratta non firmata viene ignorata.
In alcuni casi vengono visualizzati i seguenti messaggi di errore:
Verifying signed patch patchid... ERROR: Unable to open keystore /var/sadm/security/patchadd /truststore for reading ERROR: Unable to lock keystore /var/sadm/security for exclusive access Signature invalid on signed patch id_patch. Patchadd is terminating. |
Soluzione: scegliere una delle soluzioni seguenti:
Estrarre la patch firmata in una directory diversa da quella in cui si trova la patch firmata. Usare il percorso della patch estratta per eseguire il comando /usr/sbin/patchadd.
Dopo aver estratto la patch firmata, ma prima di eseguire il comando /usr/sbin/patchadd, eliminare il file .jar.
Non estrarre la patch firmata. Popolare il keystore del package e installare la patch firmata direttamente. Procedere come segue:
Diventare superutente.
Eseguire i comandi seguenti:
# /usr/bin/mkdir /var/sadm/security |
# /usr/bin/keytool -export -storepass changeit -alias \ gtecybertrustca -keystore usr/java/jre/lib/security/cacerts -file \ /tmp/gte.crt |
# /usr/bin/pkgadm addcert -t -f der /tmp/gte.crt |
Sostituire la password predefinita changeit con la password usata per proteggere il keystore Java.