Kevin Day wrote:

Does anyone have a tree of all files installed as part of the HLFS
base?

Pretty simple trick here (aside from the major libraries/programs, which
may need tweaks) Just...

Yup. I know *how* to do it, I just don't have a system on which to run it. At the rate at which I'm compiling (based on available time, mostly), it'll be a few days.

Also, if anyone has a recommendation for a particularly good
reference towards building really minimal systems

This is something I have been tossing around for some time.  What is a
minimal system?

So here is my definition: It boots.  That's it!
uClibc/glibc, some shell: ash, bash, possibly non-interactive (or at
least not fully interactive) shells such as tcsh (sysvinit or similar
for a more friendly boot)

I agree, after inference from the above. It's not enough that the system boots, you also need (I assert) root to be able to log in, which implies a shell and perhaps a few other things (perhaps a home dir for root, with perhaps a .bash_profile in it, etc).

From there, you figure out what you want to do with that system.  Get
those files, and only those files.  Then fullfill their dependencies.
And that would be my definition of a useful minimal system.

You also mention not using compilers/interpreters.  You can build all
of your final compilers for building your system in some other
location. (say /usr/toolchain under my systems)  There you can still
use the system libraries or remove them at little costs.  Every need a
new package, just put your backed up compilers there, compile, and then
remove them.

Yeah, that's pretty much what I'm doing. My final vision is to have several really stripped-down HLFS systems, each running a small set of related services (ie, one running qmail, imapd, etc, a different one for httpd perhaps), each in it's own VMware vm.

To get there, I'm building the stock HLFS system, which I'll use as a template. The trick is knowing which of that stuff needs to move over to the stripped down systems. I know how to do that for the services (ie, qmail), but I'm less confident that I know which of the bae HLFS material needs to move over.

For example, I really don't want a compiler in any of the vm's that are providing externally visible services. Don't need 'em there, and it adds risk. The same (generally) for Perl. Make doesn't seem "dangerous", but why have it if you don't need it? Etc.

It seems that I can get pretty close to "eyeballing it", by reading the comments in the HLFS install pages and judicious use of ldd. Also, there seems to be some useful content (a little wheat among much chaff) in the Linux Standard Base specs. But I hate to resort to trial and error for what should be deducible from "first principles".

There are several anecdotes and a HOWTO or two on the subject, I'll slog through them and see if there isn't some better way already published.

-jps
--
http://linuxfromscratch.org/mailman/listinfo/hlfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to