RE: LxA - linux appliances
--- firstname.lastname@example.org wrote:
> Why not just use the existing Linux Router Project as a starting
> point? <http://www.linuxrouter.org>
I looked at a number of the mini Linux distributions before doing
this, among them:
The reasons I chose to take a different course were:
1. These are all 'full' distributions in the sense that they
include things like text editors, inetd, ssh, telnet clients,
etc. My purpose was not to build a tiny working Linux system,
but to build single purpose boxes based on the Linux kernel and
as few other binaries as possible. While I could have started
with any one of these and stripped them down, I decided to
start with nothing and build up to the desired functionality.
The systems I wound up with have many fewer files than most
of the mini distributions and are therefore much easier to
understand and to assess in terms of security.
2. Most all of these are either based on aging versions of the
kernel (2.0 series), require special patches or recompiles of
lots of stuff to fit on the floppy, and/or require things to
be recompiled against older libraries like libc5. I wanted to
build systems with what I had at hand, which was a Debian
slink system with a 2.2 kernel and glibc 2.1.
3. Most of these systems have some sort of custom packaging
system that you have to pack things into so it can be unpacked
and installed at boot time. While this is good and flexible,
I just wanted something simpler (albeit less flexible) which
is to just build the tree for your initrd on your hard drive
and have the whole thing packed in one bundle by a simple
script. I also just didn't feel like learning another packaging
system, although none of them are very complicated and they
are very good for their purpose. My emphasis was on building
new disks easily and very rapidly for new boxes and new services.
4. I wanted to learn more about the UNIX/Linux startup process
and get a more thorough understanding of exactly what each file
does and when it does it. I also documented extensively the
tools and techniques I used in figuring out what pieces to put
on the mini system to get things running. I hope that the docs
I have written to go along with this are as valuable as the
reference implementation itself which I provide.
I don't pretend my approach will work well or even at all for
all purposes, but I do think it has distinct advantages for
Do You Yahoo!?
Thousands of Stores. Millions of Products. All in one place.
Yahoo! Shopping: http://shopping.yahoo.com