*BSD News Article 2465


Return to BSD News archive

Xref: sserve comp.unix.bsd:2509 comp.sys.ibm.pc.hardware:27811
Newsgroups: comp.unix.bsd,comp.sys.ibm.pc.hardware
Path: sserve!manuel!munnari.oz.au!mips!mips!newsun!gateway.novell.com!terry
From: terry@npd.Novell.COM (Terry Lambert)
Subject: 386BSD FAQ
Message-ID: <1992Jul24.224936.18008@gateway.novell.com>
Summary: An unofficial FAQ
Keywords: BSD 386BSD
Sender: news@gateway.novell.com (NetNews)
Nntp-Posting-Host: thisbe.eng.sandy.novell.com
Organization: Novell NPD -- Sandy, UT
References: <dhuber.711965446@autmgr>
Date: Fri, 24 Jul 1992 22:49:36 GMT

In article <dhuber.711965446@autmgr> dhuber@autelca.ascom.ch (Daniel Huber) writes:
>BTW. Is there a 386BSD FAQ?

Here is something that I have thrown together over the past little while:



			Frequently Asked Questions
				386BSD 0.1


			    EXTREMELY UNOFFICIAL


			       Terry Lambert
		      terry_lambert@gateway.novell.com
			   terry@icarus.weber.edu


			   Last Update: 24 Jul 92


0.0	Organization

	This FAQ consists of four parts:

	0.*	Organization.
	1.*	Overview.
	2.*	Questions list (with accompanying personally or net derived
			answers).
	3.*	Acknowledgement (but not naming -- sorry) of Contributors.
	4.*	Future of this FAQ


1.0	Overview

	The 386BSD 0.1 operating system is a derivitive of the Berkeley
Net/2 release.  The definitive "man without whom we would have nothing" in 
this effort has been William Jolitz.  For more information, download the
code.


2.0	Questions list

	Here is an incomplete questions list (incomplete, because I do not
	have answers for all of them).  This will probably dissapoint my
	many fans, who no doubt consider me infallable 8-).

	Where can I find the distribution?
	Where can I get the distribution on CD ROM?
	Why shouldn't I download 386BSD from UUNET?
	How do I get 386bsd 0.1 installed with "real" partitoning?
	How do I get a second disk running under 0.1?
	How can I fix the "flashing multicolored characters and
		ptdi81061 prompt" error?
	What is the highest baud rate supported?
	SLIP is configured, but doesn't seem to work: what's wrong?
	The serial ports don't work on my machine; is it my UARTs?
	I can install; why won't it boot of my hard drive?
	How can I verify my checksums before I have 386bsd installed?
	How can I make my tty driver not lock up?
	Where are the commands "rpcinfo" and "rpcgen"?
	Why don't the man pages for "magic" and "file" work?
	Why is apropos broke?
	Where can I get a working "netstat"?
	How can I fix NFS to work with my NE2000 board?
	How do I add swap space?
	Where can I get a kernel with second drive and second swap in it?
	How do I make a device that can see my DOS partition?
	How can I get "ps" to work?
	How can I read tapes with multiple extents?
	How do I get around the NFS "Permission denied" error?
	Some of my SCSI devices (like a tape) dont work; why?
	The "mountd" hangs on exporting a file system subdirectory.
	Are EISA cards supported?
	Is microchannel (MCA, PS/2) supported?
	How much disk space do I need?
	How do I get rid of "startart" characters on my console?
	I'm having trouble installing the binaries... why is that?
	Where can I get X windows for 386BSD?
	Where can I get (FTP) info on how to configure a kernel?
	I get the error "isr 15 and error: isr 17" on an NE2000 card, OR
		I have some card on IRQ2 and it dosn't work; why?
	If I do a "pwd", my directory goes away.
	I can't unpack etc01 becuse of "too many files open".


2.01	Where can I find the distribution?

	The following host sites are listed in the file DISTRIBUTION.HOSTS
	in the 386/BSD distribution (bot name and address are provided):

		agate.berkeley.edu		128.32.136.1
		gatekeeper.dec.com		16.1.0.2
		MATH.ORST.EDU			128.193.16.60
		UTKUX1.UTK.EDU			128.169.200.67
		terminator.cc.umich.edu		141.211.164.8
		nic.funet.fi			128.214.6.100
		dsuvax.dsu.edu			138.247.32.2
		altair.cis.ksu.edu		129.130.10.84
		hpcsos.col.hp.com		15.255.240.16	*
		math.niu.edu			131.156.3.4
		sune.stacken.kth.se		130.237.234.42
		raquel.doc.ic.ac.uk		146.169.11.3
		rusmv1.rus.uni-stuttgart.de	129.69.1.12
		HELIUM.CLUB.CC.CMU.EDU		128.2.55.10
		banjo.concert.net		192.101.21.6
		kirk.bu.oz.au			131.244.1.1
		grand.central.org		192.54.226.100
		pascal.math.fu-berlin.de	130.133.4.50
		capella.eetech.mcgill.ca	132.206.1.17
		ftp.ibr.cs.tu-bs.de		134.169.34.15
		f.ms.uky.edu			128.163.128.6
		azathoth.sura.net		128.167.254.184

	Notes:	*Internal HP sites only

	The code is also soon to be available, or perhaps already available,
	from both CompuServe and BIX.


