Subject: Re: /rescue, crunchgen'ed?
To: Lennart Augustsson <lennart@augustsson.net>
From: Richard Earnshaw <rearnsha@arm.com>
List: current-users
Date: 08/30/2002 13:13:58
> tld wrote:
> 
> > Something I wondered and now I'm going to ask:
> >
> > If, as it seems, for some perople the fact that a crunchgen'd binary 
> > is less safe because it can be damaged by bad sectors, and you really 
> > don't know if it has until it is time to use that.
> >
> > What I suggest is a script executed (say) weekly like `cat 
> > /rescue/the_big_file >/dev/null 2> /dev/null || echo "It has bad 
> > sectors!"`
> 
> That doesn't really help.  I had a disk crash recently that consisted of 
> a few scattered
> sectors on the disk suddenly being unreadable.  Before this point in 
> time everything
> was fine, but suddenly... BOOM.  And after that, you had to be very 
> careful which
> executables you tried to run.  A crunchgened /rescue would probably have 
> meant
> that I was hosed at that point.  But if you have an old machine you 
> probably have
> a floppy to boot from at that point.

If your bad sector had been in /bin/sh you'd have been equally hosed.  If 
you have a probability N of a bad sector on a disk and P sectors of 
'critical' code needed for recovery with statically linked executables and 
Q sectors of 'critical' code with a crunchgened executable, then the 
probabilities of the bad sector lying in your critical code are P*N and 
Q*N respectively.

Given that practically everything in /bin and /sbin could be considered 
critical for some problem, you are clearly better off if Q < P.

R.