Contents:

1) tomsrtbt is
2) Design goals
3) Contents
4) Linux installation
5) DOS installation
6) Customizing
7) Support
8) Tips
9) Copyright
10) ChangeLog
11) ToDo


1) tomsrtbt is

	"The most Linux on one floppy disk" for:

		rescue recovery panic & emergencies

		tools to keep in your shirt pockets

		whenever you can't use a hard drive


2) Design goals

	as much stuff as possible on 1 floppy disk

	keep it self contained, build under itself

	try to make it behave like a normal system

	rescue and recovery functions get priority


3) Contents

 Stuff (modules, manpages, scripts, binaries, kernel):

2.0.36 3c589_cs BusLogic CVF DEC_ELCP EEXPRESS EEXPRESS_PRO
EL2 EL3 EXT2 FAT FAT32 FD IBMTR IDE IDECD IDEFLOPPY IDEPCMCIA
IDETAPE ISO9660 JOLIET LOOP MATH_EMULATION MINIX MSDOS
NE2000 NFS PROC RAM SD SERIAL SLIP SMC SR TR ULTRA VFAT
VORTEX WD80x3 ah152x_cs aha152x aha1542 aic7xxx ash awk
badblocks bdflush bzip2 cardbus cardmgr cat ce ce.help chattr
chgrp chmod chown chroot clear cmp cp cpio cut date dd ddate
debugfs df dirname dmesg dmsdos ds du dumpe2fs dutil e2fsck
eata echo egrep elvis emacs extend false fdflush fdformat
fdisk fdomain filesize find fmt fsck.ext2 fsck.msdos fstab
grep gzip halt head hexedit hostname i82365 ifconfig ifport
ile init inittab insmod kill killall5 ksyms length less
libc.so.5.4.13 lilo lilo.conf ln loadkeys login losetup ls
lsattr mawk memtest mingetty miterm mkdir mkdosfs mke2fs
mkfifo mkfs.minix mklost+found mknod mkswap mnsed more mount
mt mv nc ncr53c8xx nmclan_cs ntfs pax pcmcia pcmcia_core
pcnet_cs ping plip ppa printf ps pwd qlogic_cs qlogicfas
reboot reset rm rmdir rmmod route rsh rshd script scsi_info
seagate sed serial_cs setserial sh slattach sleep slip snarf
sort split stty swapoff swapon sync tail tar tcic tee telnet
test touch tune2fs umount update vi vi.help wc

 Linux package

buildit.s		build
clone.s			duplicate
fdflush			flush floppy cache
fdformat		format floppy 1.7M
install.s		install
settings.s		used by build
tomsrtbt.FAQ		documentation
tomsrtbt.raw		<== This is it
unpack.s		unpack

 DOS package

initrd.img		installer image
install.bat		install it
loadlin.exe		starts linux from DOS
tomsrtbt.FAQ		documentation
zimage			installer kernel


4) Linux installation

a) extract the .tar.gz archive
b) Be root
c) Be in the tomsrtbt-<version> directory
d) Have a blank floppy with no bad sectors
e) Do './install.s'

The script assumes you have ELF and that your 3.5" 1.44M floppy is on fd0.

Virtually all 1.44 drives support 1.722 just fine, but it is possible for
an extended format to break a floppy drive, use tomsrtbt at your own risk.
The install does mknod to make /dev/fd0u1722 if you don't have it already.

If you use libc.so.6 / glibc, you might need something like:
 LD_LIBRARY_PATH=/usr/i486-linux-libc5/lib; ./fdformat /dev/fd0H1722


5) DOS installation

a) Pkunzip it

b) If you are running Windows-95, do "shutdown and restart in msdos mode".
   You have to be in really-DOS mode.  Not a DOS session under Windows-95.

c) CD to the directory you pkunzipped it into.

d) "install".  Follow prompts to create the diskette.

This is for installing tomsrtbt when you don't already have Linux.

If you have tomsrtbt on a floppy, don't use this, and if
you already have Linux, don't use this, use the .tar.gz.