2.02	Where can I get the distribution on CD ROM?

	A company called "Yggdrasil Computing Infrastructure Corporation"
	has posted (in the person of Adam J. Richter) the following:

	-----------------------------------------------------------------
        I am considering selling the 386BSD 0.1 distribution on CDROM
	through my company, Yggdrasil.  The distribution would run $100,
	with $60 per CD donated to Lynne and Bill Jolitz, and would
	include the following.

        o An ISO9660 level 2 CDROM with a copy of the 386BSD 0.1
          distribution from agate and an unpacked directory tree
          of the distribution,

        o Bootable installation diskettes in both 3.5" (1.44MB) and
          5.25" (1.2MB) formats.  Each of these diskettes would have
          a kernel capable of mounting an ISO9660 file system and
          a script for installing from the CDROM.

        o Installation instructions.

        o An Yggdrasil "GNU World Order" T-shirt.


        At Bill Jolitz's suggestion, I plan to wait for the first patch
	for the early bugs, which should be out "very shortly."

        Please send me email if you have any comments or suggestions
	about this idea or if you're sure that you'd buy a CD.
	-----------------------------------------------------------------

	The posted email address is richter@nic.cerf.net (Adam J. Richter);
	I would greatly encourage anyone interested in 386BSD who also has
	a CD ROM drive to purchase this when it becomes available, and to
	send Adam email so that he can get a distribution list going.  If
	he's amenable to it, this distribution list should be used to
	email future items, such as "software catalogs", etc.


2.03	Why shouldn't I download 386BSD from UUNET?

	1)	William Jolitz, the author doesn't want you to.
	2)	UUNET has a policy against binaries, so you won't be able
		to boot it if you do download it.

	William F. Jolitz writes:

	--------------------------------------------------------------------
	"Do *not* obtain 386BSD from uunet!  BSDI is funded partially
	 from UUNET coffers, and those idiots still see 386BSD as a
	 rival to their hopes.

	 As with other related situations, they have come up with
	 'plausibly deniable' reasons to not provide information that
	 they feel affects their competitive advantages."
	--------------------------------------------------------------------

	'nuf said.


