patchadd error

Greetings All-

I ran into this problem today and was curious if anyone else had seen it.

I am attempting to add patch 137402-02 on a v890 running Sol9.

Here's the error I get:

#> patchadd 137402-02

Checking installed patches...
Verifying sufficient filesystem capacity (dry run method)...

Patch 137402-02 failed to install due to a failure produced by pkgadd.

See /var/sadm/patch/137402-02/log for details

Patchadd is terminating.

Checking the specified log file I get:

# cat /var/sadm/patch/137402-02/log

This appears to be an attempt to install the same architecture and
version of a package which is already installed. This installation
will attempt to overwrite this package.

/export/home/hed0431/137402-02/SUNWsadmi/install/checkinstall: /export/home/hed0 431/137402-02/SUNWsadmi/install/checkinstall: cannot open
pkgadd: ERROR: checkinstall script did not complete successfully
Dryrun complete.
No changes were made to the system.

The special instructions for this patch require taking the system to Single user mode:

# who -r
. run-level S Aug 13 11:57 S 1 3

Has anyone seen this before? Anyone? Bueller? :confused:

I've not seen this error, but one thing that comes to mind immediately is to do a "showrev -p | grep 137402" and see if that version or newer is already there.

rhfrommn-

Thanks for the reply. I tried that and the patch does not exist on the system. This patch upgrades (replaces?) the SUNWsadmi pkg.

I had thought of running 'pkgrm SUNWsadmi' and then running the patchadd again, but I don't think that will work either. :frowning:

Another guess, it looks like maybe patchadd isn't finding the files correctly. I believe patchadd expects them in a certain place, but your output makes it look like the patch is in your home directory (?) Check the manpage to see how to specify where to get the patches from. Maybe go to the directory you have it in and do "patchadd -d . 137402-02" or similar. Or try giving the full pathname instead of going to the directory and using the ".".

try using the full path such as /var/spool/pkg/137402-02

copy the patch to /var/tmp dir
cd /var/tmp
patchadd -d .

I moved the patch to /var/spool/patch and ran:

# patchadd /var/spool/patch/137402-02

Kinda weird though, I've alway been able to install a patch from anywhere on a system.

Thanks to all who responded!!

you don't have to place it in /var/spool/patch but i was trying to point out to use the full path.

i've seen it where patchadd -d . won't work. it was always solved with full path to patch file.