Subject: Install.notes for FreeBSD-1.0-G
Here is the hacked install notes file for FreeBSD-1.0-GAMMA.
Please get someone to check the few points marked <<please check>>.
From: rgrimes
Checked the <<please check>>, and cleaned up some details.
and miscellaneous programs which get installed into /usr/distbin.
Install now recognizes existing DOS partitions and attempts to install
after them. Theoretically, it also remaps badblocks.
N.B.: The fourth install floppy must have a clean DOS FAT.
Building the new distribution floppies is untested
TODO: Build a disktab entry for existing DOS partitions (except extended
partitions). This would allow loading and/or extracting the distribution
files directly from the DOS hard disk partition.
The following additional changes are needed for the new install disks:
1) Remove from filesystem disk's /filelist: bin/cat, dev/MAKEDEV.local.
2) Remove from the filesystem disk: /bin/cat, /COPYRIGHT and /dev/MAKEDEV.local.
3) Add to the filesystem disk: /sbin/fdisk, /dev/fd1a and /dev/rfd1a.
4) Build a fourth DOS disk containing at least: os-bs, rz/sz
Outstanding problems:
1) If there are >1024 cylinders, then FreeBSD cannot boot unless installed
at cylinder 0 (and since neither can DOS evidently, the two can't share
a disk in this case).
2) If FreeBSD is installed at cylinder 0, subsequent installs tend to fail.
3) If a DOS partition exists, disklabel doesn't seem to update the disk
geometry in the FreeBSD disklabel correctly (so reinstalling FreeBSD with
a new geometry requires installing it at cylinder 0). Rod suggested
invoking disklabel on the raw c-partition. This makes sense, but it
doesn't seem to work (newfs, for instance, can't find the new label).
other tools really want.
Targets sio*) and com*) now create entry named ttyxx, default setup with
a sh MAKEDEV all is to use the sio major numbers, com is all but depreicated
now.
these are not part of the standard distribution and do not belong
in here, this was carry over from earlier work.
Added src-tarball: ssrc-tarball: targets to build the 2 source tar balls,
still have to manually copy/chmod/chown the src tree into the destination
directory and clean out all the obj, and CVS files/dirs, plus run a
make cleandist in it before running these targets, but atleast things are
getting easier to do!
release: now uses fixed floppies target.
is not really needed until we can go multiuser.
Changed name of list from CRYPT_FILES to CRYPT_SRCS, since that is
really what they point to. Added list CRYPT_DIRS, that is the directories
that are in the des distribution.
Fixed kc-xx-floppy dependencies on kc-floppy since it would not do
the right thing with the new target floppies:
Now user ${RELEASEDIR} for dd'ing the floppy images and other stuff having
to do with building the release.
Added new target bin-tarball that builds the bin.tar.gz.?? split archives for
release.
Added new target des-tarball that builds the des.tar.gz.?? split archives for
release.
Added building of /usr/local directories for the CDROMDIST.
New target floppies: that builds all 4 floppies.
New target release: that should completely populate a release tree, except
that the src-tarball target is not yet written.
after the cpio floppy has been installed. This fixes the corrupt disk
problem during the install. Still need to add some echo's about expecting
disk corruption at this point in time.
Upgraded release statement to say 1.0 GAMMA. Added a dummy read before
the instuctions so the user does not get confused by the rapid output
and thinks something scrolled off the screen.
that now takes a directory argument. These files are now built from the
master.passwd file.
Fixed typo on NOOBJ=, was oobj, now noobj.
Rename of targes and variables. INST1 -> FILESYSTEM, INST2 -> CPIO,
kc -> kcopy.
Floppy targets now dd and gzip the image back onto the hard disk so
that less manual work is required when building a release.
Removed reboot from FILESYSTEM floppy and put df back on, and added
mount_isofs. Changed scripts to use halt instead of reboot.
distributions.
Now only populates $DESTDIR/dev if we are building the cdrom distribution,
since this directory is populated by the install tools it was a conflict
to have the dev entries in the full distribution as well.
share/zoneinfo and was just duplicated here.
Fixed the directory owner ships on the inst1 floppy by adding all of the
directories that get created on the floppy to INST1_DIR, since cpio was
not picking up the source dir protections, but instead using the current
process uid, gid, and umask values.
Removed /bin/df from inst1 to make room for mount_pcfs. Also removed
/etc/disktab since it just got overwritten by the install tools.
Removed zcat from INST2_CPIO since it is now installed from the
INST2_FILES files on the floppy. This fixes things so that all
of the gzip tools get linked to the same image.
Much of the .if machine i386 stuff moved to be system independent
since it really was.
Added sd1 support to the inst1 and kc floppies. No room for wd1 support,
oh well.
Fix permissions on top level of floppy, it was not getting set.
extract can be over writen. This is done by coping them to /tmp
before the extract begins, running them from /tmp, then removing them
after the extract has completed.
Removed all section about setting up sendmail.cf, since this was for the
old sendmail stuff and should not be required by the new sendmail.cf file
that is shipped with the system.
file left by inst1.install.
Fixed cpio command so that it works with the new cpio that does not
ignore extra options.
Added echo's about building /dev files so the user knows it is doing something.
has been asked once. Disabled the ability to have different blocking
factors on different partitions since this is known to trash the vm system.
Removed many extranious echo's of the users answers. This was probably put
in for debugging and never removed. It was quite confusing to my test users.
Added autoscan of disk for bad blocks for bad144 type disks using the new
bad144 -s option.
Renabled the asking for verbose installation. Why was this disabled??
Added creation of etc/disktab.install on the hard disk that is a copy
of the disktab used to create the disk with.
Added a mount -at ufs to the .profile so that all the diskpartitions get
mounted on first boot from hard disk, this is so commands that may have been
loaded into a seperate usr partition can be found.
Added kc-floppy that does the common part of building the kc floppies.
Added kc-bt-floppy to build GENERICBT kernel floppy.
Fixed kc-ah-floppy to use kc-floppy.
The problem with having it enable is that lastlog grows big, none
of the current scripts deal with rotation of /var/log/lastlog,
so it shouldn't necessary be installed at first. This has traditionally
been something the sysadmin has had to touch after system installations.
Nate:
(Besides, you're forced to learn more about the system by reading the man
pages if it doesn't exist. :-)
3 of the 4 needed floppies for FreeBSD.
Still need to do kc-bt-floppy for the Bustek/Ultrastore controllers.
Fixed installation of boot blocks in distribution:, now use a variable
(${MDEC}) instead of a find so that my zzz files don't end up in
the distribution!
left intact.
Simplified variables for drivename, drivetype, and sect_fwd.
Added rotdelay to newfs commands (defaults to newfs default except
for scsi disks where it defaults to 0).
Made the disk geometry questions more like what PC users are use to
reading (cylinders/heads/sectors).
Added minswap requirement of 8MB, recomendation of 2 x physical memory.
Added messages about what the blocking factor does.
Added message for mount point to NOT include the leading /
How to change disklabel to /sbin/disklabel due to bug in our /bin/sh,
I thought this has been fixed, but it has not!
Changed to use cpio instead of tar, since tar seems so brain dead.
Removed kernfs reference from /etc/fstab creation since FreeBSD does not
have the kernfs. Made /etc/fstab tabbed so it looks pretty :-).
Added default of floppy drive 0 after we boot from hard disk.
Fixed path in inst1.profile, removed /usr/local/bin, /usr/contrib/bin and .
Made it clean up in /sys/i386/boot after building and installing the
boot blocks.
Moved the cd ..; make install to be after the special case stuff for
sendmail.
Added the installation of tcpproto.cf as /etc/sendmail.cf
spwd.db that are created from the template master.passwd to src/etc so
that a build distribution can populate /etc correctly. This is a work
around until a better solution can be found.