Impact/managemnt of Solaris Patch Bundles to Cups (Ticket100711A)

Helge Blischke h.blischke at acm.org
Tue Nov 1 03:29:16 PDT 2011


ed smith wrote:

>> ed smith wrote:
>>
>> > Greetings,
>> >
>> > What is your method for management of OS patches to Unix environments?
>> > Whenever we apply patch bundles to our Solaris 10 systems, they often
>> > times overlay the various CUPS utilities with native Solaris versions-
>> > (lp, lpstat, cancel, enable, etc ) or change the links. The man pages
>> > get stomped on as well. I currently manually repair this, using
>> > detailed reference info. However, this is cumbersome. We have 200+
>> > production printers around the country, so impact is great if I miss
>> > something. Surely others are faced with this same issue. What are the
>> > "best practices" today?
>> >
>> > Thanks!
>> > Ed Smith McQuay
>>
>> Well, what I did all the time I was responsible for Solaris boxes (2.52
>> up to 11) I firstly installed CUPS (and other things not native to
>> Solaris) in a directory tree residing beneath /usr/local or /opt and
>> secondly made a Perl script to fix the remaining issues after installing
>> Solaris updates/patches.
>>
>> Helge
>>
> Greetings,
> 
> Thanks for the idea Helge, I am creating a quick-ref repository, but not a
> full install. This next question might be a Michael Sweet question, not
> sure. So far, from CUPS perspective, the dirs that I find impacted by
> Solaris patching are /usr/bin, /usr/sbin and /usr/share/man/man1, man1m,
> man5, and man7, most of which is core lp commands. I know cups keeps stuff
> in other directories, but these dont appear to get stomped on by Solaris
> patch bundles - as most of the other cups components are named or pathed
> in such a way that they don't overlap with Solaris print components, so
> they don't get overlayed. My question is- have I missed anything else ?
> 
> Thanks,
> Ed Smith   McQuay

Ed,

I wouldn't think too much about compatibility with the Solaris package 
management.
Instead, I'd compile CUPS from the sources, setting the proper directory 
prefix when calling the configure script (which is the very first step), 
e.g. "--prefix=/usr/local" and then install.
That installs all the cups related commands in
/usr/local/sbin   (for the administrative commands)
and
/usr/local/bin (for the rest)
and installs the libraries in 
/usr/local/lib .

Then you must deactivate the services related to sysv printing, especially 
the ipp_listener service (on Solaris >= 10, use "svcs | grep ipp" to find it 
and then "svcadm disable xxxx" where xxxx is the tag of the service from the 
previous command; you may try to use an abbreviation).

Then I'd edit the default search path and put /usr/local/bin and, for root 
account, /usr/local/sbin, in fromt of /usr/bin and /usr/sbin.

This way e.g. a call of lp always will find /usr/local/lp etc., so you need 
not worry about Solaris patches in the future nor packages from 
sunfreeware.com (as those are installed in /usr/sfw and its descendants).

Helge

PS: that is what I did when I was actively maintaining a Sparc Solaris 
server machine up to and including Solaris 10.
Currently, I have an openSolaris 10 and, as that isn't maintained any more, 
a fairly recent openIndiana on a virtual machine (x86, of course, no Sparc).





More information about the cups mailing list