Sysinstall - why two different programs in 5.3 RELEASE?
Jay O'Brien
jayobrien at att.net
Tue Nov 23 11:31:22 PST 2004
Kevin,
Thanks for adding the historical view to the answer. Wow. All
I wanted to do was learn enough about FreeBSD to run a web
server and host mailing lists. Instead, I find myself immersed
in an interesting and challenging new culture with knowledgeable
mentors.
Unfortunately, given my engineering background (I retired in
1985), I have to know "why"; I'm not satisfied with "just do it
and don't ask". As a result, this isn't going to be as simple
as I thought!
Regards,
Jay
Kevin D. Kinsey, DaleCo, S.P. wrote:
> Jay O'Brien wrote:
>
>
>>Why are there two versions of sysinstall, one five times the
>>size of the other, and what are the differences between them
>>other than file size and time?
>>
>>Jay O'Brien
>>Rio Linda, California, USA
>>
>>
>
>
> Sorry I'm late on this ... you've got a good technical
> answer already; I thought maybe I could add more
> detail; there is, apparently, a more or less historical
> reason, as well as the practical one. The practical
> one: it's a Good Thing(tm) to have sysinstall(8) in
> /stand/ (on the root partition) where you can get at it
> in the event /usr is unavailable. Indeed, it pretty
> much *has* to be under / to install the system....
>
> History wise, sysinstall started out 10 years ago
> in /sbin. Looks as if Poul-Henning-Kamp and either
> Bill Paul (or Paul Traina?) did the work. From the
> oldest dusty attic:
>
> http://www.freebsd.org/cgi/cvsweb.cgi/src/sbin/sysinstall/Attic/
>
> Then, for 2.0, Jordan Hubbard "birthed the monster"
> that, I guess, is still sysinstall today ... although it's
> morphed so many times, it's probably not recognizable
> as the same beast any longer[?] {Basically, how could I
> know, as a relative newb with Neandertal C skills?}
> For a long time afterwards, sysinstall lived in
> /usr/src/release:
>
> http://www.freebsd.org/cgi/cvsweb.cgi/src/release/sysinstall/Attic/
>
> Both of these sysinstalls, near as I can tell, built their
> binary(ies) into /stand/, but nowhere else.
>
> Now, sysinstall doesn't inhabit "userland", per se.
> AFAIK /usr/src/release doesn't get rebuilt during
> a "make world" cycle; furthermore, though slightly
> less relevant, /stand/ isn't in $PATH --- if you try
> "whereis sysinstall" on a 4.X box:
>
> #whereis sysinstall
> sysinstall: /usr/share/man/man8/sysinstall.8.gz
>
> Perhaps I'm reading history wrongly, but it seems the
> Project wanted to DTRT and make sure that if an
> updated manpage was installed for sysinstall, the
> updated binary was, also. To have the manpage
> say something the binary can't/won't do violates
> the POLA, something the Project is exceptionally
> loath to do in almost every situation ....
>
> So, the bikeshed got painted again: sysinstall
> was moved to /usr/sbin, where it would be
> rebuilt when the system was updated. Prior to
> that time (Jan. 2001), you had to go to
> /usr/src/release/sysinstall and "make all install" to
> update the binary under /stand/ --- leading to a
> situation where you might have, say, 4.2 installed,
> but have a sysinstall binary left over from 3.0 or
> something, and it wasn't very useful. Furthermore,
> you can still have a similar situation in 4.X, because
> the change was never MFC'd to -STABLE, and therefore
> hasn't appeared until 5.X; (Hmm, will this become a FAQ?)
> Note I didn't say "same problem", but "same situation";
> I don't personally know if any additional work on
> sysinstall during the 4.X's reign as production
> release would have rendered an older version
> obsolete or not. I'm tempted to say it hasn't much,
> because the "libh" project was supposed to complete
> reimplement the installer, and I think the old
> monster had been more/less left to hide in his
> cave and blow smoke at passers-by (complaining
> about the installer *IS* a FAQ)....
>
> You can find the discussion about the change at:
>
> http://docs.freebsd.org/mail/archive/2001/freebsd-current/20010114.freebsd-current.html
>
> The second "sysinstall" thread ("sysinstall.8 breaking buildworld") kind
> of shows how it got hashed out amongst the committers, and has some
> other factoids that I found educational. I hope my penchant for historical
> digression hasn't annoyed you, and welcome corrections to what I've
> presented as facts (though we needn't be pedantic, IMHO)
>
> Kevin Kinsey
More information about the freebsd-questions
mailing list