Upgrading DCE 3.1 to DCE 3.2 on Solaris
The basic procedure to upgrade from DCE 3.1 to DCE 3.2 on Solaris is to use the dcesetup upgrade_uninstall command to back up your DCE config files and remove DCE 3.1, then use dcesetup upgrade_install to install DCE 3.2 and restore the config files. If you have mounted the DCE 3.2 CD as /cdrom, and assuming that you want to store the backups of the config files in a directory named /dceBackup, the steps would be as follows:
mkdir /dceBackup /cdrom/dcesetup upgrade_uninstall -backdir /dceBackup /cdrom/dcesetup upgrade_install -backdir /dceBackup -dir /cdrom/dce3.2
The upgrade_uninstall command will stop DCE if it's currently running, while upgrade_install will restart DCE.
This works properly if you have no software packages that depend on DCE. However, if you have packages that depend on one of the DCE packages, you will have trouble with the dcesetup upgrade_uninstall step.
Specifically, suppose you have DFS 3.1 installed. The DFS client package (IDFSclnt) depends on the DCE client package (IDCEclnt); this dependency will cause dcesetup upgrade_uninstall to fail with messages like the following:
Uninstalling client ## Uninstalling DCE Client Services Package (IDCEclnt) ## WARNING: The <IDFSclnt> package depends on the package currently being removed. Removal of <IDCEclnt> was suspended (interaction required). No changes were made to the system.
The only harm caused by this is that the IDCEclnt package will not be uninstalled; you must remove it manually via this command:
This effectively finishes the dcesetup upgrade_uninstall work.
The above applies if you have any software packages which depend on DCE. If you have DFS, then there's an additional problem. (Sorry!) The second, DFS-specific, problem, is that the dcesetup upgrade_install step will damage some DFS symbolic links, which will prevent DFS from starting after the dcesetup upgrade_install. When you try to start DFS after the upgrade, you'll get messages like this:
Gathering current configuration information... 0x113159fe: Could not determine which components need to be started. 0x113159fb: Start did not complete successfully. More information can be found in the configuration log: /opt/dcelocal/etc/cfgdce.log.
If you have DFS, then you must repair these symbolic links yourself, like this:
rm /usr/lib/libcfgdfs.so* /usr/ccs/lib/libcfgdfs.so* ln -s /opt/dcelocal/lib/libcfgdfs.so /usr/lib/libcfgdfs.so ln -s /opt/dcelocal/lib/libcfgdfs.so /usr/ccs/lib/libcfgdfs.so ln -s /opt/dcelocal/lib/libcfgdfs.so.1 /usr/lib/libcfgdfs.so.1 ln -s /opt/dcelocal/lib/libcfgdfs.so.1 /usr/ccs/lib/libcfgdfs.so.1