Subject: Re: Thoughts on more helpful upgrading
To: Paul Hoffman <phoffman@proper.com>
From: Steven M. Bellovin <smb@research.att.com>
List: netbsd-users
Date: 01/16/2001 22:35:33
In message <p05010415b68ac0c2c098@[165.227.249.17]>, Paul Hoffman writes:
>At 10:24 PM -0500 1/16/01, Steven M. Bellovin wrote:
>>  >2) Additional files
>>>
>>>If the /etc.old has some files that do not exist in the fresh /etc,
>>>they should be copied to /etc. That is, there seems no reason not to
>>>keep around files that have been put in /etc by the user that we are
>>>sure won't affect the new boot. This certainly means ifconfig.* and
>>>conf files of programs that are not booted automatically.
>>
>>You have to be careful about this one.  You're clearly right about
>>ifconfig.*, but what about things affected by, say, the new rc
>>structure?
>
>But, if they are affected by the new rc structure, copying old files 
>that do not exist in the fresh /etc shouldn't affect anything, right? 
>(Maybe?)

There are two issues here.  First, there's the problem of cleaning up
the dregs of earlier releases -- you don't want them to propagate
indefinitely into the future.  Second, the user needs to be alerted
to the semantic change -- that is, he or she needs to know to create
a subfile in rc.d or the like.
>
>>   What about user-created changes to printcap?
>
>Different story. I'm not proposing that modified files should be 
>automatically copied: I fully agree with the /etc.old structure for 
>those. I'm only talking about files that don't exist in the fresh 
>/etc.

I realize that.  I also suggest that some changes are easily merged.
You might run into that with the passwd file.  Suppose that 1.6 has
two different styles of hashed password -- it might be easy enough to
convert the current password file to the new format.
>
>>Second, given that /etc isn't that large, I
>>suggest that there be a shadow copy put in at installation, never to be
>>touched by the user; its purpose is to provide something for the
>>installer to compare against.
>
>If there is enough room, /etc.fresh or /usr/etc.fresh sounds like a 
>very good idea. Mabye even make all the permissions r--r--r--.
>
I was thinking /etc/.etc but I'm not religious about that.  And yes, 
definitely make the files unwritable.  (And if space is an issue, make
it /etc/.etc.tgz, which is copied into a RAM file system at 
installation time.)

		--Steve Bellovin, http://www.research.att.com/~smb