Antonio,
Here are some points for discussion based on some of the design goals that
Matt C. and have which motivate Trinux development. I you knew me face to
face, you would know that I welcome ideas that (at least at first) I don't
necesarily agree with. In fact Matt C. and I disagree about a lot of
stuff (both on Trinux and a work) which makes for a better final product.
Disagreement helps clarify what we are trying to do and why.
Anyway, back on the old Trinux web page I listed some design goals that I
tried to follow. These tend to overlap, but I think they are imporantant.
(1) modularity - small independent units which don't cause the whole thing
to break (or be rebuilt) when a single piece changes.
(2) minimal component size - in .06x I've tried to remove as much out the
the initrd as possible so users only need to download/install what they
need
(3) variety of installation modes - users should be able to use/install
Trinux by whatever methods suits them best. This could be floppy based
with network package loading to TrinuxHD from within DOS/Windows or (on
low memory machines) using a loopback filesystem to a bootable CD-ROM. I
want to include as many architectures as possible while keeping the
build/bootstrap process as generic as possible. I think a generic linuxrc
that is fed options through the bootloader (the way that it will be done
in 0.63 and the in the version of TrinuxHD I released several days ago)
(4) maximum configurability - whether through DOS editable configuration
files and startup scripts, users should be able to customize the boot and
install process. Following the UNIX philosphy, ease of configurability is
more important than ease of use or installation.
(5) minimalism - don't included stuff because it is nice only if it is
really necessary. Make users make choices and add packages they need. I
realize I have kind have gone against this with the xdisk floppy images.
For these reasons, I'm opposed to distribution of a monolithic filesystem
with all the packages loaded in. Filesystem images, whether floppies,
initrd's or large loopback fs are a pain to maintain. They must be
mounted and unmounted, synced, etc. To me, this is like enlarging the
initrd when our goal has to cut it to pieces and build new packages for
stuff that was formerly in initrd.gz. I also think choice is important.
Now this stuff can (and *should* be) automated through configuration files
-- basically creating standard configurations that group packages together
so that users don't have to get down to the package level--only what they
want Trinux to do, i.e. intrusion detection, scanning, sniffing, portable
ssh, or whatever...
I see a loopback filesystem that is built possibly only the *first* time
Trinux is run as a useful feature addition. Initially only for a /usr (or
perhaps /usr/X11R6) partition. I see the linuxrc checking for the
presence of the loopback fs and creating it, if it is not there and
mounting it if it is there.
The inherent perishability of the filesystems is an important weakness in
the current Trinux architecture. This does need to be resovled if Trinux
is going to more than a temporary short-lived OS. The problem of floppies
is another issue. Floppies are unreliable. They are old technology.
They will eventually go away. Matt and I were just talking about that
issue the other day.
Don't get me wrong, I'm very interested in the loopback thing. I remember
reading about it in one of the non-Italian posts on the muLinux mailing
list.
BTW, I've been fooling around with trying to get the trinux source base
(which is actually binaries) into CVS format so it is much easier.
Several folks here in San Antonio have volunteered servers. That is
another *serious* problem that has prohibited the expansion in the number
of developers. I appreciate your patience.
I'd be very interested how Trinux users and other potential developers
feel about this issues. Although, the primary reason I work on Trinux is
because I like working on it, making something that is useful for folks
out there is definitely a consideration ;)
-mdf
>
> The point is:
> I have enough free space on my HD, so why to load always things from
> floppy to memory ?
> Standard Trinux is nice in some situation and TrinuxHD is a pretty
> good approach to this, but
> you are only replacing the floppy with the HD.
>
> What I wanted was to boot and "voila", everything is there, no package
> loading, no ramdisk
> filesystems that dissapears on reboot.
> What I've done is a 20 MB loop file mounted as /usr /etc and /var after
> boot. So it is not
> a MiniLinux, but a Small one.
> It boots in less than 30 seconds on my P166, 40MB RAM, 4GB HD.
> It needs only 8MB to run now (12MB if you want X), as no more /usr
> /var, etc ramdisks are
> needed, except for the boot (initrd.gz) which is (and will be)
> deliberately still there.
> So, there is no root fs change (that's why I called it a pseudo-loop
> Trinux)
>
> ***
> What is more interesting is that the loop file can be on a vfat
> (Win95/98), NTFS (read and
> experimental write) or iso9660 (CDROM) filesystem. Yes, a "El Torito"
> bootable CDRom or any
> ReadOnly filesystem should be possible under this version (Not tested).
> ***
>
> It boots using either the loadlin.exe program under plain DOS or a boot
> floppy disk you can
> build with the "mkbootfd.bat" file included.
> Kernel is 2.2.11 compiled with PPP, IDE and SCSI support (only
> ADAPTEC). But you can load
> any module at boot time in the boot floppy to later mount the
> filesystem with the loop file.
>
> Yoy'll find there PCMCIA, international keyboard mappings, NIC modules,
> X11 with fvwm window
> manager, every tool under 0.62 distribution and more new, some unix
> commands previously
> not included (sed, diff, sort,...), the nice netconfig tool from 0.51,
> a simple config tool,
> server applications (inetd (ftp,telnet), web server "sws", cron,
> syslog), pppd, vlock and more.
> (The mouse works in X11 and Ctl+C works in console)
>
> This "thing" needs 21 MB on HD (or 20 MB, if only the loop file is
> there and is booted
> from floppy).
> The .zip installation file is over 8MB.
> The installation procedure can't be easier:
> Unzip the file in the /trinuxhd directory of any disk.
> That's it!
> Running the trinux.bat file should boot Trinux. A hard work is done to
> detect the device where
> Trinux is. You can point it directly passing a parameter
> "trinuxdev=device" to kernel. You can
> also let the boot procedure to search for it and if it is not found you
> are asked where is it.
>
> Another parameter you can pass to kernel is "modfloppy" which tell
> linuxrc to open a "modules"
> file on the floppy disk and load from there the modules specified. Much
> like in 0.51 version.
>
> After boot, if no loop file is found, you still have a minimal Linux
> session.
>
> THE HARD PART:
> - I'm about to finish, but still it is not. (very very usable right
> now, anyway).
> (Just some more testing, finishing the "config" script and NTOP which
> want not compile.)
> - A name is needed to this as TrinuxHD is other thing. (Trinux+,
> STrinux, LoopTrinux, ??? )
> - I need a place to publish it,z if someone is interested on it, as I
> have nowhere to upload an
> 8MB file.
>
> As usual I'll love someone to try it and to hear comments to this. In
> fact, It can be GPL (of course) and "emailware"
> which means that if anyone use it, I want to read his opinion (even
> anonymously) about it.
>
> Best Regards.
>
------------------------------------------------------------------------------------
www.trinux.org hosted by The Vnode Connector Services
www.vnode.com *** Special Discounts For Trinux Users
*** Email [EMAIL PROTECTED]
------------------------------------------------------------------------------------