SCIENTIFIC-LINUX-USERS Archives

June 2007

SCIENTIFIC-LINUX-USERS@LISTSERV.FNAL.GOV

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Jon Peatfield <[log in to unmask]>
Reply To:
Jon Peatfield <[log in to unmask]>
Date:
Sat, 23 Jun 2007 01:24:06 +0100
Content-Type:
TEXT/PLAIN
Parts/Attachments:
TEXT/PLAIN (50 lines)
On Fri, 22 Jun 2007, Keith Lofstrom wrote:

> There is a program called "prelink" that works with the program loader
> to rewrite the symbol tables in libraries and executables for faster
> loading.  It is turned on by default in Red Hat derived systems like
> Scientific Linux.
>
> Yikes!
>
> I do disk-to-disk backups with dirvish/rsync (I like dirvish so much,
> I host www.dirvish.org  ;-)  )  and have started doing file integrity
> monitoring with osiris.  It appears that "prelink" changes the
> binaries and libaries while leaving ctime/mtime at previous values.
>
> Just like a virus does, so prelink sets off all sorts of alarms.
> Sorry, I would rather have slow, stable and safe instead of fast
> and fragile, so bye-bye prelink .

In my (possibly badly distorted) view if prelinking give you anything then 
any service using a prelinked binary or dynamically linked library should 
be re-started after each prelink change.

After all the default prelink settings re-write the elf data every ~2 
weeks but I expect machines to be up for far longer than that...

Also note that a freshly installed machine won't yet have any prelinked 
stuff until the cron runs and mostly won't be *using* the prelinked 
versions of files 'til the next reboot after that.

I'm currently running SL4x servers with prelink disabled and have it 
turned off for the handful of 'test' SL5 Desktop machines we have - but I 
might re-think things before we roll that out generally...

> I plan to remove /etc/cron.daily/prelink,  revert my binaries and
> libraries with "prelink -au", then comment out all the "-l" lines
> in /etc/prelink.conf so that the loader doesn't attempt to do it.

To turn off prelink just set PRELINKING=no in /etc/sysconfig/prelink and 
the next time the cron-job is run (from cron or by hand) it will *undo* 
all the prelink changes.

> Then I will rebuild my backups, and reinitialize osiris.
>
> Any flaws in my thinking?

I like stability too.  Isn't it a pity that this magic can't be done 
without altering files' contents!

  -- Jon

ATOM RSS1 RSS2