Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Oct 1996 18:53:28 +0800
From:      johnd@pristine.com.tw (John Diedrichs)
To:        questions@freebsd.org
Subject:   Installation Woes...
Message-ID:  <199610281053.SAA25151@neptune.pristine.com.tw>

next in thread | raw e-mail | index | archive | help
Hello, 

I'm having a lot of trouble installing FreeBSD 2.1.5-RELEASE on my computer
at home.  

** Note: this message is bound to be long!  This is because I'm trying to
provide you with as much useful detail as possible.  I'll try to keep idle
chit-chat to a minimum, but I'm writing "off-the-cuff", so it may be a bit
disjointed.  My apologies... 

I handle tech-support for a small ISP here in Taiwan, and help maintain a
couple of FreeBSD Pentiums, 3 Sun Ultras, and one Linux box at work; so I'm
no stranger to Unix, but no expert either.  Anyway, I need to write some
custom programs for our system, so I thought I'd just install BSD215 at home
to work on the code in my free time.  

My computer is a "pentium-type" IBM-6x86/133 with 64MB RAM and two Seagate
HDDs (814MB and 2GB).  I split the 814MB drive into a 340MB partition
(wd0s1) for DOS/Win and 3 smaller partitions (80MB, 66MB, and 300+) for
FreeBSD (root, swap and /usr).  

1. No CD-ROM:

Although Linux CDs are available here (in Taiwan) in all flavors and sizes,
FreeBSD is simply not to be found, other than on a couple of mirror sites.
No problem, I just took my Iomega ZIP drive to the office and downloaded
bin, X, dict, and a few other dist's onto it and then copied all onto my DOS
partition.

I made one mistake in this process, for which I paid dearly in wasted time:
I neglected to copy the "install.sh" file for the bin dist.  I'm a bit
embarrassed to say that it took several dozen trips through the install
program to catch that one!  

However, in my own defense, I'll quote a few lines from the "install.txt"
file which was in the 2.1.5-RELEASE directory of ftp.tw.freebsd.org: 

 "After you've formatted the floppies for DOS or UFS, you'll need to 
 copy the files onto them.  The distribution files are split into 
 chunks conveniently sized so that 5 of them will fit on a conventional 
 1.44MB floppy.  Go through all your floppies, packing as many files as 
 will fit on each one, until you've got all the distributions you want 
 packed up in this fashion.  Each distribution should go into its own 
 subdirectory on the floppy, e.g.: a:\bin\bin.aa, a:\bin\bin.ab, ..."

Notice, it doesn't say anything in here about the "install.sh" file!!  

Now, I know that this is a lame excuse for not including the file in a
DOS-HDD install directory, but the simple fact is that including it doesn't
make any difference in the floppy install -- the above instructions are
simply wrong!  

I followed the above instructions to the letter for floppy installation
attempts, both with DOS disks (assiduously checking each formatted disk with
Norton Disk Doctor) *and* with ufs-formatted disks, which I made with one of
our existing BSD machines at the office.  Several times.  In every case, the
installation crashes *immediately* upon going to the floppy, regardless of
whether or not an "install.sh" file is present.  

(More on this in a moment.) 

The point here is that it seems to me that the installation process is
geared toward a CD installation.  I've never tried the CD install, but
judging from several bits in the docs (eg: "For example, to do a minimal
installation of FreeBSD from DOS using files copied from the CDROM, you
might...") I get the idea that one is expected to have the CD, rather than
downloading files from the Internet.  

Obviously, any install program distributed via the Internet ought to work
for an Internet installation (sans CD). 

2. Documentation of features: 

a. Virtual TTYs:

After a *lot* of attempts, I finally discovered the virtual ttys in the
install program.  This was the source of a lot of the debugging info you'll
find later in this message.  This feature does not seem to be documented
anywhere.  I've just done a text-search for "virtual", "tty" and "vty" on
install.txt, hardware.txt, and readme.txt, and came up blank.  

There are a couple of points in the install program where a message is
diplayed saying something like "you might wish to look at the debugging info
with scroll-lock on VTY1".  But that is not explained either.  I had to
figure it out via trial and error.  

This is an important feature which needs to be explained in the docs! 

In a future release of the install program, you might even think about
including a "write" feature to copy such info to a text file.  It would save
people like me the trouble of copying everything down by hand.  (I reckon
there might be some way to "snoop" the info via the shell prompt on ttyv3,
but this is beyond my ken.) 

b. Editing: 

I've spent a fair amount of time at the www.freebsd.org site, looking for
more info, but a lot of the text in the site relevant to installation seems
to be copied verbatim from the install docs (or vice-versa).  

3. Partitioning above 512MB: 

This may be just a superstitious hunch on my part, but I get the idea that
FreeBSD (in the install mode, at least) may have some trouble mounting
partitions that straddle the 512MB boundary.  In particular, the swap
partition seemed sensitive to this.  

However, the problems that gave rise to this "hunch" happened before I
started taking notes on installation, so I can't provide any documentation.
I just remember a few messages in VTY1 about "unable to mount wd0s3b" and
such like. 

In any case, as I recall, the docs say only that the "boot" partition must
*start* before 512MB, due to a limitation in the PC BIOS.  

4. Floppies: 

The "install.txt" notes on floppy installation (quoted above) say only that
the various "splits" of bin.tgz (ie: bin.aa, bin.ab...) have to be copied to
a "bin" directory on the floppies.  However, when I try a floppy install, it
fails as soon as the prefatory steps (fsck, holographic shell, etc.) are done.  

Looking at the messages on ttyv1 (Alt+F2) shows that the program is looking
for "/dist/bin/bin.tgz from fd1 on /dist" (or something like that, I didn't
bother to write it down).  It tries twice, looking for both bin.tgz and
bin.inf, (total of 4 attempts) and fails on all.  

I don't see how I can possibly provide the install program with a single
15MB bin.tgz file on a dozen floppies.  This is definitely a problem!  

5. FTP Install: 

A few weeks ago, we had a disk crash on one of our FreeBSD servers at work
(a power transformer in our neighborhood exploded, spiking the hell out of
our system, right through the UPS, and crashing a HDD) and I spent a long
weekend setting up a new server and restoring files from tape-backup.  

At that time, I found that the server names listed under the FTP items of
the Media section are not entirely up to date.  Specifically
ftp.tw.freebsd.org (the fastest such site in my "neighborhood") has its
files stored under a directory called "OS/FreeBSD/2.1.5-RELEASE".  It
required several tries with varying permutations of the "Release" field in
"Options" and also of the site name itself to get the thing to work at all.

Once it started, it worked great -- downloaded at several hundred Kbps/sec.
But here again, the documentation could have been a bit more explicit.  (As
I recall, I eventually used the IP address as a URL in the "other" field:
ftp://140.111.1.10/OS -- or something like that.)  

The point is, you might want to check with these people to make sure their
configuration agrees with what's in your install program.  Bear in mind that
you're dealing with people who probably don't speak English very well.  If
need be, I speak Chinese fluently, and would be happy to help.  

6. The FIXIT Floppy:

I have been in and out of the FIXIT floppy at least a hundred times over the
last couple of weeks.  Here are a couple of things I noticed: 

a. Mounting MS-DOS Partitions: 

Although the install program itself seems quite capable of mounting and
using msdos partitions, this capability is not native to the fixit floppy.
Before I figured out about the "install.sh" thing, I suspected that the
system might be having trouble installing from DOS, so I was going to just
mount the msdos partition and copy the bin.?? files over to one of my ufs
partitions to try an install with the "File System" option.  

Every time I tried, however, I got a message something like this: 

  mount /dev/wd0s1 /mnt: /usr/sbin/mount_msdos: no such file or directory 

"No problem!" thought I, in my naive hubris, "I'll just log into the system
and download the appropriate file from the office."  Well, as you might
imagine, this did not work exactly as I planned.  Although I did eventually
get this to work, the solution was not obvious; which brings up another
point... 

b. File Structure:

The file structure in "fixit" mode is not exactly "standard".  I gather that
this is necessary in order to make the thing works from the install program.
But there is almost no documentation of the fixit mode.  Perhaps an
explanation of how this works could be included in an upcoming release?
(For instance, why do many files show up with the same *huge* size?  If I
mount a file system in fixit, will it still be available when I "exit" back
to the install GUI?) 

c. "Dirty" File-System: 

Often, I'd reach a dead-end in a "fixit" session and just "exit" back to
install, and quit.  Occasionally, however, the next time through I'd be
unable to mount the fixit floppy, and would have to make a new one, then
start all over again. Couldn't an "fsck -y" option be added to the fixit
startup?  

7. Can't Change Media-Type: 

I've noticed that if an install fails (eg: because the "bin dist" was not
found) then I can't just go back to the "Media" section and change a few
parameters.  If I try this, the install program *immediately* says it can't
find the bin dist, without even trying.  Even to change just one parameter,
I have to start the entire install over from a reboot.  Of course, this
means several minutes for each reboot (going into "-c" mode to select the
right hardware devices), instead of a few seconds just to change a value
somewhere.  (I noticed this particularly often in the FTP install option.)  

That reminds me of one other thing... 

8. Snide Messages: 

When the install program fails to find the "bin" dist, it exits with a
message along the lines of, "You're going to have trouble booting the system
without a working kernel!" (or something like that).  

This was humorous the first couple of times I saw it; but when it's 5:00 in
the morning, on your 50th trip through the installation program, and you
really *NEED* to get this thing working, it ceases to be funny anymore.
Indeed, it is singularly likely to cause some hapless sod out there to chuck
a perfectly good computer through a window!  :-)  

9. Partition Option & MBR: 

It has been my experience (again, not well documented) that no matter what
option I choose in the "Partition" section of the install program, the first
HDD (wd0 or sd0) will have its master boot record over-written.  Even when I
choose "Leave MBR untouched", it still happens.  

I don't wholly discount the possibility that I made a mistake somewhere; but
I doubt I would have made the same mistake several times (on two different
systems) unless there was a serious flaw, at least in the documentation.  

"Once bitten, twice shy," I was always *extremely*careful* in the partition
option after the first time, but it still burned me a couple more times.
I'm quite certain that it disobeyed my direct instruction to "leave the MBR
untouched" at least twice.  Not good! 

10. Unpacking Order: 

On those occasions when I've tried installing the "X-User" distribution,
I've noticed that the install program first unpacks X, dict, and doc
*before* it starts looking for (and crashing upon) bin.  This seems like a
funny way to run a railroad!  ;-)  

Thank god those occasions weren't on an FTP install at 28Kbps!  It would
have taken hours to get through all that unpacking, only to fail on the bin
dist.  


** My own specific problems: 

Okay, that's all that comes to mind about general problems with the
installation program.  I hope that the above information will prove useful
in your continuing efforts to maintain a superior operating system.  

Although my loyalty has been sorely tested in the last couple of weeks, I
still consider myself to be a "fan" of FreeBSD.  This system has been
working like a champ on two of our servers (at work) for the past year.  I
heartily applaud the efforts of the "core" team in putting out such a robust
product.  But I'm really getting tired of these problems at home.  I hope
you can help me get FreeBSD working on my computer!!  

Here's where I stand at the moment: 

1. I copied the kernel from one of the office computers onto my wd0s2a
partition, and after several fits and starts, it finally boots up... sort-of.  

2. I put an "install.sh" file in my /dos/freebsd/bin directory, and the
installation cruises right through the unpacking process right up to a file
called "HB" somewhere in the depths of the "groff" structure.  At this
point, I find the following info in VTY1: 

 gunzip: stdin: unexpected end of file
 /stand/cpio: premature end of file
 DEBUG: switching back to VTY1
 awk: cmd. line: 2:             for (i = 0; i < 32 i++) {
 awk: cmd. line: 2:                                   ^syntax error
 awk: cmd. line: 2:     for (i = 0; i < n; i++) {
 awk: cmd. line: 2:                           ^syntax error

Switching back to the install program GUI (Alt+F1) I see that the program is
stuck on the following information dialog: "Fixing Permissions".  At this
point, I have to reboot with a "cold" reset.  

I've found this situation a couple of times.  Once, the system was just
plain frozen.  Another time, I was still able to enter commands in ttyv3
(Alt+F4) and do a controlled reboot that way.  

2. I've tried various permutations on the bin.tgz/install.sh problem.  I've
used the DOS command "copy /b bin.?? bin.tgz" to concatenate the "split"
files, and also used "cat bin.?? >> bin.tgz" under my "limping" BSD shell.  

Both the "install.sh" method and the "bin.tgz" method work up to a point.
But both methods crash before finishing the unpacking of "bin".  

3. I've also tried running the "tar" command from my existing command
prompt.  First, I chdir to the appropriate directory (either
/dos/freebsd/bin or /FreeBSD/bin) and run either "cat bin.?? | tar --unlink
-xpzf - -C /" or "tar --unlink -xpzf bin.tgz -C /".  In every case, I get
the same message as above ("unexpected EOF") except for one time when I got
the following: 

 pid 138 (tar), uid 0: exited on signal 10

 fatal trap 12: page fault while in kernel mode
 fault virtual address  = 0x204
 fault code             = supervisor write, page not present
 instruction pointer    = 0x8: 0xf0186163
 code segment           = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
 processor eflags       = interrupt enabled, resume, IOPL = 0
 current process        = 1 (init)
 interrupt mask         = 
 panic: page fault 

 syncing disks...

Seeing this, I suspected a problem in memory.  I recently upgraded from 32MB
to 64MB; and though I tested both new SIMMs thoroughly with QEFA, I pulled
'em anyway and tried again.  After that, I had a couple more instances of
the "tar" command stalling on "HB", as above.  

4. As mentioned above, I've got a working kernel, which I copied from a
machine at the office, and most of the "bin" dist already un-tarred onto my
system.  It almost works.  When I boot this kernel, it goes multi-user and
lets me log in as root, but it can't find a working "terminal type".  It
keeps prompting for the term type, and I've tried various permutations of
"cons25", "vt100" and such, but the only thing that works is just to hit
Ctrl+C, which dumps me into an "uncooked" console prompt.  

I copied most of the "termcap" directory from a system at the office, and
made a symlink from /etc/termcap -> /usr/share/misc/termcap but this has no
effect.

 ***

I suspect that there's a problem in the actual binary files I downloaded
from ftp.tw.freebsd.org, however, I'd like a second opinion from the
"experts" on this.  

Alternatively, since I've got access to two working FreeBSD installations,
could you provide me with a list of the binaries I need, and where they need
to go?  I could easily copy/download the needed files and install them.
Would this be enough to get the system working at last?  

Finally, I'd like to thank you for trudging through this lengthy e-mail, and
most of all for having created the FreeBSD system in the first place.  As
I've said, I'm a strong supporter of the project, and wish you all success.
I hope that the level of detail in this message will be more useful to you
than annoying.  And I hope you can help me get past these difficulties.  

Thanks!

-- John Diedrichs




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199610281053.SAA25151>