Using Solaris Package Companion v0.9 to minimize Solaris 10 with zones
By Jerome Blanchet on mai 15, 2009
Last month I have worked for a French bank using 28 whole root zones on one M9000 Solaris 10 domain. At the first installation the size needed to store all zonepath was very big. The time needed to apply patches or upgrade Solaris with LU was too long. So the customer ask us to reduce the size of Solaris by removing all not needed packages.
When we reduce or minimize Solaris Operating System (Solaris OS), it is not permissible to remove any software packages that are found in the smallest Sun-provided installation cluster (SUNWcmreq metacluster). It is also not permit to remove packages if there exist any dependencies on the software package being removed, those dependencies must be addressed and satisfied prior to the removal of the package.
Solaris 10 has now 2164 packages grouped in 188 Clusters and 7 metaclusters. When we want to remove packages or clusters from Solaris we have to know the dependencies and reverse dependencies between packages or clusters. We may also need to know the package list of one given cluster or Metacluster or need to know in which cluster is one given package or... This informations are available in solaris metadata packages files but are not very easy to read.
Glenn Brunette has developed great tool call Solaris Package Companion available at opensolaris used to answer every questions we need to minimize Solaris. With this tools we where able to securely remove this cluster list and this packages list and the size of Solaris 10 (SUNWCuser) was no more than 1.2 Gbytes on M9000 server.