6) 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.
Typical uses: insmod, ifconfig, route, resolv.conf, hosts, mount, etc.

For full customization, such as, anything,

	(Be logged somewhere with 10+ meg of linux filesystem space)

	unpack.s	# unbuilds it into 1/ & 2/
			# do what thou wilt
	buildit.s	# rebuilds it from 1/ & 2/

There is lots of room, delete useless stuff like dmsdos and ce.

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


7) Support

	Start at the homepage at http://www.toms.net/rb/

	My email address is Tom@Toms.NET

	I am not a Unix teacher, questions should be tomsrtbt-specific.

	Tell me what problems you have and what you would like added.


8) Tips

'Login as root' means the USER ID is "root"!  I thought it was obvious...

Use "man command" if a command acts strangely

"snarf" does ftp, gopher, http, & finger

/ is full. /usr is full. /tmp & /root have room

tar and cpio are 'pax' and differ from gnu-tar and gnu-cpio.

Instead of:
		tar -xvzf /dev/st0
Use this:
		gzip -d < /dev/st0 | tar -xvf -

To run programs from your hard drive:
	-ELF libc5 stuff should all work.
	-For a.out programs, install binfmt_aout.o.
	-For glibc6 programs, something like:
		ln -s /mnt/lib/ld-linux.so.2 /lib/ld-linux.so.2
		edit ld.conf.so then ldconfig or maybe LD_LIBRARY_PATH
		or, "chroot <mounted glibc root> bash" then whatever...

Command history is via ile from /bin/login, see "man ile" and /bin/login.

You must use insmod for:
 BusLogic aha152x aha1542 aic7xxx dmsdos eata fdomain
 ncr53c8xx ntfs plip ppa qlogicfas seagate

Adaptec 2940 etc. is aic7xxx

If something is missing, look in http://www.toms.net/rb/add-ons/.

Try "pcmcia start". If you add pcmcia modules, fix /etc/pcmcia/config also.

To use lilo, mount the floppy to get at zImage & boot.b, chain.b is in etc.
The lilo you run must have the same version as the boot.b it runs against.

wc login man shutdown ps split telnet tee & head are scripts or awks.

edit rc.custom.gz to enable rshd or dialin or 'telnetd'.

For the fake telnetd, use 'mode character' and 'set binary'...

If you need to not be root, use a suid shell.  Login won't do it.

Instead of rdev use lilo, for examples see the mailing list archive.

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

To copy between 2 tomsrtbt system, use something like:

 find <path> | cpio -ovB | rsh <system> { cd <path>; cpio -iuvmdV; }

Support for 4M machines in borderline, see the list archive for help.


9) Copyright

Almost the only originality is arrangement, construction, and scripts.

I did write 'tomshexd' from scratch.

It is all on sunsite.unc.edu, tsx-11.mit.edu, ftp.debian.org, or ftp.lth.se.

I changed:
 mnsed fixing 'l'
 snarf adding ftp USER and PASS via getenv
 busybox taking out applets
 ile fixing tty bugs
 dd adding lseek for BLK, progress indicator, no conv

The .diffs are in http://www.toms.net/rb/add-ons/*.diff.bz2

'miterm' is thanks to Robert de Bath, rdebath@poboxes.com

*******************************************************************************
* If you base something on it, use any of the scripts, distribute binaries or *
* libraries from it, or distribute customized versions of it: You must credit *
* tomsrtbt and include a pointer to http://www.toms.net/rb/ and tom@toms.net, *
* and include this notice verbatim. Copyright Tom Oehser 1998. This notice in *
* no way supercedes or nullifies any other protections on the component parts *
* such as the BSD and GPL copyrights which apply to practically everything!!! *
*******************************************************************************


10) ChangeLog

1.6.70   add ile shell command history
1.6.151  script fixes, wc tee dirname -> awk
1.6.165  rep gnu fmt w/ elvis' fmt
1.6.167  rm mkdmsdosfs fsck, add ntfs.o, head -> awk
1.6.193  cut -> awk
1.6.200  rm smc-ultra32
1.6.225  script and settings changes, enhance telnet, remove rlogin
1.6.249  add tulip
1.6.268  grep -> awk, add 3c59x
1.6.275  superformat -> fdformat, util2.8, prompt for keytable,
         add BusLogic.o (no FlashPoint...), IDEPCMCIA.