2.04	How do I get 386bsd 0.1 installed with "real" partitoning?

	This method also comes to us, as so much else does, by way of
	Chris G. Demetriou.  The following is excerpted and edited from
	a post by him on the matter:

	--------------------------------------------------------------------
	HOW TO GET 386bsd 0.1 INSTALLED WITH "REAL" PARTITONING:

	(remember, if things don't work, they might be in places that aren't
	normally looked in... things should work as below, but you might have
	to use explicit paths occasionally... the 'better' stuff -- mount,
	umount, cp, etc... is in /usr/distbin on the fixit floppy...  even
	mknod is there, if the devices you need aren't on the fixit floppy...)

	(1) boot the fixit floppy
	(2) disklabel the disk as appropriate
	(3) newfs the partitions
	(4) mount the new root partition under /mnt
	(5) mkdir /mnt/usr
	(6) mount the new /usr partition under /mnt/usr
	(7) cpio directory-by-directory (recursively -- by hand!) the entire
		contents of the fixit floppy to the hard drive

		you'll do something like:

		cd /
		ls | cpio -pdalmu /mnt
		cd /sbin
		ls | cpio -pdalmu /mnt/sbin
		cd /usr
		ls | cpio -pdalmu /mnt/usr
		cd /usr/bin
		ls | cpio -pdalmu /mnt/usr/bin

		etc.  yes, it's tiring.

	(8) copy /usr/distbin/mount and /usr/distbin/umount to /mnt (so that
		they'll be in the new root partition, so you can mount the
		new /usr partition...)
	(9) shutdown
		and the eject the floppy.
	(10) reboot off the hard drive, the fsck -p <root raw device>
		If there are any errors, after the fsck is done, hit
		ctl-alt-delete, and repeat this step.
	(11) fsck -p <usr raw device>
	(12) mount -u <root device> /
	(13) mount <usr device> /usr
	(14) insert 0.1 boot/install floppy (dist.fs) into floppy drive
		and "mount /dev/fd0a /mnt"
	(15) cd /mnt
		and then
		usr/bin/zcat etc/baselist.Z | usr/bin/cpio -pdalmu /
	(16) cd /
		and then
	/mnt/usr/bin/zcat /mnt/etc/baseutils.cpio.Z | /mnt/usr/bin/cpio -idalmu
	(17) umount /mnt	then eject the floppy
	(18) umount /usr
	(19) shutdown
	(20) reboot off the hard drive, and get all of the various files (the
		bindist files, srcdist files, etc...).
		I put them into /usr/tmp, because there wasn't enough space
		in /tmp (because it was on a small root partition...).
	(21) cd / ; cat <all the binary files> | uncompress | cpio -idalmu
	(22) rm <all the binary files>
	(23) put your hostname into "/etc/myname" and put your ip addr/hostname
		into /etc/hosts.
	(24) make an fstab for yourself.  specifically, you want something like:
		<root device name>	/	ufs rw 1 1
		<usr device name>	/usr	ufs rw 1 2

	congrats.  you now have a working system!

	you can repeat step 21 for the srcdist and etcdist files, as well,
	if you wish...

	If they don't work for you, sorry...

		Chris
	--------------------------------------------------------------------

	If it doesn't work, I'll be sorry too, if it'll help.


2.05	How do I get a second disk running under 0.1?

	This is the result of the boot disk not auto-recognizing multiple
	hard drives.  A very good fix to this, if you can recompile your
	kernel without first needing a second drive, was posted in article
	1863 in the news group comp.unix.bsd, by Christoph Robitschko
	(email at chmr@fstgds01.tu-graz.ac.at ... I suggest you pick this
	patch up from your favorite news archive, like wuarchive.wustl.edu,
	instead of asking him for it).  In this article, he says:

	--------------------------------------------------------------------
	I have hacked /sys/i386/isa/wd.c to support two (or any number)
	hard disks.  It now prints the device description for each configured
	disk on boot time and even doesn't break if it cannot find a
	configured disk.

	Your configuration file should contain something like this:

		controller wd0 at isa? ...
		disk wd0 at wd0 disk0
		disk wd1 at wd0 disk1

	Enjoy ! (But at your own risk !)
							Christoph
	--------------------------------------------------------------------

	The diffs for the hacked driver is in the article.

	If you can't get the article, or can't recompile due to a lack of
	disk space, or some other overriding reason, a compile that has at
	least second drive support, and second swap device support, is
	available from James Risner (email risner@ms.uky.edu) by anonymous
	FTP:  f.ms.uky.edu:/pub2/386bsd-0.1/unofficial/second.drive.randy/*.

	I don't know if this work is based on Christoph's, or if it was
	independantly developed; I also do not know if the sources are
	available or not.


2.06	How can I fix the "flashing multicolored characters and
		ptdi81061 prompt" error?

	This error is a major error, as far as I'm concerned, as it effects
	the majority of the equipment that I have available to me.  It is
	also present on the HP vectra.  I have a soloution that works on
	AT&T 6386E/WGS, but I warn you, it's very dirty.

	The problem is that the code checking the return from the read of
	the CMOS RAM value falls through in the case of an invalid value.
	What really is needed is the non-existance "else" case for a bad
	CMOS setup, which goes and probes memory to see it's size.  What
	currently happens is that the code falls through, the Maxmem is set
	to zero, and the maxmem and physmem are set to -1 (this is a bad
	thing).

	To solve this, I wrote a program in (forgive me!) Turbo C to read
	and write CMOS values, so that I could force the memory count to
	the correct value.  For a machine with a base  memory of 640K, the
	expected value in CMOS is 0280 (in bytes x16 and x15, respectively).
	What the AT&T boxes and the HP vectra have here is 027f, so it falls
	through to the default case and blows up.

	The quick and dirty workaround:  If you download dist.fs from
	Chris G. Demetriou's upload on agate.berkeley.edu for the hard disk
	boot problem (this MUST be dist.fs, and not one of the other dist.fs
	files modified for Isolan or WD ethernet and named something else!),
	you can use uzap (available for anon ftp from wuarchive.wustl.edu,
	located at mirrors2/unix-c/editors/uzap.tar-z) to binary edit the
	dist.fs at byte offset 946834; it should be changed from 81FE8002
	to 81FE7F02.  This is the compare for 640K in the bogus code.  You
	can look for the pattern 81FE8002 in the other *.fs files, including
	fixit.fs, and change it there, if you MUST use one of them instead.

	I have uploaded a patched version of dist.fs, and maile Chris, but
	don't know how long this will take to become FTP'able.  Realize
	that you *MUST* fix the sources if you are going to build a kernel
	which is bootable!

	It should be noted that, if you download uzap, you should "touch"
	uzap.c, as otherwise, make will try to use lex to create it, and
	will probably fail.  This is due to the tar extraction order from
	the uzap tar archive.


2.07	What is the highest baud rate supported?

	The highes baud rate that is supported is 38400.  This is somewhat
	a misnomer, however, since it implies that you will get "support"
	if 386BSD fails to perform at this baud rate.  This is incorrect;
	if it doesn't perform at 38400, try a lower baud rate.  No one is
	going to commit to "fix it" for you based on a complaint.  If anyone
	wants to write a faster driver, the canonical method of running
	higher baud rates is to take one interrupt an poll like hell.  This
	would probably impact performace pretty significantly.

	If you need more than 38400, you should consider an ehternet card.


2.08	SLIP is configured, but doesn't seem to work: what's wrong?

	Warren Toomey and Peter Cooper have together discovered the soloution
	for this one.  Place a "nohup" on the command line in front of the
	"slattach", like so:

		nohup slattach /dev/com2 9600

	The problem is apparently related to the idea of controlling tty.
	The slattach should have /dev/com2 as it's controlling tty after
	it has been run, and does not.  This causes slattach to shut down.
	Understandably, this leads to another workaround: restart slattach
	once you're up.


2.09	The serial ports don't work on my machine; is it my UARTs?

	It doesn't matter if you have old (8250) or new (16450) UART's in
	your box.  Most liekly, the problem is related to something living
	at IRQ4 (if you are trying to use com1/com3) or IRQ3 (if com2/com4).
	You should move the conflicting card to another interrupt, since, in
	general, you won't beable to move the com card.  This is because
	interrupt sharing requires either the interrupt line not being
	current sinked (thus preventing other interrupts), or a *lot* of
	fancy footwork and some very explicit knowledge of the cards
	involved.  The first condition is not going to be met by most AT
	bus (ISA) cards.  The second would require a general change in the
	way com cards are made and nearly a driver per card.  DOS doesn't
	have this problem because it'scom drivers in BIOS poll the cards for
	input rather than being interrupt driven.  This is generally not a
	good idea in a multiprocessing (say 386BSD) environment.


2.10	I can install; why won't it boot of my hard drive?

	In general, this will show up as a "bad disk label" error, and
	can result in in not booting from the hard drive "most of the time".
	You may be able to partially (or even completely) work around this
	problem by making your machine run at a lower clock rate.

	This problem is the result of the kernel reading the wrong register
	waiting for the drive controller to come ready.  On some controllers,
	this isn't a problem; on others, it's fatal.

	The correct soloution is to use a patched "dist.fs" or "fixit.fs"
	boot disk.  These have been provided by Chris G. Demetriou, and
	are located on the machine agate.berkeley.edu in the directory
	pub/386BSD/386bsd-0.1/unofficial/newbootables.cgd.  There are a
	number of other bootables ther for WD8003 and Isolan ethernet cards,
	since the probing for both can cause problems.


2.11	How can I verify my checksums before I have 386bsd installed?

	A "cksum" program for the 386BSD distribution which runs on
	SVR4, and which can probably be easily modified to run elsewhere,
	has been provided by Henry G. Juengst (whose email address is
	juengst@boss1.physik.uni-bonn.de).  Henry states about his port:


	--------------------------------------------------------------------
	I found cksum in srcdist and compiled it. Some definition problems
	had to be resolved (quick hack). DG/UX 5.4.1 is a System V R4. Now
	I can begin to verify all files here (first check done) and use 386BSD
	for education (for no money) in an astronomical observatory
	(SNH, Erkrath/Germany) which is open for everybody.

	I hope this modified cksum will help anybody just to verify the
	contributed files before moving them to anywhere. Use make.sh to
	compile it. But have a look before you start. May be you have
	to change _PROTO_ARGS in all *.c & *.h using
	sed 's/_PROTO_ARGS/YOUR_PROTOTYPE_MACRO/g' file.c >file.new.c
	(it was __P in the original source). If you are not sure you should
	have a look into your /usr/include/stdio.h (for example).

	THIS IS NO PATCH FOR 386BSD !

	Henry

	Sorry, here should be the uuencoded .tar.Z file. But the nntp server
	fails because out of disk space; 40 kbytes - mmmh. You can get it via
	anonymous ftp from

	boss1.physik.uni-bonn.de:~ftp/pub/386bsd/cksum_dgux/cksum_dg.uue
	[131.220.221.30]

	for the next two month. You won't waste your time if you have a look
	into the other directories (e.g. ~ftp/pub/dcl) !

	If you don't have ftp access you can mail me. I will send it to you.
	--------------------------------------------------------------------

	I'm sure that Henry's work will soon find its way to agate and other
	canonical distribution sites.


2.12	How can I make my tty driver not lock up?

	1)	Don't use it (8-)).
	2)	Apply Mark Eichin's (eichin@athena.mit.edu) patch for the
		file tty_ring.c.
		
	Sorry, no binaries with this patch already installed.  Hopefully, it
	will show up in the usual places soon.  Currently, the patch is
	article 1930 of comp.unix.bsd.  You can get it form your favorite
	news archive (mine is wuarchive.wustl.edu).

2.13	Where are the commands "rpcinfo" and "rpcgen"?

	Chris Flatters (cflatter@nrao.edu) informs us in the following
	posting except where we can find them:

	--------------------------------------------------------------------
	The sources for the Sun OS 4.0 RPC are on titan.rice.edu (I don't have
	the inet number handy) in directory sun-sources.  You will have to pick
	up all the shell archives and unpack them to get at rpcgen.
	--------------------------------------------------------------------


2.14	Why don't the man pages for "magic" and "file" work?

	James Jegers (jimj@miller.cs.uwm.edu) enlightens us:

	--------------------------------------------------------------------
	The manual page for magic and file all have two dots
	before the commands,  eg.    "..SH" it should be ".SH"
	just delete one of the double dots in the whole file and then 
	it will work.
	--------------------------------------------------------------------


2.15	Why is apropos broke?

	Also from James Jegers:

	--------------------------------------------------------------------
	The Makefile in /usr/othersrc/share/man/Makefile creates the
	whatis.db.  The problem is that it doesn't strip the backspaces in
	the title and apropos can't handle that.  So add a "col -b" to strip
	those.

	exerpt from the makefile.

	makedb:
	   for file in `find /usr/share/man -type f -name '*.0' -print`; do \
		sed -n -f /usr/share/man/makewhatis.sed $$file; \
	   done | col -b | sort -u > whatis.db
	   install -o ${BINOWN} -g ${BINGRP} -m 444 whatis.db \
	              ${DESTDIR}/usr/share/man
	--------------------------------------------------------------------


2.16	Where can I get a working "netstat"?

	Havard Eidnes (Havard.Eidnes@runit.sintef.no) has ported it for us:

	--------------------------------------------------------------------
	Hi,

	I've ported netstat from NET2 to 386bsd version 0.1. The changes
	are mostly involved with inserting #ifdefs for ISO, NS and IMP at
	the relevant places ("removing" that code, essentially), not
	compiling some of the modules (although the source remains together
	with comments in the Makefile) plus modifying the "unixpr()" routine
	in unix.c to traverse the open file table the new way.  The
	"netstat -r" output looks a bit odd (although I guess this is the
	"new way"?), but gives the right information.

	The source and binary is available with anonymous ftp from
	ugle.unit.no (for lack of a better place) in the pub/unix/386bsd/
	directory as netstat-bin.tar.Z and netstat-src.tar.Z.  Unpack the
	source from /usr/src and the binary and formatted man page (as root)
	from /.  Use binaries at own risk ;-)

	- Havard
	--------------------------------------------------------------------

	Hopefully, this will find it's way into the regular distribution.


2.17	How can I fix NFS to work with my NE2000 board?

	Ken Raeburn (raeburn@cambridge.cygnus.com) has both identified the
	problem and provided us with a work around:

	--------------------------------------------------------------------
	I reported previously that I was seeing problems reading files over
	NFS using the ne2000 driver; timeouts would eventually be reported, no
	data would be read.  Listing files and directories (small ones
	anyways) were not a problem.

	After playing with etherfind and kernel printfs, I've come to this
	conclusion: Fragmented 8K UDP packets from the NFS server are not
	reaching the UDP layer in 386bsd.  The Sun is sending them (according
	to another Sun spying on the network), but the UDP input routine is
	never called.  I don't know if the bug here is on the 386bsd or Sun
	side, and won't have time to look into it in the next couple of days.

	In the meantime, mounting NFS file systems with "rsize=1024" does get
	rid of this problem.

	(It does nothing about TCP being slow, though.)
	Ken
	--------------------------------------------------------------------

	Hopefully, the real soloution (a UDP fix) will be forthcoming so
	that the slow TCP problem is fixed as well.


2.18	How do I add swap space?

	William F. Jolitz fprovides the soloution to this problem himself,
	by way of a reply to Randy Suess' question on the matter:

	--------------------------------------------------------------------
	>To add swap space, the device needs to be compiled into the kernel
	>in advance, even if you don't plan to use it. It reserves space in
	>it's swap space map for this (so eventually it can interleave them).

	Ok, that did it.  Thanks.  I am now able to have the swap
	partition on the second drive added with swapon. (at least
	the command completes with no errors.  Any way to actually
	see if the system knows about the second swap partition?)

	in /sys/compile/YOUR_SYSTEM_NAME/swap386bsd.c,
	duplicate the makedev(0,1) line in the swdevt struct
	and change the 1 to a 9.
	--------------------------------------------------------------------

	The swdevt struct fix is Randy's, the quoted material Bill's.


2.19	Where can I get a kernel with second drive and second swap in it?

	As mentioned elsewhere, James Risner (risner@ms.uky.edu) has
	provided at least binaries (I havent checked for sources yet):

	--------------------------------------------------------------------
	A recompiled kernel with second drive support and second drive swap
	support is available on
	f.ms.uky.edu:/pub2/386bsd-0.1/unofficial/second.drive.randy/*
	--------------------------------------------------------------------


2.20	How do I make a device that can see my DOS partition?

	The correct answer to this problem is "one /dev/wdXX per partition
	and a DOSFS VFS module".  Barring that, the soloution provided by
	Jim Paradis (paradis@sousa.ltn.dec.com) will have to do:

	--------------------------------------------------------------------
	To build a devices.c file that lets you access the DOS partition, you
	need to know the byte offset of the DOS partition from the start of
	the hard disk.  You would then add an entry to the devices[] array
	as follows:

	{'C', "/dev/wd0d", <byteoffset>L, 16, 0, (int (*) ()) 0, 0, 0, 0},

	So, f'rinstance, if your DOS partition starts at the beginning of
	the disk, you'd have:

	{'C', "/dev/wd0d", 0L, 16, 0, (int (*) ()) 0, 0, 0, 0},

	On the other hand, if your DOS partition starts 32Mb into the disk,
	you'd say something like:

	{'C', "/dev/wd0d", (32768L * 1024L), 16, 0, (int (*) ()) 0, 0, 0, 0},
	--------------------------------------------------------------------

	Once I have my machine a happy camper, the second soloution should be
	available shortly.


2.21	How can I get "ps" to work?

	Jim Paradis (paradis@sousa.ltn.dec.com) has given us a patch to
	./src/lib/libutil/kvm.c in article 2115 of comp.unix.bsd.  Get it
	from your usenet archive, or the usualt FTP sites when it becomes
	generally available.


2.22	How can I read tapes with multiple extents?

	With a no-rewind device.  Tore Haraldsen (toreh@bootes.sds.no) has
	given us the information to make one:

	--------------------------------------------------------------------
	It IS possible to read multiple file tapes, if you do the following
	modifications to i386/isa/as.c:

	1) Change the definition of dev_rewind macro to use a mask outside the
	   other fields used by the scsi driver. Using the partition field for
	   no-rewind flags will not work, due to imprecise coding elsewhere in
	   the driver. Use 0100 for instance. Make a new kernel.

	2) Create a device with this capability:
			mknod /dev/nras2a c 13 80

	   The last number, 80 = 16 (=minor device number for as2) + 64
	   (decimal representation of 0100).

	3) When using the tape device for the first time, do some sort of dummy
	   access to it: tar a cpio tape or vice versa. There seems to be some
	   sort of race condition otherwise that will otherwise give you the
	   unwanted rewind.

	4) Good luck. This is just a hack, somebody compentent will have to
	   rewrite the whole damn thing...

	-- Tore Haraldsen
	--------------------------------------------------------------------


2.23	How do I get around the NFS "Permission denied" error?

	The problem is not the configuration of the server (unless there is
	no real requirement to run it in "secure" mode, and you happen to
	be running it that way anyway).  The problem is the fact that,
	even though mount request are sent on a priveledged port, NFS
	connections are not.  This is part of secure NFS, and is not
	supported in 386BSD.
	
	There is a patch to cause NFS to use a secure port in 386BSD 0.1
	-- unfortunately, I don't have references for it.  It did appear
	as a postisting, somewhere between article 1600 and 2100 (I know,
	big help).


2.24	Some of my SCSI devices (like a tape) dont work; why?

	Gary Ward (gpw10@phoenixcd.amdahl.com) has seemingly discovered
	that the SCSI driver likes devices to start at 0 and work their
	way up.  That means that you should put your first device at
	LUN 0, the second at LUN 1, and so on.  The typical arrangement
	of disks at 0 and 1, and a tape at 4 will cause the tape to
	not be recognized.  Change this to disks at 0 and 1 ans the tape
	at 2, and voila! the tape is suddenly there.


2.25	The "mountd" hangs on exporting a file system subdirectory.

	This is because of a bug in mountd itself, as identified by Roe
	Peterson (roe@Unibase.SK.CA).  As yet, there is not a fixed
	binary available, so you will have to make the change and compile
	it yourself.  The change, as posted by Roe, is as follows:

	--------------------------------------------------------------------
	Found a little bug in mountd:  If /etc/exports contained:

		/usr/src -root=0

	And /usr was not a file system unto itself, mountd went into an
	infinite loop and stayed there.

	The fix:  in /usr/src/sbin/mountd/mountd.c, line 592 reads:
		while (*cp == '/' && cp > ep->ex_dirp)
	and should read:
		while (*(cp-1) == '/' && cp > ep->ex_dirp)
	--------------------------------------------------------------------


2.26	Are EISA cards supported?

	No, EISA cards are not directly support; however several, especially
	Adaptek SCSI controllers will work in ISA mode.  When and if EISA
	is directly supported, they will give a significant performance
	advantage to EISA bus machines.  Until then, there is nothing that
	is intrinsically better about owning an EISA bus machine.


2.27	Is microchannel (MCA, PS/2) supported?

	No.  Like EISA, this is unsupported currently; unlike EISA, it can't
	work anyway until it is supported, as it doesn't fall back to ISA
	operation.  If you want to work on this problem, I'm sure that
	many people will appreciate it; you will probably need an ISA or
	EISA machine to do the work, however.


2.28	How much disk space do I need?

	The following is culled down from the INSTALL.NOTES file of the
	distribution:

	Binary only:	49 M (30 disk, 5 swap, 14 extraction)
	Source:		125 M (49 bin, 37 disk, +6 extraction, 25 recompile)
	User software:	+51 M

	Everything plus files from recompilation is 176 M with no space left
	over.

	I personally recommend at least 20-60 M of empty space for room to
	grow, build your own software, keep patches, read news, etc.  Call
	it around 200 M for a full distribution you can rebuild from scratch
	and as a general usable system.

	If you are binary only, call it 70-160 M, depending on the space you
	want left over, and whether you load the additional user software.

	Add more space for X windows, additional swap, or anything else you
	want to use disk for.  I find that I'm comfortable in 300 M with the
	developement work I'm doing.

	NB:  Given the recent proliferation of postings for "multiple drive"
	kernels, it's always possible to "start small" and expand later, if
	you need to.  You can also NFS mount disk space from another machine
	if you have networking installed, in which case you only need the
	space required for the binary distribution, no mater what you want
	to do.


2.29	How do I get rid of "startart" characters on my console?

	This has been a rather highly reported problem.  Ken Raeburn reports
	that simply rebuilding the kernel from the supplied sources will
	get rid of it.  Others have reported that moving the ethernet card
	to another IRQ also seems to sovle the problem.


2.30	I'm having trouble installing the binaries... why is that?

	.
2.31	Where can I get X windows for 386BSD?

	There are a number of locations carrying X386 1.2E 1.0.  The most
	recent announcement posting (by David E. Wexelblat, email address
	is dwex@cbnewsj.cb.att.com) states:

	--------------------------------------------------------------------
	Source Patches based on X11R5 PL12, from MIT, are available 
	via anonymous FTP from:

		export.lcs.mit.edu (under /pub/contrib)
		ftp.physics.su.oz.au (under /X386)
		ftp.win.tue.nl (under /pub/X386)

	in the file 'X386-1.2E-1.diff.Z'.   For Linux, 386BSD, BSD/386
	and Mach386, additional patch kits are (currently) required.
	Send mail to x386@physics.su.oz.au if you need these additional
	patch kits; we will try to make them generally available in the
	near future.

	Binaries are available via anonymous FTP from:

		ftp.physics.su.oz.au		- SVR4 binaries
			under /X386/SVR4
		ftp.win.tue.nl			- SVR4 binaries
			under /pub/X386/SVR4
		f.ms.uky.edu			- SVR4 binaries
			under /pub2/Xwindows/X386
		stasi.bradley.edu		- SVR4 binaries
			under /pub/X386
		banjo.concert.net		- Linux binaries
			under /pub/Linux/X11

	Each binary distribution will contain a README file that
	describes the compile-time option selections that were made.

	Systems X386 1.2E has been verified as working on
	
		Dell SVR4 2.1
		Esix 4.0.3A and 4.0.4
		Microport SVR4 3.1 and 4.1
		UHC SVR4
		Consensys SVR4
		ISC SVR4
		AT&T SVR4
		MST SVR4
		[We believe that it will work correctly on all Intel-based,
		 ISA/EISA SVR4's - MicroChannel has not been tested]

		Interactive SVR3 2.2
		Interactive SVR3 3.0

		Linux
		BSD/386
		386BSD	<*******************************

	--------------------------------------------------------------------


2.32	Where can I get (FTP) info on how to configure a kernel?

	One of the more frequent questions asked recently is "how do I
	rebuild the kernel?"  Another, only slightly less frequently asked,
	is "now that I've rebuilt the kernel, what do I do with it?"  The
	answers to both questions have been provided by Richard Murphey
	(email address rich@Rice.edu).  Thank you, Rich, for the following
	information:

	--------------------------------------------------------------------

	Ready-to-print PostScript files for each section of the net2 system
	maintainer's manual are on nova.cc.purdue.edu in
	pub/386bsd/submissions/bsd.manuals.

	smm.02.config.ps.Z describes kernel configuration for the vax, however
	some of it is relevant to 386BSD.  There is no freely available
	rewrite for 386BSD that I know of.

	More specificly, for /dev/com2 you might look at the MAKEDEV script
	which is generated when you configure the kernel.  Ideally, it should
	have a mknod command with the appropriate numbers for each device.
	Rich
	--------------------------------------------------------------------


2.33	I get the error "isr 15 and error: isr 17" on an NE2000 card, OR
		I have some card on IRQ2 and it dosn't work; why?
	

	James Van Artsdalen (email at james@bigtex.cactus.org) has given
	us the answer:

	--------------------------------------------------------------------
	Some VGA cards use IRQ 2 for a vertical retrace interrupt.  Even when
	the interrupt is not enabled in the VGA, some cards drive IRQ 2
	inactive instead of leaving the signal tristate.

	If this is the problem, you can use Scotch tape to cover the IRQ 2
	signal on the VGA's ISA connector.
	--------------------------------------------------------------------

	There has been some discussion as to whether scoth tape is really
	appropriate inside a card slot.  My answer would be "yes".  This is
	because the alternate soloution of cutting the trace on the video
	board seems, to my mind, to reduce the value of the board.  It is
	possible that, in the future, with a bi-partite driver, you would
	want to catch the retrace interrupt to get rid of "sparklies" or to
	implement a driver for a very high resoloution monitor for X.  In
	this happens, given a choice between alcohol and solder, I vote for
	alcohol.

	An alternate soloution would be to remove your ethernet card until
	you have rebuilt the kernel so that it expects it at an interrupt
	other than 2, rejumper it, and reinstall it.  This gets around both
	the tape and exacto knife soloutions, plus you don't have to know
	which pin is IRQ2 (something you need a techincal reference for
	the bus to find out).


2.34	If I do a "pwd", my directory goes away.

	There is a bug in "pwd".  This problem also shows in other programs,
	but is seen most in "pwd".  At the shell prompt, type a control-C
	(^C, interrput).  This will make the shell "come back".

	Some people have suggested using bash (GNU's "Born Again SHell") as
	a replacement to fix this problem.  *THIS DOES NOT WORK, AND WILL
	RESULT IN YOUR MACHINE HANGING IN BOOT OR AN "init failed" MESSAGE!*.
	Once you have your shell up, you can exec bash without a problem.
	Wait until the shell is up to do this, however.


2.35	I can't unpack etc01 becuse of "too many files open".

	The "too many files open" is a result of the "cat" command leaving
	files open after it has read a file.  Hopefully, this will be fixed
	soon.  In the mean time, Dwight E. Cass (email address at
	dec@lazarus.nrtc.northrop.com) has provided us with this enecdotal
	work around for his own experiences:

	--------------------------------------------------------------------
	So - back to installation.  This time, when I get to the etc01
	partition, I am a bit more awake, so I run it from csh (with the
	open file limit at 256).  Works pretty well - but complains at the end
	that it could not do the final configuration because it could not find
	the configuration file - I checked the MANIFEST and the file is not
	there, so I finally decided to ignore the message (but it was
	bothersome!)  Once etc01 was done - source was easy ... and I am now
	up and running, and quite impressed!!!
	--------------------------------------------------------------------

	The moral:  Use csh! 8-).


3.0	Contributors

	I have tried to give credit to the contributors, where possible, in
	the text of this FAQ.  Some of this was transcribed from memory from
	postings seen more than a week ago, so if I have used a soloution
	for which you feel you should have received credit, and didn't, I'm
	sorry.

	Most of this information has been culled over the last few weeks of
	postings to usenet, so it is by no means complete.


4.0	The future

	This is an unofficial FAQ.  I have created and posted it as an interim
	soloution until an officially sanctioned FAQ can be arrived at by
	someone-better-equiped-but-currently-to-busy-to-do-anything-about-it.

	This FAQ does not represent an official position by William Jolitz
	or any of the other people quoted, without their permission, in it,
	and should not be considered as such.

	Any misrepresentations of attitudes or views of individual (and
	unwitting) contributors are due to my poor editorial skills.


5.0	END-OF-FAQ


					Terry Lambert
					terry_lambert@gateway.novell.com
					terry@icarus.weber.edu
---
Disclaimer:  Any opinions in this posting are my own and not those of
my present or previous employers.