[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Windows multiboot (aaargh!)



on Mon, Sep 15, 2003 at 10:27:51PM +1200, cr (cr@orcon.net.nz) wrote:
> On Monday 15 September 2003 18:52, Karsten M. Self wrote:
> > on Sun, Sep 14, 2003 at 09:23:47PM +1200, cr (cr@orcon.net.nz) wrote:
> > > It'd be nice to have a self-contained floppy with just the basic
> > > componenets needed to boot a Linux system, so there's room to add a
> > > few utilties of ones choice.    I've done that with my DOS floppy.
> > > But reading the HOWTOs, it seems that creating a Linux boot disk is a
> > > rather more complex procedure.
> >
> > Trinux aims in this general direction.  The basic boot system is 2-3
> > floppies, with the 2nd and later disks being used to add additional
> > utilities to the system.
> >
> > Of course, if you start with a chroot install, you can use debootstrap
> > and add as many Debian utilities as you want ;-)
> >
> > For most of us, a bootable CDROM is a more viable option.  I don't know
> > if USB pen drives are bootable, but with 120-256 MiB RAM, these would be
> > sufficiently large to be quite useable systems.  One issue here is the
> > number of read-write cycles the systems allow.
> 
> What I was thinking of, solely for the purposes of quick swapping
> between DOS and Linux, was a floppy with an absolutely minimal kernel
> on it, to which I could add the one app I really wanted - cfdisk -
> just to tweak the partition types.    As it is, RIP boots reasonably
> quickly and has fdisk which will do.

There's a serious difference between GNU/Linux and DOS on size here.

For DOS, you need the "kernel" (command.com) and statically linked
executables.  This combination is tiny, and you can pack a pretty
impressive array of tools onto a single floppy disk.

For GNU/Linux, you need:

  - The kernel.
  - Standard libraries (/lib). 
  - init
  - control files (/etc)
  - Kernel modules
  - A shell
  - Binaries (/bin, /sbin)

By the time you get to all of this, it's hard to pack it all onto a
single 1.4 MiB floppy.  In fact, Tom's Root Boot doesn't fit on a 1.4
MiB disk, it formats the floppy to 1.7 MiB.  Even then, it's using
stripped versions of many utilities, and busybox (a sort of all-in-one
utility application), a stripped-down shell (ash), and other tricks.
And its still a pretty minimal system.  But it works and it's useful.

Again, a floppy is a bit thin for what you have in mind.  I'd strongly
recommend using the LNX-BBC (shell out to the EFF for one, and do a good
deed as well as a favor for yourself).

Note too that there are utilities to create bootable disks
(hrm...thought there was one for floppies, but there's at least bootcd),
so you can probably do what you want.  And, again, TRB *is* fully
customizeable.

> > > I guess the workaround is to use one of the pre-made disks like
> > > tomsrtbt, and just put my own utilities on a floppy that I can
> > > mount afterwards.   At least, unlike DOS-booted-from-a-floppy, I
> > > imagine the Linux rescue systems don't constantly nag you to
> > > "Insert disk with COMMAND.COM in Drive A:" or whatever the Linux
> > > equivalent would be   ;)
> >
> > No, you won't be prompted to insert disks, most (all, AFAIK) run in
> > RAMdisks.  Running live from floppy is simply too slow.
> 
> Also of course, the images on all the rescue disks are much compressed and 
> unpack into far more space in the RAMdisk.   DOS being a much smaller and 
> more limited OS, can easily be fitted onto a boot floppy.
> 
> But because of that, the disks are full and I can't add anything else to 
> them.   

<sigh>

I guess I don't expect anyone to atually research stuff before they make
statements like this anymore....

    http://www.toms.net/rb/tomsrtbt.FAQ

    7) Customizing

    If you have problems, try doing it under tomsrtbt instead
    of on your own system. I test and support it under itself!

    To customize startup, edit settings.s and rc.custom.gz on the floppy.
    Of course you have to "gzip -d" rc.custom.gz to edit it.
    Use /dev/fd0u1722 to mount it, /dev/fd0 or /dev/fd0H1440 will not work.
    Typical uses: insmod, ifconfig, route, resolv.conf, hosts, mount, etc.

    For full customization, such as, anything,

            (Be logged somewhere with 10+ meg of (non-FAT) filesystem space)

            ./unpack.s 	# unbuilds it into <name>.unpacked
                                    # do what thou wilt
            ./buildit.s	# rebuilds out of 1, 2 directories

    NOTE:	You need space to DO the customizations. Rc.custom.gz can be
            unpacked into /tmp, edited, gzipped, copied back. Buildit.s
            needs drive space. If you only have FAT, use the loop device.

    When customizing, edit the settings.s under "1/", not other copies.

    If you get "not found" errors when running programs, you are using
    the wrong libc.  There are many ways to make programs for tomsrtbt:

            (1)	You can compile with and link against libc5.
                    There are libc5 packages for Debian and RedHat.

            (2)	You can do a static link with "-static -s".

            (3)	You can put libc.so.6 on tomsrtbt along with your program.

            (4)	You can rewrite the program in Lua.

            (5) You can rewrite the program in BAL.


Peace.

-- 
Karsten M. Self <kmself@ix.netcom.com>        http://kmself.home.netcom.com/
 What Part of "Gestalt" don't you understand?
    Defeat EU Software Patents!                         http://swpat.ffii.org/

Attachment: pgp2C8ibKkrK9.pgp
Description: PGP signature


Reply to: