Re: RPM - Preventing uninstall and file conflicts.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 14, 2007 at 11:22:57AM -0800, Hajducko, Steven wrote:

> I've had to do the test installs with --force, as some of these files (
> /etc/ntp.conf ) are owned by other packages ( ntp ).  NTP actually isn't
> too much of an issue and could be repackaged, but other RPMS such as
> 'setup', a RHEL specific RPM, is not repackagable ( to my knowledge ).

Everything can be repackaged, every RHEL rpm has a src.rpm (except for
some in the supplementary - proprietary - channel), but that's a lot of
work and a bad idea to do.

> So should I just continue to install our new config RPMs with --force or
> does someone else have some advice on how to properly solve this?

There is a simple and elegant way to do this: use trigger scripts.

Basic idea:

*  Your localconfig rpm contains config file in an own directory,
   say /usr/local/lib/config.  E.g., /usr/local/lib/config/ntp.conf
   can be a file in that package.

*  Your localconfig rpm contains a trigger script for every package
   of which you want to manage config files yourself.  The ntp example:

   %triggerin -- ntp
   cat /usr/local/lib/config/ntp.conf > /etc/ntp.conf
   service ntpd condrestart

   (note that I'm using cat i.s.o cp to be sure to preserve modes etc.)

*  You can also do simple editting (sed -i -e ...) on config files, so
   that you don't need to include complete config files in your
   package.  Or call some functions or Perl scripts that you include
   in your package.  The variations are unlimited...

*  You can make a localconfig per "class" of system (if you have some
   system categories).

*  With adding "Requires" and "Obsoletes" lines (be carefull with the
   last...) you can let extra packages be installed or removed for that
   class of systems by just providing a new version of localconfig in
   a local yum repo, that is automatically picked up with yum.

This is my "network-wide system management by RPM" guide in short ;-).

> The other issue that I have is that our config RPM really has no one
> depending on it, so in truth, it could be uninstalled accidentally,
> which would result in a system without some very important files.  The

Well, if you "accidentally" remove the kernel or so, you're in trouble
too :-).  But in my example, accidentally removing the localconfig
package would just disable the scripts that update the config files
after package installs/updates, so everything keeps running.

> Any suggestions on this would also be welcome.

Hope the above gives some hints...

-- 
--    Jos Vos <jos@xxxxxx>
--    X/OS Experts in Open Systems BV   |   Phone: +31 20 6938364
--    Amsterdam, The Netherlands        |     Fax: +31 20 6948204

_______________________________________________
Rpm-list mailing list
Rpm-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/rpm-list

[Index of Archives]     [RPM Ecosystem]     [Linux Kernel]     [Red Hat Install]     [PAM]     [Red Hat Watch]     [Red Hat Development]     [Red Hat]     [Gimp]     [Yosemite News]     [IETF Discussion]

  Powered by Linux