Troubleshooting Software Package Symbolic Link Problems
In previous Solaris releases, there was no way to specify a symbolic link
target in the pkgmap file when creating a software package. This meant a
package or patch-related symbolic link was always followed to the source of
the symbolic link rather than to the target of the symbolic link when
a package was added with the pkgadd command. This created problems when upgrading
a package or a patch package that needed to change a symbolic link
target destination to something else.
Now, the default behavior is that if a package needs to change
the target of a symbolic link to something else, the target of the
symbolic link and not the source of the symbolic link is inspected by
the pkgadd command.
Unfortunately, this means that some packages may or may not conform to the
new pkgadd behavior.
The PKG_NONABI_SYMLINKS environment variable might help you transition between the old and new
pkgadd symbolic link behaviors. If this environment variable is set to true, pkgadd
follows the source of the symbolic link.
Setting this variable enables a non-conforming package to revert to the old behavior
if set by the administrator before adding a package with the pkgadd command.
The new pkgadd symbolic link behavior might cause an existing package to fail
when added with the pkgadd command. You might see the following error message
in this situation:
unable to create symbolic link to <path>
If a package doesn't install due to this problem, do the following:
If this is a Sun-supplied package, call the Resolution Center and report the non-conforming package name.
Set the PKG_NONABI_SYMLINKS environment variable and try adding the package with the pkgadd command again.
# PKG_NONABI_SYMLINKS=true
# export PKG_NONABI_SYMLINKS
# pkgadd pkg-name