1.6.335  fix cpio bugs, BSD mt-st -> gnu-mt, 2.4.2-20 (debian)
1.6.336  fix ile tty handling
1.6.346  pcmcia-3.05, del aha152x_cs, add cardbus
1.6.358  fix ile high-bit char handling
1.6.362  tcic_opts fix, DOS installer fix
1.6.370  replace cpio with pax/tar/cpio
1.6.375  fix fake telnetd
1.7.0    kernel 2.0.36
1.7.14   customize dd, cd func PS1, more.help, docs, pax 2.(>1)
1.7.29   many pax, tar, cpio fixes
1.7.30   add hexedit, add split
1.7.40   add aha152x_cs, trim elvis
1.7.52   BusLogic, seagate -> modules, bzImage -> zImage
1.7.75   trim libc, 26 sectors free! bugfixes
1.7.88   add setserial, play with inode calculations
1.7.90   make scsi modules, make network builtin 
1.7.95   plip has to be module, script fixes
1.7.100  add real dhcpcd NOTE: this is temporary, I will replace this with a
         faked or reduced dhcp and this will go away!  But why not put it on
         there for now since I have the space...
1.7.102  new mkdosfs
1.7.104  minor fixes
1.7.115  rows/columns fix

11) ToDo

Com     TypEffPriDes
.deb     e  m  2 unpacker
4M       e  l  9 more aliases, etc?
ash      b  h  4 echo won't allow both -e AND -n
ash      b  h  6 bizarre 'read' bug
ash      b  l  6 manpage omits $$, $_, etc.
ash      b  h  7 fix or doc builtin "test" bug
awks     e  m  5 clean up, do more..
awks     e  m  5 write 'strings' in awk
busybox  b  m  4 fix monadic to handle -fr
busybox  b  m  2 kill doesn't support named signals
busybox  e  h  4 hack in more stuff, revamp and redo
busybox  e  h  7 new version?
crtn.o   b  h  5 ?4-K overhead from for every program?
crunch   e  h  5 BSD program that auto-combines binaries?
cut      b  m  4 fix -b, -c N-..
dhcpd    e  h  2 make a really small one
doc      b  l  5 update manpage for (gnucpio)mt
doc      e  m  6 busybox man pages
floppy   e  h  8 mess with higher formats like 1840?
generic- e  m  8 which one?
hexedit  e  m  4 wrapper for diskediting
insmod   b  h  9 newer version failed?
isapnp   e  h  4 no
kbd      e  m  4 make keymaps with only changes
kernel   b  h  3 Try other SCSI/NIC tradeoffs
libc     e  h  9 convert to glibc6
lrp      e  m  4 crib from
md       e  m  8 check size, need
more     b  h  2 fix console bug, smooth scroll backwards
mount    e  l  3 update man pages
mount    b  h  6 -O2 breaks '-t nfs', -O1 works, why?
ntfs     e  m  4 newer version
passwd   e  m  2 crypt in awk, better fake login- see TEA
pax      e  h  3 enhance to do gnu-tar and gnu-cpio opts
pax      e  h  3 try to break, build verification suite.
pax      e  h  3 add support for SVR4 formats
pcmcia   e  m  5 cleanup, docs, trim, test
rc.      b  m  2 make prompted not hold/wait
smbfs    e  m  7 check size
sort     e  m  4 remove or replace with an awk
startup  e  h  2 test initrd, root.gz->minixfs ideas
tea      e  m  2 check this
telnet   e  m  5 improve
telnetd  e  m  5 improve
termcap  e  l  4 man page w/ setterm fake shortcuts i.e. ^V^[[?5h
termcap  b  h  7 rebuild lib
trinux   e  m  4 crib from
unpack   b  m  2 detect kernel w/o loop
wget     e  m  3 compare to snarf

