4809 lines
186 KiB
HTML
4809 lines
186 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<!-- saved from url=(0060)http://home.ins.de/~m.hussmann/linux/linux.faq.nov.1992.html -->
|
|
<HTML><HEAD><TITLE>Linux FAQ Nov 1992</TITLE>
|
|
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
|
|
<META content="MSHTML 5.00.3502.5390" name=GENERATOR></HEAD>
|
|
<BODY bgColor=#ffffff>
|
|
<HR>
|
|
|
|
<H1 align=center>Linux FAQ Nov 1992</H1>
|
|
<P><I>Note:</I> The URL of this FAQ has been posted by <A
|
|
href="mailto:las@light-house.com">Laszlo Herczeg</A> to c.o.l.a. in 1997 and I
|
|
just placed it here.
|
|
<P><A href="http://home.ins.de/~m.hussmann/linux.html">Back to M.H.'s Linux
|
|
links</A>
|
|
<HR>
|
|
<PRE>Hi Linuxers!
|
|
|
|
The original FAQ 1st version was posted on Dec. 19, 1991 by Robert Blum.
|
|
|
|
Most credits of this work to Linus, Robert and Ted. The first X11
|
|
section was written by Peter Hawkins, the rest was either on the list
|
|
posted by many (real) activists, not me ;-), either in some other news
|
|
groups, or else by direct posting to me (thanks Humberto, Dan,
|
|
Michael, Drew, Audoin). I haven't systematically copyrighted them, so
|
|
thanks to every one who participated even indirectly to this FAQ.
|
|
|
|
Since September 1992, the FAQ is co-written by:
|
|
|
|
WHO (WHAT) E-MAIL
|
|
=============================================================================
|
|
Lars Wirzenius (META-FAQ) wirzeniu@cc.helsinki.fi
|
|
Mark Komarinski (DOS) komarimf@craft.camp.clarkson.edu
|
|
Matt Welsh (GENERAL INFO) mdw@tc.cornell.edu
|
|
A. V. Le Blanc (MCC, DOS) LeBlanc@mcc.ac.uk
|
|
Matt Welsh (INSTALLATION) mdw@tc.cornell.edu
|
|
Drew Eckhardt (SCSI) headrest.woz.colorado.edu
|
|
Hongjiu Lu (GCC) hlu@eecs.wsu.edu
|
|
Krishna Balasubramanian (X11) balasub@cis.ohio-state.edu
|
|
Jim Gifford (SERIAL) jgifford@{attmail,world.std}.com
|
|
Zane Healy (BBS INFO) healyzh@holonet.net
|
|
Philip Copeland (NET INFO) p_copela@csd.bristol-poly.ac.uk
|
|
Rick Miller (DEVICE INFO) rick@ee.uwm.edu
|
|
Peter MacDonald (SLS INFO) pmacdona@sanjuan.uvic.ca
|
|
Rick Sladkey (EMACS) jrs@world.std.com
|
|
Dirk Hohndel (PROOF READER) hohndel@informatik.uni-wuerzburg.dbp.de
|
|
Marc-Michel Corsini (FAQ collector) corsini@{labri,firmin}.greco-prog.fr
|
|
=============================================================================
|
|
|
|
If anyone is interested in participating with this FAQ, just send me a
|
|
note with: your name/e-mail and the section you want to maintain.
|
|
|
|
Many of the questions could be avoided, if people had read the FAQ of
|
|
the following newsgroups: news.announce.newusers, comp.lang.c,
|
|
gnu.emacs.help, comp.unix.questions.
|
|
|
|
[The last-change-date of this posting is always "two minutes ago". :-)]
|
|
|
|
This is the introduction to a list of frequently asked questions (FAQ
|
|
for short) about Linux with answers (Yeap!). This article contains a
|
|
listing of the sections, followed by the question/answer part.
|
|
|
|
This FAQ is supposed to reduce the noise level ;-) in the comp.os.linux
|
|
newsgroup, and spare the time of many activists. I will cross-post it each
|
|
month to news.answers. This FAQ is NOT an introduction to UNIX, there
|
|
are many books for unix, and there is *also* a FAQ for unix (it's the
|
|
one of comp.unix.questions which contains things such as "How do I
|
|
remove a file named -". I DO NOT WANT TO ADD SUCH THINGS IN THIS FAQ
|
|
DEVOTED TO LINUX.
|
|
|
|
Some books to read:
|
|
The C Programming Language: Kernighan & Ritchie.
|
|
Unix System Administration Handbook: Nemeth, Snyder & Seebass.
|
|
Unix for the Impatient: Abrahams & Larson.
|
|
Unix System V Release 4, An Introduction, by Rosen, Rosinski and
|
|
Farber; Publisher Osborne MacGraw-Hill.
|
|
The X Windows System in a Nutshell: O'Reilly.
|
|
.....
|
|
|
|
BTW This FAQ is available at the main Linux sites in the doc
|
|
directory, the addresses are given in section II. of this FAQ. There
|
|
is also an automated FAQ mailserver archive at pit-manager.mit.edu.
|
|
Send mail to mail-server@pit-manager.mit.edu with the word "help" in
|
|
the body.
|
|
|
|
Please suggest any change, rephrasing, deletions, new questions,
|
|
answers ...
|
|
Please include "FAQ" in the subject of messages sent to me about FAQ.
|
|
Please use linux@numero6.greco-prog.fr whatever will be the From part
|
|
of this message. Finally discussion about the FAQ can be done on the
|
|
DOC Channel (see section II below).
|
|
|
|
|
|
Thanks in advance,
|
|
Marc
|
|
|
|
Future Plan:
|
|
|
|
- reorganization of the FAQ. I don't know what will be the
|
|
next step of this, may be numbering and subsectionning.
|
|
|
|
================================8<=====8<==============================
|
|
CONTENTS
|
|
0. WARNINGS (part1)
|
|
I. LINUX GENERAL INFORMATION (part1)
|
|
II. LINUX USEFUL ADDRESSES (part1)
|
|
III. INSTALLATION and COMMON PROBLEMS (part1)
|
|
IV. LINUX and DOS (part2)
|
|
V. SOME CLASSICAL PROBLEMS (part2)
|
|
VI. MISCELLANEOUS HINTS (part2)
|
|
VII. MORE HINTS (part2)
|
|
VIII. FEATURES (part3)
|
|
IX. GCC MISC INFORMATION (part3)
|
|
X. SCSI SPECIAL (part3)
|
|
XI. X11, THE MINIMUM and MORE (part4)
|
|
XII. NETWORKING and LINUX (part4)
|
|
XIII. EMACS dor LINUX (part4)
|
|
|
|
0. WARNINGS
|
|
===========
|
|
|
|
The FAQ contains a lot of information sometimes I've put it down
|
|
in 3 different ways because people seems not to understand what they
|
|
read (or what I wrote, you know I'm just a froggy and english is not
|
|
my natural language). What I mean is that not all is in the FAQ but
|
|
many things are there, so please just take time to read it this will
|
|
spare a lot of the other linuxers [and if you think I should rephrase
|
|
some Q/A just drop me a note with the corrections].
|
|
|
|
As the Linux kernel changes monthly, I define 2 pseudo variables a la
|
|
C one for the version, and one for the date of the release.
|
|
|
|
#define CURRENT_VERSION 0.98 /* the current version */
|
|
#define PATCH_LEVEL 5 /* the patch level */
|
|
#define KERNEL_DATE 15, Nov. /* Date of the CURRENT_VERSION */
|
|
|
|
In what follows I'll consider CURRENT_VERSION as the current version.
|
|
|
|
Below is the information provided by Lars Wirzenius on the LINUXNEWS
|
|
Channel: "Linux News, a summary. Issue #5"
|
|
|
|
November 9. Linus announced kernel version 0.98 patchlevel 4.
|
|
The most important changes are:
|
|
* The inode caching bug (resulting in bad filesystem info when
|
|
mounting/umounting devices) should be gone for good.
|
|
* Bug fix of a race-condition in the filesystem (which may have
|
|
caused people to get occasional fsck errors).
|
|
* Math emulator fixes (mainly for the re-entrancy problem)
|
|
* NR_OPEN was changed from 32 to 256 (this will break GNU Emacs,
|
|
the term program, and possibly other programs; a recompilation should
|
|
fix things).
|
|
* the process kernel stack is now on a separate page (needed due to
|
|
* Changes in kernel data structures (these require a new ps)
|
|
* System call tracing
|
|
* Changes to networking (tcp/ip, some nfs)
|
|
FTP: nic.funet.fi: pub/OS/Linux/PEOPLE/Linus/ (presumably on other
|
|
sites too, by now), files linux-0.98.4.tar.Z (complete source),
|
|
linux-0.98.patch4.Z (patches against pl3). Also ps-diff.Z, patches by
|
|
Linus to ps-0.98 that should fix ps to work with 0.98.4.
|
|
(Source: <1992Nov9.112201.14250@klaava.Helsinki.FI>)
|
|
|
|
November 15. Linus announced kernel version 0.98 patchevel 5.
|
|
This version fixes a swap-partition bug in pl4. The symptoms where
|
|
incorrect swapping with a partition, e.g. xterm could dump core when
|
|
swapping was enabled and you typed at the keyboard.
|
|
This version also checks against writing to the text segment (i.e.
|
|
program code). This will break some binaries, especially some very,
|
|
very old ones that were compiled using the estdio library (this
|
|
library is no longer used in Linux). If previously well-working
|
|
programs suddenly start to dump core, this might be the reason.
|
|
There are also some other changes.
|
|
See also 0.98.4 announcement above.
|
|
FTP: nic.funet.fi: pub/OS/Linux/PEOPLE/Linus/.
|
|
(Source: <1992Nov15.220138.5434@klaava.Helsinki.FI>)
|
|
|
|
|
|
|
|
I. LINUX GENERAL INFORMATION
|
|
=============================
|
|
*** This section is maintained by Matt Welsh (mdw@tc.cornell.edu). Mail
|
|
*** him if you have corrections, additions, other questions, etc.
|
|
*** Last update November 1992.
|
|
|
|
|
|
QUESTION: What is linux?
|
|
|
|
ANSWER: Linux is a small unix for 386-AT computers, that has the added
|
|
advantage of being free(*). It is still in beta-testing, but is slowly
|
|
getting useful even for somewhat real developement. The current
|
|
version is CURRENT_VERSION, date: KERNEL_DATE.
|
|
|
|
(*) Free means that you may use it, change it , redistribute it, as
|
|
long as you don't change the copyright. Free does not mean public
|
|
domain.
|
|
|
|
|
|
Linux is a freely distributable UNIX clone. It implements a subset of
|
|
System V and POSIX functionality, and contains a lot of BSD-isms.
|
|
LINUX has been written from scratch, and therefore does not contain
|
|
any AT&T or MINIX code--not in the kernel, the compiler, the
|
|
utilities, or the libraries. For this reason it can be made available
|
|
with the complete source code via anonymous FTP. LINUX runs only on
|
|
386/486 AT-bus machines; porting to non-Intel architectures is likely
|
|
to be difficult, as the kernel makes extensive use of 386 memory
|
|
management and task primitives.
|
|
|
|
|
|
QUESTION: Does Linux support GCC, TCP/IP, X-Windows, MGR, etc.?
|
|
|
|
ANSWER: Linux currently supports and uses a large amount of the GNU
|
|
software (i.e. GCC, bison, groff, etc) so all of that functionality is
|
|
there. X-Windows is also available, along with many client
|
|
applications. MGR is there too. TCP/IP is in testing, and is available
|
|
for you to try out.
|
|
|
|
(Dirk Hohndel:) TCP/IP is available. I use Linux boxes as Xterminals
|
|
and my "own" asterix has mounted half a Gig via NFS. Mitch DSuoza is
|
|
running an anonymous FTP server on his Linux box. This is definitely
|
|
more than testing. The newest SLS has a TCP/IP kernel by default.
|
|
|
|
|
|
See section VIII of this FAQ ("Features")!
|
|
|
|
In short, Linux supports many, many features and programs. One of the
|
|
biggest questions is:
|
|
"Does ***** work on Linux? Does Linux have *****?"
|
|
The answer, usually, is "yes". Just check out the rest of this FAQ,
|
|
the newsgroup, as well as the files on the FTP sites.
|
|
|
|
|
|
QUESTION: What is the current state of Linux?
|
|
|
|
ANSWER: read the comp.os.linux newsgroup, where the INFO-SHEET is
|
|
periodically posted.
|
|
|
|
|
|
QUESTION: I've just heard about linux, what should I do to get it?
|
|
|
|
ANSWER: FIRST read this FAQ, and especially section III (installation).
|
|
Choose a "release" of Linux (such as MCC, SLS, bootdisk/rootdisk, etc).
|
|
Download from your nearest FTP site, use the "rawrite" program as needed
|
|
to write the images to high-density floppies (5.25 or 3.5). Specific
|
|
instructions are given in section III and in the README files for each
|
|
release.
|
|
|
|
Note that some releases only give you the kernel and a few utilities, and
|
|
others give you everything you need (including X11, GCC, and more) in
|
|
that latter case the downloading is close to a douzen of SOFT. Just
|
|
check out section III for more info.
|
|
|
|
|
|
QUESTION: Does it run on my computer?
|
|
|
|
ANSWER: Linux has been written on a clone-386, with IDE drives and a VGA
|
|
screen. It should work on most similar setups. The harddisk should be
|
|
AT-standard, and the system must be ISA. (though *some* EISA success
|
|
has been reported [T. Koenig], Linux doesn't take advantage of the EISA
|
|
structure). A high density floppy drive -- either 5.25" or 3.5"-- is
|
|
required.
|
|
|
|
{Drew's information:
|
|
Linux supports anything that's register compatable with a WD1003 MFM
|
|
disk controller (ie, the original PC-AT disk controller.) Most AT
|
|
MFM, RLL, ESDI, and IDE setups look like this.
|
|
|
|
XT compatable disk controllers won't work.
|
|
|
|
Generally, the rule is if you have the disk configured into the
|
|
CMOS setup of your machine, it will work (because the BIOS is talking
|
|
to a WD 1003 compatable board), otherwise it won't.}
|
|
|
|
IDE and MFM seem to work with no problem. It works, also, for some
|
|
ESDI drive (you might have to comment out the "unexpected hd
|
|
interrupt"-message from hd.c). There exists a high-level SCSI driver,
|
|
under which low-level drivers are placed; a ST-01/ST-02 low driver has
|
|
been completed see the FEATURES and the USEFUL ADDRESSES sections.
|
|
|
|
|
|
Otherwise the requirements seem relatively small: a 386 (SX, DX or any
|
|
486). Any video card of the following: Hercules, CGA, EGA, (S)VGA.
|
|
|
|
It needs at least 2M to run (with SWAP), and 4M is definitely a plus.
|
|
It can happily use up to 16M (and more if you want).
|
|
|
|
BTW There are problems with some MAXTOR drives on high speed machines
|
|
(sometimes switching off "turbo" helps). There may also be a problem
|
|
with "slow" memory (under 60ns) on fast machines. Again, the solution
|
|
is to turn off "turbo". Mixed SIMMs (3 and 9 chip versions) have also
|
|
reported to be problematic.
|
|
|
|
NOTE1: It doesn't run (yet?) on a MCA machine
|
|
NOTE2: There is a driver for XT but not very useable.
|
|
NOTE3: There is also a support for 8514 and S3.
|
|
|
|
QUESTION: Why the suggested 4Meg, for Linux?
|
|
|
|
ANSWER: Linux uses the first 640k for kernel text, kernel data and
|
|
buffercache. Your mother board may eat up 384K because of the chipset.
|
|
Moreover there is: init/login, a shell, update possibly other daemons.
|
|
Then, while compiling there is make and gcc (2.01 ~770k).
|
|
So you don't have enough real memory and have to page.
|
|
|
|
|
|
QUESTION: How would this operate in an OS/2 environment?
|
|
|
|
ANSWER: Linux will coexist with *ANY* other operating system(s) which
|
|
respects the "standard" PC partionning scheme - this includes Dos,
|
|
Os/2, Minix etc.
|
|
|
|
WARNING: Linux and OS/2 *can* co-exist on the same machine. BUT, you
|
|
cannot use Linux's fdisk to make Linux partitions! See the warnings in
|
|
section III about Linux and OS/2.
|
|
|
|
|
|
QUESTION: Will linux run on a PC or 286-AT? If not, why?
|
|
|
|
ANSWER: Linux uses the 386 chip protected mode functions extensively,
|
|
and is a true 32-bit operating system. Thus x86 chips, x<3, will
|
|
simply not run it.
|
|
|
|
|
|
QUESTION: Will Linux run on a 386 Laptop?
|
|
|
|
ANSWER: It works, including X on most of them.
|
|
|
|
|
|
QUESTION: (Dan) How long has Linux been publicly available?
|
|
|
|
ANSWER (partial): Few months, v0.10 went out in Nov. 91, v0.11 in Dec.
|
|
and the current version CURRENT_VERSION is available since KERNEL_DATE.
|
|
But even it is pretty recent it is quite reliable. There are very few and
|
|
small bugs and in its current state it is mostly useful for people who
|
|
are willing to port code and write new code. As Linux is very close to a
|
|
reliable/stable system, Linus decided that v0.13 will be known as v0.95.
|
|
Believe it or not: the whole story started (nearly) with two processes
|
|
that printed AAAA... and BBBB...
|
|
BTW consult the digest#136 Vol2 for a complete story.
|
|
|
|
|
|
QUESTION: What is the proper pronounciation for "Linux"?
|
|
|
|
ANSWER: (Linus himself)
|
|
'li' is pronounced with a short [ee] sound: compare prInt, mInImal etc.
|
|
'nux' is also short, non-diphtong, like in pUt. It's partly due to
|
|
minix: linux was just my working name for the thing, and as I wrote it
|
|
to replace minix on my system, the result is what it is... linus' minix
|
|
became linux.
|
|
|
|
I originally intended it to be called freax (although buggix was one
|
|
contender after I got fed up with some of the more persistent bugs :)
|
|
and I think the kernel makefiles up to version 0.11 had something to
|
|
that effect ("Makefile for the freax kernel" in a comment). But arl
|
|
called the linux directory at nic.funet.fi pub/OS/Linux, and the name
|
|
stuck. Maybe just as well: freax doesn't sound too good either (freax
|
|
is obviosly free + freak + the obligatory -x).
|
|
|
|
(Rick's note for English speakers: Linux - "LIH-nuhks".)
|
|
|
|
|
|
QUESTION: What's about the copyright of linux?
|
|
|
|
ANSWER: This is an except of the RELEASE Notes v.095a: Linux is
|
|
NOT public domain software, but is copyrighted by Linus Torvalds. The
|
|
copyright conditions are the same as those imposed by the GNU
|
|
copyleft: The GNU GENERAL PUBLIC LICENSE Version 2, June 1991 is part
|
|
of the source tree.
|
|
|
|
|
|
QUESTION: Should I be a UNIX and/or a DOS wizard to install/use Linux?
|
|
|
|
ANSWER: Not at all, just follow the install rules, of course it will be
|
|
easier for you if you know things about Unix. Right now Linux is used
|
|
by more than BIGNUM persons, very few of them enhance the kernel, some
|
|
adds/ports new soft, most of us are only (but USEFUL) beta testers.
|
|
Last but not least, various Linuxers work on manpages, newuser_help,
|
|
file-system organization. So join us and choose your "caste".
|
|
|
|
It is even used in production environments (Dr. G.W. Wettstein)
|
|
|
|
|
|
QUESTION: Does Linux use TSS segments to provide multitasking?
|
|
|
|
ANSWER: Yes!
|
|
|
|
|
|
QUESTION: If my PC runs under Linux, is it possible to ftp, rlogin,
|
|
rsh etc.. to other Unix boxes?
|
|
|
|
ANSWER: Kermit and ka9q have both been ported to Linux. Also, TCP/IP is
|
|
quite reliable, only a few clients are missing.
|
|
Read section XII. devoted to Ethernet and Linux.
|
|
|
|
|
|
QUESTION: Does linux do paging? Can I have virtual memory on my small
|
|
machine?
|
|
|
|
ANSWER: Yes, it does. Generally you set up a swap file or partition, and
|
|
enable it with the "swapon" command. Voila! Virtual memory.
|
|
|
|
|
|
QUESTION: Can I have tasks spanning the full 4GB of addressable 386
|
|
memory? No more 64kB limits like in coherent or standard minix?
|
|
|
|
ANSWER: Since 0.97pl? it uses 4 GB Process Space, 3 for userspace and
|
|
1 for the kernel space.
|
|
|
|
|
|
QUESTION: Does the bigger program sizes mean I can run X?
|
|
|
|
ANSWER: Yes! See section XI below for details on X11.
|
|
|
|
|
|
QUESTION: What are the differences, pros and cons compared to Minix ?
|
|
|
|
ANSWER (partial):
|
|
Cons:
|
|
- Linux only works on 386 and 486 processors.
|
|
- Linux needs 2M of memory just to run, 4M to be useful.
|
|
- Linux is a more traditional unix kernel, it doesn't use message
|
|
passing.
|
|
|
|
Pros:
|
|
- Linux is free, and freely distributable, BUT copyrighted.
|
|
- Linux has some advanced features such as:
|
|
- Memory paging with copy-on-write
|
|
- Demand loading of executables
|
|
- Page sharing of executables
|
|
- Multi-threaded file system
|
|
- job control and virtual memory, virtual consoles and pseudo-ttys.
|
|
- Linux is a more traditional unix kernel, it doesn't use message
|
|
passing.
|
|
|
|
|
|
QUESTION: What are the pros and cons compared to 386BSD ?
|
|
|
|
ANSWER: Linux and 386BSD started out as completely different projects,
|
|
with completely different goals and design criteria in mind. Personally,
|
|
my experience with 386BSD has shown that :
|
|
(a) its TCP/IP is more stable, and seems to work (on my NE2000 card,
|
|
which Linux doesn't support yet), but
|
|
(b) the interface and "feel" just wern't the same as Linux (which I liked
|
|
better :) ). You'll have to try it out for yourself. Here's information
|
|
from comp.unix.bsd, September 1992:
|
|
|
|
| This is a free BSD for the 386. It does NFS and X.
|
|
| Grab it from agate.berkeley.edu (128.32.136.1).
|
|
| Bill Jolitz is writing a book on it.
|
|
|
|
|
| It has a neat, small kernel, and is stable enough to run for a week or
|
|
| more without crashing/hanging. It works fine with 4MB RAM and 80MB
|
|
| disk. Running X however needs 8MB RAM, and supports only vanilla VGA.
|
|
| The TCP/IP implementation in this is functional, but not optimised.
|
|
| This means that FTP throughput is about 5KB/sec on Ethernet, when
|
|
| almost anything else gives you about 70KB to 100KB per second.
|
|
|
|
|
| Read comp.unix.bsd. That is almost entirely Jolitz's 386BSD now.
|
|
|
|
|
| 3. How much disk space for:
|
|
| *kernel
|
|
| *X
|
|
| *source to kernel
|
|
| *source to X
|
|
| 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
|
|
|
|
|
| X Binaries require about 61 Meg (?)
|
|
| I don't know about the sources.
|
|
|
|
|
|
To conclude this Q/A wrt Linux vs 386BSD, you should read the Linux News
|
|
Issue #5 of L. Wirzenius, where a true story of Mark W. Eichin is
|
|
reported.
|
|
|
|
|
|
QUESTION: How much space will Linux take up on my hard drive?
|
|
|
|
ANSWER: It depends on which release you choose. See the section
|
|
INSTALLATION below. Usually it's somewhere between 10 megs (for a
|
|
nominal system+swap space) and 30-40 megs (for everything plus space
|
|
for user directories, etc.).
|
|
|
|
BTW the full SLS needs around 60 MB (including TeX and other goodies).
|
|
|
|
II. LINUX USEFUL ADDRESSES
|
|
=========================
|
|
|
|
II.A. LINUX ON THE NET: ftp, mailing-list
|
|
II.B. OBTAINING LINUX FROM BBS'S: everything about bbs
|
|
|
|
II.A. LINUX ON THE NET
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: Where can I get linux?
|
|
|
|
ANSWER: Linux (all the software, binaries, sources, releases, and so on),
|
|
can be retrieved via anonymous FTP from :
|
|
|
|
[ Major sites ]
|
|
EUROPE:
|
|
nic.funet.fi (128.214.6.100):
|
|
directory /pub/OS/Linux
|
|
ftp.informatik.tu-muenchen.de (131.159.0.110)
|
|
directory /pub/Linux
|
|
|
|
US:
|
|
tsx-11.mit.edu (18.172.1.2):
|
|
directory /pub/linux
|
|
sunsite.unc.edu (152.2.22.81):
|
|
directory /pub/Linux
|
|
|
|
[ Mirroring sites (some of them, there are lots now) ]
|
|
AUSTRALIA:
|
|
kirk.bu.oz.au (131.244.1.1)
|
|
directory /pub/OS/Linux
|
|
EUROPE:
|
|
src.doc.ic.ac.uk (146.169.3.7):
|
|
directory /pub/os/Linux
|
|
ftp.mcc.ac.uk (130.88.200.7):
|
|
directory pub/linux
|
|
ftp.dfv.rwth-aachen.de (137.226.4.105):
|
|
directory /pub/linux
|
|
ftp.informatik.rwth-aachen.de (137.226.112.172):
|
|
directory /pub/Linux
|
|
ftp.ibr.cs.tu-bs.de (134.169.34.15):
|
|
directory /pub/os/linux
|
|
|
|
US:
|
|
wustl.wuarchive.edu (128.252.135.4):
|
|
directory /pub/mirrors4/linux
|
|
ftp.eecs.umich.edu (141.212.99.7):
|
|
directory linux
|
|
JAPAN:
|
|
utsun.s.u-tokyo.ac.jp (133.11.11.11):
|
|
directory misc/linux
|
|
|
|
You might want to check out which of these is the most up-to-date.
|
|
Note that banjo.concert.net is no longer a Linux ftp site :(
|
|
|
|
If you have no FTP capability, you are in trouble. See the next Q/A.
|
|
Also, you'll need the "UNCOMP.EXE" and "RAWRITE2.EXE" programs for DOS
|
|
(to make your install disks). These are usually found in the Linux
|
|
directories on the above FTP sites.
|
|
|
|
|
|
QUESTION: I do not have FTP access, what can I do to get linux?
|
|
|
|
ANSWER: You can either read the next subsection related to BBS's
|
|
otherwise, read the following.
|
|
|
|
The SLS release is distributable by snail-mail on floppies for those
|
|
without net access; see the SLS section in section III of this FAQ for
|
|
more.
|
|
|
|
Try to contact a friend on the net with those access, or try
|
|
mailserver/ftpmail server otherwise contact tytso@ATHENA.MIT.EDU. You
|
|
might try mailing "mailserver@nic.funet.fi" with "help" in the body of
|
|
the mail. If you choose ftpmail server (example: ftpmail@decwrl.dec.com),
|
|
with "help" in the body, the server will send back instructions and
|
|
command list. As an exemple to get the list of files available at tsx-11
|
|
in /pub/linux send:
|
|
|
|
mail ftpmail@decwrl.dec.com
|
|
subject: anything
|
|
reply <YOUR e-mail>
|
|
connect tsx-11.mit.edu
|
|
chdir /pub/linux
|
|
dir -R
|
|
quit
|
|
|
|
In Europe ftp.informatik.tu-muenchen.de is accessible via e-mail (send
|
|
"help" in the body to ftp-mailer@informatik.tu-muenchen.de)
|
|
|
|
|
|
QUESTION: Is there a newsgroup or mailing-list about linux? Where can
|
|
I get my questions answered? How about bug-reports?
|
|
|
|
ANSWER: The comp.os.linux newsgroup is literally *teeming* with postings.
|
|
So, to the first question, yes. :) The older newsgroup, alt.os.linux,
|
|
is being phased out and shouldn't be used anymore.
|
|
|
|
If you don't have news access you can get the digest of postings via
|
|
e-mail from: Linux-activists-request@news-digests.mit.edu. This list is
|
|
gatewayed to the newsgroup as well. Only use the 'request' address for
|
|
subscribe/unsubscribe messages; don't post those to the newsgroup or to
|
|
the actual mailing list.
|
|
|
|
Questions and bug-reports can be sent either to the newsgroup or to Linus
|
|
himself at "torvalds@kruuna.helsinki.fi", depending on which you find more
|
|
appropriate.
|
|
|
|
|
|
|
|
And last but not least there is the original mailing-list, which is
|
|
now a multi-channel list.
|
|
contact linux-activists-request@niksula.hut.fi
|
|
|
|
|
|
QUESTION: Could you be more explicit about the multi-channel list?
|
|
|
|
ANSWER: Well, there are many things to say:
|
|
- these channels are rather devoted to hackers
|
|
- the ones I am aware of are: GCC, MGR, X11, SCSI, NEW-CHANNELS,
|
|
MSDOS (emulator discussion) , NORMAL, KERNEL, FTP, LAPTOP, DOC,
|
|
NET, CONFIGS, LINUXNEWS ...
|
|
- whenever you want to JOIN or LEAVE a channel you have to
|
|
contact the request address
|
|
- you have to use special header (X-Mn-Key and Mn-Admin); X-Mn-Key
|
|
is *ONLY* for regular post, the X-Mn-Admin is for *REQUEST*
|
|
|
|
(Ari Lemmke: 1 Nov. 1992):
|
|
Hmmm.... It seems our list has now about 1500 users
|
|
in 21 channels (mailing lists). 3960 without uniq.
|
|
|
|
"echo foo | mail linux-activists-request@niksula.hut.fi"
|
|
to get the Mail-Net User Guide.
|
|
|
|
QUESTION: How can I join the channel XXX on the linux-activists
|
|
mailing list?
|
|
|
|
ANSWER: just send a mail to the request address with help in the body;
|
|
you will get back a mail which gives you the list of channels and the
|
|
way to join/leave them. Basically you send mail to the request address
|
|
with the line:
|
|
X-Mn-Admin: join <CHANNEL>
|
|
|
|
|
|
QUESTION: How can I leave the channel XXX on the linux-activists
|
|
mailing list?
|
|
|
|
ANSWER: Same as above, basically. You send mail to the request address
|
|
that contains the line:
|
|
X-Mn-Admin: leave <CHANNEL>
|
|
|
|
QUESTION: I'm not an hacker, what are the channels I could be interested
|
|
in?
|
|
|
|
ANSWER: Probably these are the most interesting for you (IMHO)
|
|
|
|
Channel NORMAL:
|
|
~~~~~~~~~~~~~~~
|
|
|
|
Channel normal is the former Linux-Activists mailing list
|
|
(all the people who were on the old Linux-Activists list
|
|
are moved to this channel).
|
|
|
|
|
|
Channel DOC:
|
|
~~~~~~~~~~~~
|
|
|
|
This channel is for Linux document "project". Discussion about Linux
|
|
documents, manuals, papers, etc.
|
|
|
|
Channel CONFIGS:
|
|
~~~~~~~~~~~~~~~~
|
|
This channel will be devoted to send submissions of systems that have
|
|
Linux already running, AND those that, for any reason, can't get it
|
|
to work yet.
|
|
|
|
Mainly, what it's need from all the channel users is to send their
|
|
hardware configuration list (as complete as possible). Include
|
|
anything that you feel pertinent for information: CPU,
|
|
motherboard, RAM amount, HD & floppy controller, BIOS, monitor,
|
|
video card & memory, network adapter, etc. If you are having trouble
|
|
with your current system, or you find out that a program doesn't work
|
|
properly on your system due to a HARDWARE problem, it may be useful
|
|
for us to know your configuration; maybe you can get a lot of help.
|
|
|
|
Channel LINUXNEWS:
|
|
~~~~~~~~~~~~~~~~~~
|
|
The LINUXNEWS channel will be used for distribution of Linux News, a
|
|
weekly (if I can find the time) summary of things that happen in the
|
|
Linux community. Discussion is not encouraged, if you have complaints
|
|
or suggestions, send them directly to me (Lars.Wirzenius@helsinki.fi).
|
|
|
|
Channel NEW-CHANNELS:
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
On the future users on this channel get the information about new
|
|
channels created.
|
|
|
|
By this way you can join the channels you want, and do not need to
|
|
send mail to Mail-Net info server or listen rumours.
|
|
|
|
QUESTION: Does there exist a place where the traffic of the newsgroup
|
|
is kept?
|
|
|
|
ANSWER: Yes, on nic and tsx-11 (see the ftp addresses above), and since
|
|
12th March, a Gopher server is up at beryl.daimi.aau.dk (130.225.16.86).
|
|
The archives go back to Nov. 18. 91. Also recently a WAIS server for the
|
|
linux mail archive has been setup at fgb1.fgb.mw.tu-muenchen.de. Contact
|
|
tw@fgb1.fgb.mw.tu-muenchen.de for more info.
|
|
|
|
|
|
|
|
II.B OBTAINING LINUX FROM BBS'S
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
*** This section is maintain by Zane Healy (healyzh@holonet.net)
|
|
*** Last Update November 1992.
|
|
|
|
QUESTION: I don't have access to FTP, how can I obtain Linux?
|
|
|
|
ANSWER: Linux is available from various BBS's around the world.
|
|
|
|
QUESTION: I got this FAQ from a local BBS, or a friend, and I see there
|
|
is a newsgroup called comp.os.linux . I don't have access to USENET or
|
|
mail, so how can I get the messages?
|
|
|
|
ANSWER: Some of the BBS's on FidoNet carry comp.os.linux as a FidoNet
|
|
conference. Also some of the other BBS's carry it in some form or other.
|
|
|
|
QUESTION: Do BBS's offer anything that the Internet does not?
|
|
|
|
ANSWER: Yes, on the information side there are the UNIX conferences on
|
|
both the RIME network and FidoNet. Although they are not dedicated to
|
|
linux, a large amount of the messages are linux related. Also at least
|
|
one software package being developed for linux, and also one port is
|
|
available via BBS's long before they are available via anonymous FTP.
|
|
|
|
QUESTION: What is a BBS?
|
|
|
|
ANSWER: A BBS is a Bulletin Board System, it let's you transfer message's
|
|
and file's via your phone line and all you need is a computer with
|
|
communications software and a modem. Some BBS's transfer message's among
|
|
each other forming large computer network's similar to USENET. The most
|
|
popular of these in the US are FidoNet and RIME.
|
|
|
|
QUESTION: How can I get a (Near) complete list of BBS's that carry Linux?
|
|
|
|
ANSWER: I (Zane Healy) post a list of all known BBS's that carry Linux
|
|
to comp.os.linux as well as the RIME and Fidonet UNIX conferences on the
|
|
1st and 15th of each month.
|
|
|
|
QUESTION: Now that I have a phone number, how do I go about accessing a
|
|
BBS?
|
|
|
|
ANSWER:
|
|
|
|
1. You need a computer equipped with communications software and a modem.
|
|
|
|
2. For ALMOST all BBS's you will need to set the comm software up for:
|
|
8 - Data Bits
|
|
N - Parity
|
|
1 - Stop Bit
|
|
|
|
Although certain BBS's and Communication services require that the
|
|
software be set for:
|
|
7 - Data Bits
|
|
E - Parity
|
|
1 - Stop Bit
|
|
|
|
You will also need to set the comm software for the correct speed,
|
|
either the top speed, or the max speed for your modem.
|
|
|
|
3. Using the comm software, call the BBS. Once you connect with the BBS
|
|
(this may take awhile, as other people are likely to be using it), you
|
|
will be asked some questions.
|
|
If you are a registered user of the BBS it will normally only ask for
|
|
your name and password. However if you are not a registered user, it
|
|
will most likely require that before you do anything, you register. The
|
|
method of registration varies from BBS to BBS.
|
|
Normally the first thing that will happen is, you sign on to the BBS,
|
|
and tell it your name. It will then check it's list of user's and see
|
|
that you are not one of them. At which time it will ask you if you are a
|
|
new user, or if you wish to re-enter your name. When you tell it you are
|
|
a new user, it will then ask you some questions about yourself, such as
|
|
where you are calling from and your phone number. A lot of BBS's will
|
|
want some statistical info such as what type of computer you are using,
|
|
your communications software, your age, etc, etc.
|
|
After this, most BBS's require some sort of validation, this is for
|
|
the System Operator's (SysOp's) protection. One type is where you give
|
|
the BBS software your phone number, hang up, and the BBS calls your
|
|
computer to verify that you gave it legitament phone number. Some BBS's
|
|
require that you mail the SysOp a postcard. Most, however just require
|
|
that you give the SysOp the request info and then he upgrades your level
|
|
of access a couple of day's later.
|
|
For the most part you will find that the registration process is easy
|
|
to follow and well documented.
|
|
|
|
QUESTION: There is a local BBS that carries Linux, but it isn't on the
|
|
latest Linux BBS List. How do I go about submitting it for inclusion in
|
|
the list?
|
|
|
|
ANSWER: Send the following information on the BBS to me:
|
|
|
|
BBS Name:
|
|
Phone Number:
|
|
Modem Speed:
|
|
City and State/Country:
|
|
Whatever Network it's on (i.e. FidoNet, RIME, etc.):
|
|
First Time access to D/L Linux Files (Y/N):
|
|
Free Access to Linux Files (Y/N):
|
|
Allow File Requests (Y/N):
|
|
BBS Rating (1-5):
|
|
|
|
I can be reached at one of the following E-Mail Addresses:
|
|
Internet -- healyzh@holonet.net
|
|
CompuServe -- 70332,14
|
|
Prodigy -- SCNN49A
|
|
Fido NetMail -- Zane Healy at 1:109/615
|
|
RIME UNIX Conference -- Zane Healy
|
|
|
|
QUESTION: What can I do to help ensure the continued development of
|
|
Linux?
|
|
|
|
ANSWER: PLEASE UPLOAD FILES TO BBS'S
|
|
|
|
I would like to point out that a very large number of the Linux
|
|
enthusiasts don't have FTP access. In fact it is possible that by now
|
|
most of the Linux fan's don't. So I would like to suggest that those of
|
|
us that do, find at least one BBS to post the Linux file's to. I, for
|
|
one post every file that I get to at least one of the local BBS's, and
|
|
from there they the file's tend to find there way to other local BBS's.
|
|
I've seen posts about the future of Linux etc., well here is a way to
|
|
help guarantee it. I think it's safe to assume that most people with FTP
|
|
access also have a modem. So how about doing other Linux fan's a favor
|
|
and finding a BBS to upload the Linux files to.
|
|
|
|
QUESTION: How do I read the data contained in the Linux BBS List?
|
|
|
|
ANSWER: The list uses the following format:
|
|
|
|
State YYY BBS Name Phone Number Modem Speed
|
|
Rating City Other data
|
|
|
|
The BBS's are rated by the number of Linux related file's that they
|
|
carry. This is so you can choose one's that has a better chance of
|
|
carrying the file's you are looking for if you are calling long distance.
|
|
The BBS's are rated on a scale of one to five.
|
|
|
|
1 -- Only enough the most basic of files
|
|
2 -- The basics and a little more
|
|
3 -- So, so
|
|
4 -- A respectable amount
|
|
5 -- Pretty much everything you need
|
|
|
|
Information about the boards access policies can be obtained by
|
|
checking a three digit field.
|
|
|
|
YYY -- Either a Yes/No/? answer to the question
|
|
|||
|
|
||Free access to Linux files
|
|
|Allow file requests (FidoNet)
|
|
First time D/L of Linux related files
|
|
|
|
NOTE: Just because a board has N's in the first two fields does not
|
|
mean that it is a board to stay away from. A lot of boards require
|
|
that you register and be verified before you can access most of their
|
|
features, hence the first N. The second field is, to the best of my
|
|
knowledge, limited to BBS's that are part of FidoNet.
|
|
|
|
QUESTION: What are some of the best BBS's to check out?
|
|
|
|
ANSWER:
|
|
|
|
In the US:
|
|
|
|
CA YNY hip-hop 408-773-0768 14.4k V.32bis/HST
|
|
5 Sunnyvale Login: guest (no password)
|
|
DC NNY When Gravity Fails 202-686-9086 14.4k
|
|
5 Washington
|
|
FL ??? Slut Club 813-236-1232 14.4k
|
|
5 Tampa/St.Pete Fidonet 1:377/42
|
|
GA YYY Information Overload 404-471-1549 9600 HST
|
|
5 FidoNet 1:133/308
|
|
ID ??? Rebel BBS 208-887-3937 9600
|
|
5 Boise
|
|
IL YYY EchoMania BBS 618-233-1659 14.4k HST
|
|
3 Belleville Fido 1:2250/1 (f'reg LINUX)
|
|
F'reqs from unlisted nodes, online callback verifier (works L.D.)
|
|
MD ??? Brodmann's Place 301-843-5732 14.4k
|
|
5 Waldorf RIME ->BRODMANN
|
|
NC ??? MAC's Place 919-891-1111 DS modem
|
|
5 Dunn RIME ->MAC
|
|
NY YYY Prism BBS,Middleton 914-344-0350 9600 HST/v.32
|
|
5 Middletown, NY Fidonet 1:272/38
|
|
NY YYY The Laboratory 212-927-4980 16.8k HST, 14.4k v.32bis
|
|
3-4 FidoNet 1:278/707
|
|
OR YYY Intermittent Connection 503-344-9838 14.4k HST v.32bis
|
|
5 Eugene, Ore 1:152/35
|
|
TX YYY Advanced BBS 512-578-2720 9600
|
|
5 Victoria, TX Fidonet 1:3802/215
|
|
VA ??? VTBBS 703-231-7498
|
|
5 Blacksburg
|
|
WA YYY S'Qually Holler 206-235-0270 9600
|
|
5 Renton Fidonet 1:343/34
|
|
|
|
And here are all the known BBS's outside the US:
|
|
|
|
AUSTRALIA:
|
|
NSW YYN Linux-Support-Oz +61-2-418-8750 2400
|
|
2-3 Sydney Intlnet, SBCNet
|
|
? ??? 500cc Formula 1 BBS +61-2-550-4317 V.32
|
|
? (2-3)
|
|
CANADA:
|
|
ON ??? EX-10 Kitchner 519-725-4400
|
|
?
|
|
ON ??? Ned's Ottawa 613-739-1591
|
|
2
|
|
ON ??? Bytown 613-236-1232
|
|
2 SmartNet
|
|
PQ ??? Synapse 819-246-2344 819-561-5268
|
|
5 Gatineau RIME->SYNAPSE
|
|
GERMANY:
|
|
??? bakunin.north.de 00 49 421 870532 9600
|
|
? D 2800 Bremen kraehe@bakunin.north.de
|
|
??? ?????????????? +49-40-735-5349 14.4k
|
|
1
|
|
??? Hipposoft's Mail Server +49-241-875090 14.4k V.32bis/HST
|
|
3 D-W5100 Aachen Fidonet 2:242/6
|
|
IRELAND:
|
|
??? TOPPSI +353-1-711047 or 773547 9600
|
|
? Fidonet 2:263/151
|
|
NORWAY:
|
|
??? Thunderball Cave 472567018
|
|
? RIME ->CAVE ?
|
|
NETHERLANDS:
|
|
??? DownTown BBS Lelystad, Linux Support BBS 14.4k
|
|
? +31-3200-48852 FIDONET
|
|
SOUTH AFRICA:
|
|
??? Andre Skarzynski - Linux Activists of Southern Africa
|
|
? +27 2231 78148 (Is this voice or data?)
|
|
UNITED KINGDOM:
|
|
NYN The Purple Tentacle +44-734-590990 HST/V32bis
|
|
3-4 Reading Fidonet 2:252/305
|
|
??? A6 BBS +44-582-460273 14.4k
|
|
? Herts Fidonet 2:440/111
|
|
|
|
|
|
III. INSTALLATION and COMMON PROBLEMS
|
|
=====================================
|
|
*** Note: this FAQ section should be kept up-to-date, and should
|
|
*** be the most 'reliable' source for installation info. Please mail
|
|
*** any corrections or changes to this section's coordinator,
|
|
*** Matt Welsh (mdw@tc.cornell.edu).
|
|
*** Last update November 1992.
|
|
|
|
III.A. WHERE TO START: What are the reliable sources of information
|
|
III.B. LINUX PACKAGES: Where and how install a complete Linux package
|
|
III.C. SOME COMMON PROBLEMS: Simple problems and simple solutions
|
|
|
|
III.A. WHERE TO START
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: I want to install Linux on my machine. Where do I start?
|
|
|
|
ANSWER: The first thing you should do is read through the various
|
|
introductory files, and ESPECIALLY the FAQ (this file). Especially
|
|
this section :). A lot of effort has been done on these intro files,
|
|
but note that some of them conflict with each other and cover older
|
|
versions of Linux. When in doubt consult this file.
|
|
|
|
These files are all found on tsx-11.mit.edu:/pub/linux/docs...
|
|
|
|
FAQ
|
|
The Linux Frequently Asked Questions list
|
|
It's sitting in your hands now. This section is probably the best
|
|
place to start to get the most up-to-date Linux installation
|
|
information.
|
|
|
|
INFO-SHEET
|
|
Linux Information Sheet, by J. Winstead
|
|
This is J. Winstead's general information sheet on Linux, and along
|
|
with this FAQ is a good place to start for info.
|
|
|
|
RELNOTES-xxxxx
|
|
Linux version xxxxx Release Notes, by Linus Torvalds
|
|
This is Linus's release notice for version xxxxx of the kernel.
|
|
|
|
guide.txt
|
|
Beginner's Guide to Linux for DOS Users, by C. Boyer
|
|
Last version was for Linux 0.95a. A bit dated, but still has
|
|
lots of useful information for getting started on Linux.
|
|
WARNING: Note that much information in this guide is OBSOLETE!
|
|
|
|
install.notes
|
|
Beginner's Installation Guide, by I. Reid
|
|
Last version was for Linux 0.95a. Generally covers how to install
|
|
Linux using the "bootdisk/rootdisk" combo (for a basic setup): this
|
|
is discussed below.
|
|
WARNING: Note that some information in this guide is OBSOLETE!
|
|
|
|
INSTALL-xxxxx
|
|
Install notes for version xxxxx of Linux, by J. Winstead
|
|
This is Jim Winstead's installation notes on the "bootdisk/rootdisk"
|
|
combo, much like "install.notes" above. The last version for this
|
|
was 0.96. More recent copies are on the rootdisk itself, so follow
|
|
the directions below and read the file ON the rootdisk for more.
|
|
|
|
CHANGES-xxxxx
|
|
Changes to the version xxxxx rootdisk, by J. Winstead
|
|
These are the notes on the changes to the most recent version
|
|
of Jim Winstead's "rootdisk". Notes on that are below.
|
|
|
|
README.kernel
|
|
Kernel compilation README file, by L. Wirzenius
|
|
This is the README notes for recompiling the Linux kernel from the
|
|
sources. You don't need it unless you're planning to upgrade
|
|
your kernel by compiling it yourself.
|
|
|
|
Others
|
|
Every "release" of Linux (such as MCC-interim, SLS, HLU's disks, etc.,
|
|
see below) has its own up-to-date README files and docs that explain
|
|
how to install that release. This FAQ section summarizes, but for more
|
|
info on how to install Linux, read the READMEs and docs for the release
|
|
that you choose.
|
|
|
|
|
|
QUESTION: Is there some kind of limit on how large my Linux partitions
|
|
and/or filesystems can be?
|
|
|
|
ANSWER: There's no limit on partition size (just the size of your drive),
|
|
but Linux mainly uses the minix filesystem which limits filesystems to
|
|
64 megs each. You can also use the extended filesystem (which is still
|
|
in testing, but has been included with recent kernel versions) which has
|
|
a limit of 4 terabytes. Probably enough unless you have a disk array. :)
|
|
|
|
III.B. LINUX PACKAGES
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
This section contains information about *SOME* of the possible Linux
|
|
packages available. The information related to the MCC package were
|
|
written by A.V. Le Blanc.
|
|
|
|
|
|
QUESTION: Does there exist a way to get all (or nearly all) of the Linux
|
|
stuff?
|
|
|
|
ANSWER: Yes. To install Linux, you're going to want to choose one of the
|
|
"releases" of Linux, all of which have a different method of installation
|
|
and set up. Each release also has its own README and installation docs,
|
|
which you'll want to read first. But I'll summarize here. The major
|
|
releases are:
|
|
|
|
* The "bootdisk/rootdisk" combo
|
|
Linus's "bootdisk" (a kernel) and Jim Winstead's "rootdisk"
|
|
which contains the tools for installing a basic Linux system
|
|
to hard disk. See below for more.
|
|
|
|
* H.J. Lu's "bootable rootdisk"
|
|
Essentially the same as the "bootdisk/rootdisk" combo, above, but
|
|
contains several disks: one bootable kernel/root filesystem disk, a
|
|
disk for GCC, and disk(s) for misc tools and GCC libraries. As HLU
|
|
himself puts it, this release is best used as a system backup (it
|
|
doesn't have installation scripts; if you want to install a system
|
|
from it you have to do it yourself). This is still a fairly new
|
|
release. The images and docs are found at tsx-11.mit.edu:/pub/linux.
|
|
|
|
* The "MCC Interim Release" ("Manchester Computing Centre")
|
|
Several (at this point, seven) disk images that contain the
|
|
Linux kernel, root filesystem, and binaries for every major
|
|
program that you'll need, including GCC, file utils, bash,
|
|
everything. Everything, that is, except X11 (which is easy to
|
|
install on top of this release). The MCC interim release is
|
|
very easy to install, and contains all the programs you'll
|
|
need to partition your hard drive and create filesystems, etc.
|
|
first before installing the Linux system itself. See below
|
|
for more.
|
|
*LAST UPDATE* kernel 0.97.2, a bit dated :(
|
|
|
|
* The "Softlanding Linux System Release"
|
|
Also known as the "SLS" release, consists of 14 disks for Linux
|
|
and 8 for X11. The nice thing about this release is that you can
|
|
pick and choose which disks and packages you want to install. The
|
|
first 2 disks must be "rawritten" (using rawrite.exe) on floppies,
|
|
and the rest of the images are put onto DOS format floppies.
|
|
Contains all of the stuff in the MCC release plus a lot more
|
|
(like mail/uucp), and includes X11 on the last 5 disks. Is also
|
|
very easy to install for newcomers.
|
|
|
|
* Others
|
|
There are other releases and distributions of the Linux software,
|
|
such as the "sc.tamu" and "MJ" releases.
|
|
|
|
|
|
QUESTION: Where can I get these versions of Linux?
|
|
|
|
ANSWER: The "bootdisk/rootdisk" combo can be found at tsx-11.mit.edu:
|
|
/pub/linux/INSTALL, as well as at many mirror sites (which is true
|
|
for ALL of this software).
|
|
|
|
H.J. Lu's "bootable rootdisk" release is found at tsx-11.mit.edu:
|
|
/pub/linux/packages/GCC, as well as the mirror sites.
|
|
|
|
The MCC Interim release is at ftp.mcc.ac.uk:/pub/linux/mcc-interim. It's
|
|
also mirrored to nic.funet.fi: /pub/OS/Linux/images/mcc-interim, and
|
|
tsx-11.mit.edu: /pub/linux/mirrors/mcc-interim.
|
|
|
|
The MJ release (discussed more below) can be found at ftp.dfv.rwth-aachen.de:
|
|
/pub/linux/mj-bin.
|
|
|
|
The SLS release is at tsx-11.mit.edu:/pub/linux/packages/SLS.
|
|
|
|
The sc.tamu versions can be found at sc.tamu.edu:/pub/free_unix.
|
|
|
|
|
|
QUESTION: What should I get to install the bootdisk/rootdisk combo
|
|
release?
|
|
|
|
ANSWER: FTP to one of the major Linux sites, such as tsx-11.mit.edu
|
|
(directory /pub/linux/INSTALL) or sunsite.unc.edu (directory
|
|
/pub/Linux) and get the files (you may have to look through some
|
|
subdirectories):
|
|
rawrite.exe (or rawrite2.exe) -- DOS executable to write the
|
|
images to floppies
|
|
bootimage-CURRENT_VERSION.Z -- The kernel bootimage floppy itself
|
|
rootimage-CURRENT_VERSION.Z -- The root filesystem and installation floppy
|
|
|
|
Also get the associated README files.
|
|
|
|
Then transfer these files to DOS, uncompress the two images (you can
|
|
either uncompress them under UNIX using the "uncompress" command or
|
|
with the DOS executable "uncomp.exe"), and run rawrite on them.
|
|
Note that rawrite2.exe may have problems on some drives and setups;
|
|
rawrite.exe is older but more trustworthy. Rawrite will copy,
|
|
sector-by-sector, the two images to two newly formatted floppies (of
|
|
course when this is done the floppies no longer work under DOS).
|
|
|
|
Note: you can also just use "dd" on your UNIX system (if it has a
|
|
floppy drive attached to it) to copy the images to floppies. Something
|
|
like "dd if=bootimage-KERNEL_VERSION of=/dev/fd0" should work; consult
|
|
your system's manuals for the exact device name of the floppy drive.
|
|
You can also try "cat bootimage-KERNEL_VERSION > /dev/fd0"
|
|
|
|
Now you have two floppies: one with the bootimage and the other with the
|
|
rootimage. Boot off of the bootimage disk and, when prompted, insert the
|
|
rootimage disk. You're all set... look at the README files on the
|
|
rootimage disk. To install the system from this disk you generally
|
|
log in as "install" and follow the procedures outlined in the READMEs
|
|
to create and format Linux partitions on your hard drive, install the
|
|
software, and so on.
|
|
|
|
Note: with the bootimage/rootimage combo release, even though you
|
|
can install Linux on your hard drive, you can't BOOT Linux from your
|
|
hard drive (you have to boot from a kernel floppy, the only drawback
|
|
of which is that it's slower booting but afterwards you can take out
|
|
the floppy and everything). To boot from your harddrive you have to
|
|
install either the "LILO" program which changes the boot sector of your
|
|
harddrive. This program is included with the MCC Interim and the SLS
|
|
releases, or you can get is from one of the FTP sites seperately.
|
|
|
|
|
|
QUESTION: What are the files /bin/sh and /bin/tar provided on the
|
|
CURRENT_VERSION rootdisk image (rootdisk-CURRENT_VERSION)?
|
|
|
|
ANSWER: This image has been setup by Jim Winstead Jr, thanks to him.
|
|
The bin/sh is bash, the GNU tar is NOT on the root disk, instead the
|
|
PAX utility is there, NOTICE that this pseudo-tar does NOT handle the
|
|
'z' option for compressed tar files, instead you have to do the
|
|
following assuming the tared compressed file is myfile.Z and you want
|
|
to test it (flag t):
|
|
|
|
uncompress -c myfile.Z | tar tvf -
|
|
or
|
|
zcat myfile.Z | tar tvf -
|
|
|
|
But otherwise it works fine.
|
|
|
|
|
|
QUESTION: How do I get and install H.J. Lu's "bootable rootdisk" release?
|
|
|
|
ANSWER: Basically follow the directions above for the 2-disk "combo"
|
|
release (i.e. get the images, rawrite them to high-density DOS formatted
|
|
floppies, boot off the boot disk). This release doesn't contain
|
|
user-friendly installation scripts; it's meant for those who can install
|
|
the images from the disks by hand (the READMEs contain instructions on
|
|
doing this).
|
|
|
|
|
|
QUESTION: What is the MCC interim version of Linux?
|
|
|
|
ANSWER: The MCC (Manchester Computing Centre) versions of Linux are
|
|
designed to provide an installation/recovery system for Linux at
|
|
various release levels. As of Sept 92, five MCC versions of Linux
|
|
have appeared at intervals of 6-8 weeks. The current versions include
|
|
|
|
basic system utilities, many GNU utilities, man pages, groff, gcc and
|
|
g++, gdb, and full kernel sources. MCC interim Linux is distributed
|
|
entirely on floppy disk images, of which there are 7 in release
|
|
0.97p2 (boot, utilities, misc, comp1, comp2, g++, and gdb). The
|
|
original intention was to create a basic Linux installation on two
|
|
floppies, and other disks have been added in the course of time.
|
|
|
|
|
|
QUESTION: What are the advantages and drawbacks of using MCC or another
|
|
version over using the standard boot/root disks?
|
|
|
|
ANSWER: It is not possible to keep a large distribution like the MCC
|
|
interim versions absolutely up-to-date; if you want the very latest
|
|
copy of one or another program, you must get it from one of the ftp
|
|
sites yourself, and it might not cooperate with existing utilities.
|
|
On the other hand, MCC interim versions provide a large number of
|
|
utilities in a simple form, compiled in the same way, and integrated
|
|
into a fairly stable system. An MCC version of Linux will not have
|
|
its bugs fixed as rapidly.
|
|
|
|
|
|
QUESTION: How is installing MCC interim Linux different from installing
|
|
Linux from the standard boot/root disks?
|
|
|
|
ANSWER: The MCC interim versions of Linux do not use a floppy as their
|
|
root disk; instead they use a ramdisk contained on the boot image.
|
|
This means that more programs can fit on fewer disks, but that more
|
|
memory is used during installation. This may cause problems on
|
|
systems with only 2megabytes of memory. Also, parts of the MCC
|
|
interim systems may assume that some utility or library has been
|
|
installed from the same MCC interim system, and so may not work
|
|
properly if you have installed Linux from the standard root/boot
|
|
disks.
|
|
|
|
QUESTION: How can I find out more about the MCC interim versions of
|
|
Linux?
|
|
|
|
ANSWER: The file README in mcc-interim/0.97p2 at the various sites
|
|
mentioned describes the available files. The file README.install in
|
|
the same directory describes the installation in detail.
|
|
|
|
QUESTION: How do I go about installing the MCC Interim release?
|
|
|
|
ANSWER: FTP to ftp.mcc.ac.uk:/pub/linux/mcc-interim or one of the
|
|
mirror sites and grab all of the images and the gobs of README files.
|
|
|
|
Just rawrite these images to floppies and boot from the boot-US (or
|
|
boot-UK) image (read the Q/A above on the bootdisk/rootdisk combo for
|
|
instructions on using rawrite and so on). The reason you have a US and a UK
|
|
boot and util disk is that the keyboard codes are different depending on the
|
|
country.
|
|
|
|
After booting the boot disk, you'll be prompted to put in the util-US (or
|
|
util-UK) disk and proceed with the installation. The basic steps that you'll
|
|
take are:
|
|
|
|
-- run fdisk to create Linux partitions
|
|
-- reboot from the boot floppy, then put in the util disk when asked
|
|
-- run mkfs to make filesystems and mkswap to make swap space on those
|
|
partitions
|
|
-- Mount each of the disks in turn and run the install script on each
|
|
of them
|
|
|
|
It's actually pretty simple, and the installation scripts take care of
|
|
most of the work. The tough part is making the partitions and
|
|
filesystems, just read the "README.fdisk" with the MCC release on how
|
|
to do this.
|
|
|
|
|
|
QUESTION: Any information about the MJ-stuff ?
|
|
|
|
ANSWER: The MJ-release was meant originally to allow users to upgrade their
|
|
Linux system to the shared library structure. However, this setup has been
|
|
standard for some time, and the other releases already incorporate this.
|
|
You can still check it out: Following Wayne Davidson advice "the mcc-interim
|
|
distribution has slightly smaller binaries on it, so I only used the
|
|
mj set to fill in a few extra executables that I was missing. Now I
|
|
not only have more executables on my disk than before but more free
|
|
disk space than I started with." mj**** is the Martin Junius package
|
|
and can be found at ftp.dfv.rwth-aachen.de in pub/linux/mj-bin.
|
|
|
|
|
|
QUESTION: What's about SLS ?
|
|
|
|
ANSWER: (this is part of the FAQ written for SLS 0.98p5 by Peter
|
|
MacDonald).
|
|
SLS (Softlanding Linux System) Copywrite 1992, Softlanding Software.
|
|
|
|
which is NOT just an image dump of someones Unix system.
|
|
|
|
Also note that in the interest of preventing ftp storms, the version
|
|
of SLS that appears on the internet, is not quite the same as the
|
|
version distributed by Softlanding. Softlanding regularly gets a
|
|
whole new version which has the changes integrated. But the updates
|
|
to the Internet version are tailored to minimize the amount that has
|
|
to be downloaded to become current. That is why bugs manage to creep
|
|
in on me. I am not installing and testing the Internet version,
|
|
although, functionally, it should be quite close to the Softlanding
|
|
one.
|
|
|
|
So, why am I telling you this? After the next period of stability
|
|
(few changes to SLS), I will be uploading the Softlanding version of
|
|
SLS to tsx-11.mit.edu.
|
|
|
|
This distribution is freely available if you have internet
|
|
access, or an obliging friend with access to it.
|
|
|
|
The purposes of the SLS are the following:
|
|
0) provide an initial installation program (for the queasy).
|
|
1) utilities compiled to use minimal disk space.
|
|
2) provide a reasonably complete/integrated U*ix system.
|
|
3) provide a means to install and uninstall packages.
|
|
4) permit partial installations for small disk configs.
|
|
5) add a menu driven, extensible system administration.
|
|
6) take the hassle out of collecting and setting up a system.
|
|
7) give non internet users access to Linux.
|
|
8) provide a distribution that can be easily updated.
|
|
|
|
SLS is a binary mostly distribution (except for the kernel), and is
|
|
broken into multiple parts, or series, each of which is denoted by a letter
|
|
followed by the disk number as follows:
|
|
|
|
a1-aN: The minimal base system
|
|
b1-bN: Base system extras, like man pages, emacs etc.
|
|
c1-cN: The compiler(s), gcc/g++/p2c/f2c
|
|
x1-xN: The X-windows distribution
|
|
i1-iN: Interviews (doc and idraw)
|
|
t1-tN: TeX (document processing)
|
|
|
|
This scheme allows new disks to be added to the distribution without
|
|
changing the disk numbering. Also, the sysinstall program doesn't
|
|
have to be changed when new disks are added as the last disk is marked
|
|
by the presence of the file "install.end". And when interviews is
|
|
added, say as a new series "i", it can be installed with:
|
|
|
|
sysinstall -series i
|
|
|
|
Highlights of the base are: gcc/g++, emacs, kermit, elm/mail/uucp,
|
|
gdb, sc (spreadsheet), man pages, groff, elvis, zip/zoo/lh and menu.
|
|
Highlights of X are: X, programmers libs, 75 dpi fonts, games (spider,
|
|
tetris, xvier, chess, othello, xeyes, etc) and utilities like xmag,
|
|
xmenu, xcolormap and ghostscript. Approximate usage is as follows:
|
|
|
|
Tiny base system: 9 Meg (Series 'a')
|
|
Main base system: 25 Meg (Series 'a', 'b' and 'c')
|
|
Main base system + X11: 45 Meg (Series 'a', 'b', 'c' and 'x')
|
|
|
|
Please read the file COPYING which outlines the GNU copying
|
|
restrictions. The linux kernel is copywrite Linux B. Torvalds.
|
|
Various other copywrites apply, but the upshot is that you
|
|
may do whatever you like with SLS, except restrict others
|
|
in any way from doing likewise, and you must leave all copywrites
|
|
intact, and you can not misrepresent or take credit for others work.
|
|
|
|
AVAILABILITY
|
|
|
|
SLS is available from the address:
|
|
|
|
Softlanding Software
|
|
910 Lodge Ave.
|
|
Victoria, B.C., Canada
|
|
V8X-3A8
|
|
(604) 360-0188
|
|
|
|
More details about SLS can be asked to pmacdona@sanjuan.uvic.ca
|
|
|
|
QUESTION: How do I go about getting and installing the SLS release?
|
|
|
|
ANSWER: Ftp to one of the Linux sites and check out the files in the
|
|
"SLS" directory (usually under "packages" in the Linux directory).
|
|
The README files there explain it all; basically you download the
|
|
images (which are almost all DOS format files), rawrite the boot
|
|
disk to a floppy, and boot from it. Because the SLS release files are
|
|
DOS format, you don't have to rawrite them: the SLS installation reads
|
|
them directly. You can also get the SLS release on floppies by
|
|
snail mail for a nominal fee (for non-netters). See the SLS README
|
|
file for details.
|
|
|
|
|
|
III.C. SOME COMMON PROBLEMS
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: How can I boot Linux off of my hard drive?
|
|
|
|
ANSWER: You need to install the "LILO" program which changes the boot
|
|
sector of your hard drive to allow you to choose between a DOS or a Linux
|
|
partition to boot from. These programs are provided with most major
|
|
releases, or you can get them seperately from one of the FTP sites.
|
|
|
|
|
|
QUESTION: I have the previous Linux version, how can I upgrade it?
|
|
|
|
ANSWER: If you've never done this before, get the kernel sources from
|
|
your nearest FTP site (in a file named something like linux-*.tar.Z)
|
|
and unpack them into /usr/src/linux. Then edit the Makefile to your
|
|
taste, and run "make". Assuming you have GCC installed correctly, the
|
|
kernel should compile and you'll be left with a new "Image" which is your
|
|
new kernel: if you boot from harddrive, copy the Image to wherever you
|
|
told LILO to look for it, or if you boot from floppy dd the Image to a
|
|
new floppy. Make sure that you run "rdev" on the Image to make it look
|
|
for the correct partition for your root filesystem (if you specified
|
|
this correctly in the Makefile you don't need to do this).
|
|
|
|
Note: You may need to get the new sources for programs like "mount" or
|
|
"ps" corresponding to your new kernel version as well. These programs
|
|
tend to change with each kernel version, so after making your new kernel
|
|
make sure you have the most recent versions of these programs and compile
|
|
them.
|
|
|
|
If you HAVE done this before, you can just apply the source patches to
|
|
your old sources and then recompile (i.e. you don't have to get the
|
|
entire kernel sources all over again). Use the "patch" program to do
|
|
this.
|
|
|
|
|
|
QUESTION: How can I be sure I won't be writing over anything
|
|
important? I have to use DOS on my machine, and I don't want to
|
|
lose any files.
|
|
|
|
ANSWER: Back up everything. Just in case. Then, write some easily
|
|
recognizable pattern to the partition you have reserved for linux,
|
|
using some DOS tool. You can then use "cat /dev/hdX" under linux to
|
|
examine which of the partitions you used.
|
|
|
|
|
|
QUESTION: Linux mkfs doesn't accept the size I give the device, although
|
|
I double-checked with fdisk, and it's correct.
|
|
|
|
ANSWER: Be sure you give the size in Linux BLOCKS (1024 bytes), not
|
|
sectors. Also make sure that you have the right partition: partitions
|
|
are numbered "/dev/hda1", "/dev/hda2", and so on (and "/dev/hdb1",
|
|
"/dev/hdb2" for the second hard drive)... DON'T use "/dev/hda" or
|
|
"/dev/hdb" as they correspond to the entire disk, not just single
|
|
partitions.
|
|
|
|
|
|
QUESTION: I just rebooted my machine, and now Linux dies with a
|
|
"panic: trying to free unused inode". What's going on?
|
|
|
|
ANSWER: You probably forgot to "sync" before rebooting, which stores
|
|
on the disk physically the contents of the kernel buffers. You can
|
|
either run "fsck" on the partition to TRY to correct the problem (it
|
|
might fail), or re-mkfs and re-install the software on that partition.
|
|
|
|
|
|
QUESTION: I have a one partitionned 40Mb disk. If I run mkfs, what
|
|
happens?
|
|
|
|
ANSWER: If you do that, you will have an empty 40Mb Linux file system.
|
|
You should, at least, make on your hard disk, one partition per
|
|
operating system you want to use.
|
|
|
|
|
|
QUESTION: Can I use both OS/2 and Linux on my machine??
|
|
|
|
ANSWER: Yes! See the following two Q/A's about getting your OS/2 Boot
|
|
Manager to work. But, be warned: IF YOU USE OS/2, DO NOT USE LINUX's
|
|
FDISK TO CREATE LINUX PARTITIONS!! The problem is with a bug/feature in
|
|
OS/2's fdisk that tries to correct 'errors' in partitions that it doesn't
|
|
like... Linux partitions included. The solution: make your Linux
|
|
partitions with OS/2's fdisk, then use Linux's fdisk to change the
|
|
partition ID's to the right values (this is self-explanatory with Linux's
|
|
fdisk).
|
|
|
|
If you made your Linux partitions with Linux's fdisk, and OS/2 sees them,
|
|
it will think they have errors and end up trashing them.
|
|
|
|
|
|
QUESTION: I use OS/2's Boot Manager on my hard drive. How can I get it to
|
|
recognize Linux?
|
|
|
|
ANSWER: To do this, install LILO on your Linux root partition, NOT on
|
|
your hard drive's master boot record. The lilo command for this would be
|
|
(if /dev/hda3 is your Linux root partition, and your Linux kernel is in
|
|
/vmlinux):
|
|
|
|
/etc/lilo/lilo -c -b /dev/hda3 -v -v /vmlinux
|
|
|
|
Then use OS/2's fdisk to add it to the Boot Manager.
|
|
|
|
|
|
QUESTION: When I run Linux's fdisk it says "OPUS" for OS/2's Boot Manager
|
|
partition. Is this right? What's OPUS?
|
|
|
|
ANSWER: It's correct. OPUS is BBS software that used partition type 0x0A
|
|
long before OS/2.
|
|
|
|
*********************************************************
|
|
* *
|
|
* Answers to Frequently asked questions about Linux *
|
|
* *
|
|
*********************************************************
|
|
|
|
This post contains Part 2 of the Linux FAQ (4 parts).
|
|
It must be read *after* the first part.
|
|
|
|
================================8<=====8<==============================
|
|
CONTENTS (of this part)
|
|
|
|
IV. LINUX and DOS (part2)
|
|
V. SOME CLASSICAL PROBLEMS (part2)
|
|
VI. MISCELLANEOUS HINTS (part2)
|
|
VII. MORE HINTS (part2)
|
|
|
|
===================================8<====>8============================
|
|
|
|
|
|
IV. LINUX and DOS
|
|
=================
|
|
*** This section is co-written by Mark Komarinski, A. V. Le Blanc and
|
|
*** MM. Corsini. The official maintainer is Mark, if you have *any*
|
|
*** questions, critics \ldots, mail him at komarimf@craft.camp.clarkson.edu
|
|
*** Last Update 15.11.92
|
|
|
|
|
|
QUESTION: Is is possible to access DOS from Linux?
|
|
|
|
ANSWER: Yes.
|
|
(1) The mtools package allows you to access DOS files;
|
|
it emulates the DOS commands CD, COPY, DEL, DIR, TYPE, and others.
|
|
(2) Since approximately version 0.97 of the kernel, you can mount
|
|
DOS file systems as part of your Linux directory tree, providing you
|
|
have an appropriate mount command.
|
|
(3) A DOS emulator is in alpha test, which will allow some DOS programs
|
|
and utilities to run under Linux.
|
|
|
|
|
|
QUESTION: Why use mtools if you can just mount a drive?
|
|
|
|
ANSWER: Mtools is good if you want to do something quickly. For
|
|
example, if you want to get directories on a bunch of floppies. The
|
|
mount procedure requires you to mount the drive, get a directory, then
|
|
umount it. Mtools lets you get the directory with one command.
|
|
|
|
(Dirk Hohndel:) Mtools is really fast when copying disks. I mount the
|
|
SLS directory of my SUN to my linux box and use mcopy to get the files
|
|
on the disks. 3 times faster than using xcopy under DOS
|
|
|
|
QUESTION: How do I get the mtools package set up correctly?
|
|
|
|
ANSWER: The mtools package is available in source form on most Linux
|
|
ftp sites. The most recent version (As of Sept 1992) is mtools.n2,
|
|
and there are linked binaries and library (.a) files available as
|
|
well (for example, as part of MCC interim releases of Linux).
|
|
In the n2 release of mtools, there is only one executable binary
|
|
which works differently depending on its name: you can create hard
|
|
or symbolic links to it named mcopy, mdel, mdir, mtype, etc; this
|
|
is how the Makefile in version n2 of mtools does it, and it saves
|
|
several hundred kilobytes of disk space. Finally, you need the
|
|
correct information in the file /etc/mtools, which is described below.
|
|
|
|
QUESTION: What is the format of the file /etc/mtools?
|
|
|
|
ANSWER: A complete entry in the file /etc/mtools contains the following
|
|
fields: drive, device, fat, cylinders, heads, sectors, offset. Two
|
|
examples of entries from /etc/mtools are
|
|
|
|
A /dev/fd0 12 80 2 15
|
|
C /dev/hda1 16 0 0 0
|
|
|
|
which defines the DOS disk A: as accessible through the device /dev/fd0,
|
|
having a 12-bit FAT, 80 cylinders, 2 heads, and 15 sectors per track;
|
|
DOS disk C: is accessible through the device /dev/hda1, has a 16-bit
|
|
FAT, and its geometry is simply that of the hard disk where it lives.
|
|
The last three numbers can be 0 if you wish; this allows mtools to
|
|
try to figure out the disk's geometry itself, and perhaps to fail.
|
|
A 12-bit FAT is common for floppies, but may occur in small hard
|
|
disk partitions. A 16-bit FAT is common for hard disks.
|
|
This is an extract of my /etc/mtools file:
|
|
A /dev/fd0 12 0 0 0 # 3.5 1.4 Meg (autodetect)
|
|
B /dev/fd1 12 0 0 0 # 5.25 1.2 Meg (autodetect)
|
|
C /dev/hda1 16 0 0 0 # 1st partition of my Disk
|
|
|
|
QUESTION: Where can I find out more about mtools?
|
|
|
|
ANSWER: There are two detailed README files in the mtools.n2 distribu-
|
|
tion. These files treat compiling and using mtools. There is a file
|
|
README.mtools which treats only using mtools, which is a part of the
|
|
MCC interim version of Linux.
|
|
|
|
|
|
QUESTION: How do I use the DOS file system?
|
|
|
|
ANSWER: The DOS file system is part of the kernel. If you have a
|
|
kernel of level 97.1 or above, and an appropriate mount command, type
|
|
|
|
mount -t msdos [-o conv=text] /dev/hda1 /dos
|
|
|
|
to mount the partition /dev/hda1 as an MS/DOS file system on the
|
|
directory /dos. You'll need a recent mount command, from at least
|
|
release 97 or later of the root disk. Recent mount commands also
|
|
accept the options conv=binary|text|auto (default is binary) to
|
|
specify that text end-of-lines in DOS files are to be converted to
|
|
UNIX end-of-lines (by omitting carriage return characters) in no cases
|
|
(binary) or in all cases (text) or in cases that don't have 'well-
|
|
known binary extensions' (e.g., .EXE or .COM) (auto).
|
|
|
|
|
|
QUESTION: I want to use the DOS file system with either conv=binary or
|
|
conv=auto, but I want to convert text files from DOS to UNIX format,
|
|
or from UNIX to DOS format.
|
|
|
|
ANSWER: Use the utility todos/fromdos which comes as part of the
|
|
dosfs package, currently (Sept 92) in released in version 8, or
|
|
use the flip utility by Rahul Dhesi.
|
|
|
|
QUESTION: Where can I find out more about the DOS file system?
|
|
|
|
ANSWER: There is a README file included in dosfs.XX.tar.Z (the current
|
|
value of XX is 8), and an abbreviated version of this in the MCC
|
|
interim package.
|
|
|
|
|
|
QUESTION: Whenever I use mtools to read a 720K in an 1.44MB drive, I
|
|
get a long sequence of reset-floppy-errors, why?
|
|
|
|
ANSWER: This is what happens if you use the /dev/PS0 device (b 2 28),
|
|
to read a 720k floppy you have to use another device, for example
|
|
/dev/fd0. Or you may use the setfdprm utility.
|
|
|
|
|
|
QUESTION: This sounds me like a chicken and eggs problem, how can I
|
|
install the mtools package at the very beginning.
|
|
|
|
ANSWER: You have to use the rawrite stuff or the mount procedure.
|
|
|
|
|
|
QUESTION: Could someone explain how to use rawrite?
|
|
|
|
ANSWER: Well, rawrite is a DOS util, which write sequential sector of
|
|
a formatted disk/floppy. When a floppy has been rawritten, you can
|
|
(under Linux) untar it (use x, v, z and f flags). As an example:
|
|
a) under Dos use rawrite
|
|
rawrite
|
|
source: kermit.z
|
|
destination: a
|
|
b) boot under Linux, and perform a tar
|
|
tar zxvf /dev/fd0
|
|
tar zxvp < /dev/fd0
|
|
|
|
|
|
You DO NOT NEED TO MOUNT a rawritten disk
|
|
|
|
|
|
QUESTION: What is as86.tar.Z ?
|
|
|
|
ANSWER: It's the port of Bruce Evans' minix assembler, you need it to
|
|
be able to recompile Linux at your convenience. In fact this is ONLY
|
|
used for boot/setup.S and boot/bootsect.S they create 80x86 REAL mode
|
|
code.
|
|
|
|
|
|
QUESTION: Turbo (Microsoft) Assembler won't compile the Linux boot
|
|
code. In fact, some of the opcodes in these files look completely
|
|
unfamiliar. Why?
|
|
|
|
ANSWER: The Linux boot codes are written in Bruce Evans' minix
|
|
assembler, which has the same opcodes as the original minix assembler
|
|
ported to linux get as86.tar.Z Anyway there are a few differences
|
|
between these and normal DOS assemblers.
|
|
|
|
QUESTION: What about the dos emulator (dosemu)?
|
|
|
|
ANSWER: Dosemu is in alpha testing now, so it is very unstable and crashes
|
|
easily. Some programs (such as earlier versions of Turbo Pascal; TP
|
|
5.5 too) seem to work fine, but other programs such as dir /p will
|
|
crash the emulator.
|
|
Look in your favorite FTP site for the dosemu kit.
|
|
|
|
|
|
V. SOME CLASSICAL PROBLEMS
|
|
==========================
|
|
|
|
QUESTION: While running du I get "Kernel panic: free_inode: bit
|
|
already cleared". Also, du produces a ENOENT error for all the files
|
|
in certain of my directories. What's going on?
|
|
|
|
ANSWER: These are both consistent with a bad file-system. That's
|
|
relatively easy to produce by not syncing before rebooting, as linux
|
|
usually has 1.5MB of buffer space held in memory (unless you have <=4M
|
|
RAM, in which case the buffers are only about 0.5MB). Also linux
|
|
doesn't do anything special about the bit-map blocks, and as they are
|
|
used often, those are the thing most likely to be in memory. If you
|
|
reboot, and they haven't been written to disk ...
|
|
|
|
Just do an fsck on the device, the -a flag might repair it otherwise,
|
|
the only thing to do is to reinstall the filesystem from the Images.
|
|
|
|
A sync is done only every 30 seconds normally (standard unix
|
|
practice), so do one by hand (some people think you should do 3 syncs
|
|
after each other, but that's superstition), or by logging out from the
|
|
startup-shell, which automatically syncs the system. Unmounting a
|
|
filesystem also syncs it (but of course you can never unmount root).
|
|
|
|
Another (sad) possibility is that you have bad blocks on your disk.
|
|
Not very probable, as they would have to be in the inode-tables, just
|
|
a couple of blocks in size. Again there aren't programs available to
|
|
read a disk for bad sectors and put them in some kind of
|
|
"bad-sector-file". On IDE drives this is no problem (bad sectors are
|
|
automatically mapped away).
|
|
|
|
|
|
QUESTION: How can I partition my hard-drive to use Linux?
|
|
|
|
ANSWER: There are (at least) two ways to answer this. The easy way is
|
|
probably to use a program which will do it for you, such as the MS-DOS
|
|
fdisk, Minix fdisk, Xenix/Unix fdisk, or programs such as edpart.exe
|
|
or part.exe. With the 0.95a distribution, there is pfdisk. To use it
|
|
have a look in the beginner's guide written by I. Reid, it's clear and
|
|
it had worked for me like a charm. In the mcc-interim release ther is
|
|
also fdisk, which runs under Linux and manages partition tables
|
|
(it also creates extended partitions).
|
|
|
|
On the other hand, you can use a disk editor and modify the contents
|
|
of the partition table directly. This has been already done, and an
|
|
extensive explanatory note can be found in the mailing-list archives
|
|
(25th Jan. 92). You must also edit the bpb on the Dos partition you
|
|
are shrinking, otherwise Dos will step on Linux.
|
|
|
|
BTW It might be useful to set three (3) separated partitions for
|
|
Linux, one for the root, another one for the usr and a third one for
|
|
swap, as an illustration, my root partition is 10Meg, the usr is 22Meg
|
|
and instead of a swap partition I use a swap file. As an experience I
|
|
have used MS-DOS fdisk to partition my two hd and got no peculiar
|
|
difficulties.
|
|
You can, as long as you stay within the 64MB per filesystem limit
|
|
(Minix-filesystem limitation), have swap, root, etc, ... all on there.
|
|
|
|
|
|
QUESTION: I heard something about repartition a hard disk without
|
|
deleting everything on it, any clue?
|
|
|
|
ANSWER: It's not a program but a partition procedure which requires
|
|
a) a partitionning program
|
|
b) a sector editor
|
|
The procedure itself can be found (at least) in digest#132 Vol2.
|
|
|
|
|
|
QUESTION: What must I do to mkfs a floppy?
|
|
|
|
ANSWER: blocks are of size 1K so 1.44 floppy is 1440 blocks. The
|
|
floppy has to be formatted before this will work (e.g., fdformat can
|
|
do this from within Linux).
|
|
|
|
|
|
QUESTION: I have some trouble with tar/untar; any clue ?
|
|
|
|
ANSWER: The tar provided on .96 and latter is Pax (don't know for .98)
|
|
which do not accept the z flag. You can download the GNU tar at tsx-11
|
|
in /pub/linux/binaries/usr.bin
|
|
|
|
|
|
QUESTION: I can do this as root but not as non-root, is it a bug?
|
|
|
|
ANSWER: Except for an early make utility, the problem is caused by an
|
|
incorrect permission flag. The most common problems are about /tmp
|
|
which should be 1777 and /dev/ttys? which might be 766. So as root do
|
|
|
|
chmod 1777 /tmp ; chmod 766 /dev/ttys?
|
|
|
|
|
|
QUESTION: "du" reports twice the size showed with "ls -l", is it a
|
|
bug?
|
|
|
|
ANSWER: No it is not, the report is 512 bytes multiple (due to POSIX
|
|
requirement), for KB you just add the -k flag. You can add a du
|
|
function in your .profile which does this automatically, something
|
|
like du(){ /usr/bin/du -k $* }
|
|
|
|
|
|
QUESTION: Sometimes, I get "mount can't open lock file"; what does this
|
|
means?
|
|
|
|
ANSWER: This can happened for two reasons:
|
|
A) You try to mount something as non-root. In that case you can either
|
|
retry as root, or set the setuid bit to mount as follows:
|
|
- be sure that mount belongs to root, if not do 'chown root /bin/mount'
|
|
- set the setuid bit with 'chmod u+s /bin/mount'
|
|
BTW you have to do the same with umount (in order to be able to unmount)
|
|
Remark that it is NOT safe to allow anyone to perform mount/umount,
|
|
you should rather write a small utility that will make any user able
|
|
to mount/unmount a (and ONLY a) *floppy*
|
|
B) You are root. mount wants to open /etc/mtab and /etc/mtab~ - the
|
|
first one for reading, the second as lock file. If there is already a
|
|
mtab~ remove it. This can happen if you used once gnuemacs on mtab.
|
|
|
|
To forbid that case, just add the following entry in your /etc/rc file:
|
|
rm -f /etc/mtab
|
|
|
|
|
|
QUESTION: When I try "mount /dev/hd?? /user", I get error 2.
|
|
|
|
ANSWER: Be sure, that your mount point /user does exist; if not perform
|
|
a "mkdir /user".
|
|
BTW the error numbering is explained in /usr/include/errno.h
|
|
|
|
|
|
QUESTION: Since I have upgrade my Linux kernel, ps won't work anymore,
|
|
why?
|
|
|
|
ANSWER: Each time you upgrade (or re-compile the kernel), you should
|
|
perform a 'ps -U' (-U is for update the /etc/psdatabase).
|
|
|
|
Every time you boot a new kernel you have to do a 'ps U' to update
|
|
the psdatabase, after doing this you can remove the system file or
|
|
do a make clean.
|
|
|
|
The pathname to the system binary [/usr/src/linux/tools/system] is
|
|
stored in the psdatabase, so you only have to specify it if you have
|
|
moved your source tree or if you are creating the psdatabase for the
|
|
first time. The psdatabase is always '/etc/psdatabase'. The system
|
|
file is obtained in compiling the linux kernel (which I assume is
|
|
rooted in /usr/src/linux).
|
|
|
|
BTW: sometimes a patch makes recompiling ps necessary. Sometimes you
|
|
even have to patch the ps-suite.
|
|
|
|
|
|
QUESTION: Since Linux 0.96b I have a lot of core file all over
|
|
my disk. How can I sweep them away ?
|
|
|
|
ANSWER: Use the following command
|
|
find / -name core -exec rm {} \;
|
|
|
|
BTW: think twice before using this command, there might be a John Core
|
|
user on your system; this command will erase his mail :)
|
|
|
|
(Rick) If you never want to see another core file, put this line into
|
|
your /etc/rc file:
|
|
ulimit -c 0
|
|
|
|
provided you are a bash user :))
|
|
|
|
|
|
QUESTION: I can only log-in as "root", is it normal ?
|
|
|
|
ANSWER: No, add "rm -f /etc/nologin" in your /etc/rc.local file
|
|
|
|
|
|
VI. MISCELLANEOUS HINTS
|
|
=======================
|
|
*** This section is maintained by Matt Welsh (mdw@tc.cornell.edu). Please
|
|
*** mail me if you have any changes/updates/questions. Thanks -mdw
|
|
|
|
Special gcc information are located in section IX. A special section is
|
|
devoted to it since it's *the* compiler of Linux. I have subsectionned
|
|
this part in 3 subsections: Misc/Device Major-Minor/Serial Information.
|
|
|
|
VI.A. Misc information
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: It seems that $#@! ported on linux don't run correctly, what
|
|
do I do about reporting bugs?
|
|
|
|
ANSWER: (Matt Welsh) It's possible that either the program itself has a bug
|
|
or that Linux has a problem that this program brings out. :) But first check
|
|
that the size of the file(s) corresponds that of the files(s) on the FTP
|
|
sites where it's available. If they're different, either you downloaded them
|
|
incorrectly (i.e. you forgot to turn on "bin") or whoever put them on the
|
|
FTP site uploaded them incorrectly.
|
|
|
|
If that's not the problem, then post to comp.os.linux asking about the
|
|
program, to verify that it is a bug. PLEASE: when posting possible "bug
|
|
reports" include all error and output information from running/compiling
|
|
the program. Just saying "it doesn't work" isn't very helpful. Also mention
|
|
your specific setup, Linux version, GCC version, etc. Some of these things
|
|
depend on running under certain versions and you may have missed that
|
|
information.
|
|
|
|
Note that my "ml-linux-bugs@dg-rtp.dg.com" bug reporting list has been
|
|
phased out. It turns out that Linux has so few bugs, most of which are
|
|
resolved on the newsgroup or through Linus before I can accumulate them
|
|
and post. :) In short: if there's a bug in Linux or in Linux-ported
|
|
software, it will usually be fixed in the next patchlevel or version.
|
|
|
|
|
|
QUESTION: Has $#@! been ported to Linux?
|
|
|
|
ANSWER: First check out the FTP sites and read the monthly INFO-SHEET,
|
|
as well as the new "Linux News" and the META-FAQ's (all of which are
|
|
either available on the FTP sites and/or posted to the newsgroup as they're
|
|
written). Also check out the "Linux Project Registry" (posted to the
|
|
newsgroup and on the FTP sites) which lists ongoing/current Linux projects.
|
|
Also look in the "old" Linux digests and mailing-list archives, kept on
|
|
tsx-11.mit.edu and nic.funet.fi. Also, see if there's a GNU(*) version
|
|
of the program you're looking for (which are available everywhere).
|
|
Since Linux uses GCC as its native compiler, most GNU software ports
|
|
directly to Linux without problems. If all else fails, ask on the
|
|
mailing list or newsgroup if the program is ported and where it's
|
|
available.
|
|
|
|
|
|
(*) GNU stands for GNU's Not Unix, which (besides being a recursive
|
|
acronym) is a project started by the Free Software Foundation (the FSF)
|
|
to write a freely distributable version of Unix. The GNU kernel is
|
|
named HURD, and is based on Mach. It is currently being written, and is
|
|
not yet done. Many of the GNU utilities, however, are completed and are
|
|
much more functional than the original Unix utilities. Since they are
|
|
freely available, Linux is using them as well.
|
|
|
|
|
|
|
|
QUESTION: I've ported $#@! to Linux, what should i do to add it in the
|
|
standard distribution?
|
|
|
|
ANSWER: (Matt Welsh) First read the previous Q/A, then talk to the
|
|
maintainers of the various releases (MCC interim, SLS, and so on)
|
|
about including your program with those releases. The best way to make
|
|
programs available to the rest of the world is to upload it to one of
|
|
the Linux FTP sites (such as tsx-11.mit.edu:/pub/incoming or
|
|
sunsite.unc.edu:/pub/Linux/Incoming).
|
|
|
|
BTW Whenever you submit binaries, please think that if you link them
|
|
with shared libraries, this might cause problems for those who (gasp!)
|
|
don't have the shared libraries installed. You can either link them
|
|
using -static, and if someone wants to build a shared version on their
|
|
own machine they can get the sources (which you should also make
|
|
available) and build it themself. Or else provide the shared lib.
|
|
|
|
|
|
QUESTION: I want to port $#@! to Linux, what are the flags?
|
|
|
|
ANSWER: Recall that Linux implements subset of SYSV and POSIX, so
|
|
-DUSG and -DPOSIX work in general.
|
|
|
|
NOTE1: SIGBUS is not there, and can be safely commented out in general.
|
|
NOTE2: see section related to GCC, in the third part of this FAQ, for
|
|
more details.
|
|
|
|
VI.B. Major/Minor device number
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
*** This section is maintained by Rick Miller, any comments,
|
|
*** suggestions, remarks should be mailed to him at <RICK@EE.UWM.EDU>
|
|
*** Last Update: 17 Nov 1992 16:00:20 GMT
|
|
|
|
QUESTION: What are the device minor/major numbers?
|
|
|
|
ANSWER: Here's a preliminary listing from Rick Miller <RICK@EE.UWM.EDU>:
|
|
|
|
The Linux Device List
|
|
published by rick@ee.uwm.edu (Rick Miller, Linux Device Registrar)
|
|
|
|
Many thanks to richard@stat.tamu.edu and Jim Winstead Jr.
|
|
|
|
Majors:
|
|
0. Unnamed . (unknown) .... for proc-fs, NFS clients, etc.
|
|
1. Memory .. (character) .. ram, mem, kmem, null, port, zero
|
|
2. Floppy .. (block) ...... fd[01][dhDH]{360,720,1200,1440} or fd[01]
|
|
3. Hard Disk (block) ...... hd[ab] or hd[ab][1-?] (Extended>4)
|
|
4. Tty ..... (character) .. tty{0,1-8,63,64-127,128-?} or ttys{0-3,1-4}
|
|
5. tty ..... (character) .. special tty: owner of its calling process.
|
|
6. Lp ...... (character) .. lp[0-2] or par[0-2]
|
|
7. Tape .... (block) ...... t[0-?] (reserved for Non-SCSI tape drives)
|
|
8. Scsi Disk (block) ...... sd[0-?] or sd[0-?][0-?]
|
|
9. Scsi Tape (block) ...... st[0-?]
|
|
10. Bus Mouse (character) .. bm, psaux (mouse)
|
|
11. CD-ROM .. (block) ...... scd
|
|
|
|
Breakdown of minors by Majors:
|
|
------------------------------
|
|
|
|
0. Unnamed . (unknown) .... for proc-fs, NFS clients, etc.
|
|
Minors??? (Not yet implemented???)
|
|
|
|
1. Memory .. (character) .. ram, mem, kmem, null, port, zero
|
|
0. /dev/ram
|
|
1. (block): RAM-Disk (character): /dev/mem
|
|
2. /dev/kmem
|
|
3. /dev/null
|
|
4. /dev/port
|
|
5. /dev/zero
|
|
|
|
2. Floppy .. (block) ...... fd[01][dhDH]{360,720,1200,1440} or fd[01]
|
|
Minors are [drive + [4 * type]] where drive 0-3 == A:-D: (floppy)
|
|
and type is: 0: Autodetect 4: 720k in 3.5"
|
|
1: 360k in 5.25" 1.2M 5: 360k in 5.25" 1.2M
|
|
2: 1.2M in 5.25" 1.2M 6. 720k in 5.25" 1.2M
|
|
3: 360k in 3.5" 7. 1.44M in 3.5" 1.44
|
|
|
|
3. Hard Disk (block) ...... hd[ab] or hd[ab][1-?] (Extended>4)
|
|
0. First HD (/dev/hda), whole drive including Master Boot Record.
|
|
1-4. Partitions on the first HD.
|
|
5-8. Logical partitions within an extended partition on first HD.
|
|
64. Second HD (/dev/hdb), whole drive including Master Boot Record.
|
|
65-68. Partitions on the second HD.
|
|
69-72. Logical partitions within an extended partition on second HD.
|
|
|
|
Notes: BE *VERY* CAREFUL WITH /dev/hda AND /dev/hdb!! These two
|
|
devices signify the *entire* *drive*, not just one partition.
|
|
The only things that use /dev/hda or /dev/hdb are things that
|
|
need to read/change the partition table (like fdisk).
|
|
|
|
The names of the hard drives are not the same as under Minix.
|
|
|
|
Linux doesn't order anything. It perceives partitions in the
|
|
order in which they appear in the partition table. Thus,
|
|
/dev/hd?1 may be physically after /dev/hd?2.
|
|
|
|
4. Tty ..... (character) .. tty{0,1-8,63,64-127,128-?} or ttys{0-3,1-4}
|
|
0. /dev/tty0: This is the currently active Virtual Console.
|
|
1-63. /dev/tty#: Specific virtual consoles.
|
|
64-127. /dev/ttys*: Serial ports.
|
|
128-191. /dev/pty[??]: PTY Masters.
|
|
192-255. /dev/pty[??]: PTY Slaves.
|
|
|
|
Notes: There are several constants set in the kernel sources which
|
|
can be changed to compile a more customized kernel. They're
|
|
found in [/usr/src]/linux/include/linux/tty.h:
|
|
|
|
NR_CONSOLES The number of virtual consoles.
|
|
NR_SERIALS The number of serial lines.
|
|
NR_PTYS The number of pty's.
|
|
|
|
5. tty ..... (character) .. special tty: owner of its calling process.
|
|
0. /dev/tty: the tty that owns the process calling it.
|
|
|
|
6. Lp ...... (character) .. lp[0-2] or par[0-2]
|
|
1-3. Parallel (printer) ports. (Increasable in include/linux/lp.h)
|
|
|
|
Notes: The number of line printers is defined by LP_NO which is
|
|
found in [/usr/src]/linux/include/lp.h.
|
|
|
|
7. Tape .... (block) ...... t[0-?] (reserved for Non-SCSI tape drives)
|
|
This one's just getting started. No minor numbers are yet assigned.
|
|
It's not even in the source code.
|
|
|
|
8. Scsi Disk (block) ...... sd[0-?] or sd[0-?][0-?]
|
|
Minors numbers are [[16 * HostID] + partition]
|
|
|
|
Notes: The maximum number of SCSI drives is defined by MAX_SD
|
|
found in [/usr/src]/linux/kernel/blk_drv/scsi/sd.h.
|
|
|
|
Additional note (Eric Youngdale): In the new scsi drivers
|
|
there is no set maximum number of scsi disks, hence no need to fiddle
|
|
with sd.h Everything autoconfigures as the system boots.
|
|
|
|
9. Scsi Tape (block) ...... st[0-?]
|
|
Quoting from the source-code:
|
|
void do_st_request(void)
|
|
{
|
|
panic("There is no st driver.\n\r");
|
|
}
|
|
|
|
Notes: For future reference, the maximum number of SCSI tapes
|
|
is defined by MAX_ST which is found in
|
|
[/usr/src]/linux/kernel/blk_drv/scsi/st.h.
|
|
|
|
(E. Youngdale) The same is true here. There is no longer any
|
|
need to set MAX_ST, and it would be a bad thing to actually try. Even
|
|
though there is a MAX_SR in the cdrom code in the 0.98.5 kernel, the
|
|
new scsi code effectively eliminates this as well.
|
|
|
|
10. Bus Mouse (character) .. bm, psaux (mouse)
|
|
(If I recall, X Windows requires that
|
|
/dev/mouse be linked to one of these...)
|
|
0. /dev/bm: (Logitec?) bus mouse
|
|
1. /dev/psaux: PS/2 mouse port
|
|
2. /dev/bm: MicroSoft bus mouse
|
|
3. /dev/bm: ATI XL bus mouse
|
|
|
|
11. CD-ROM .. (block) ...... scd
|
|
Minors?
|
|
|
|
From: eric@tantalus.nrl.navy.mil (Eric Youngdale)
|
|
Date: 17 Nov 92 16:25:40 GMT
|
|
|
|
> For the cdrom, the minors are just the devices
|
|
> themselves. If you have one cdrom drive, the minor is 0. If you
|
|
> have two, then the minors are 0 and 1. Not much more to it than that.
|
|
|
|
> For a SCSI tape, each physical device has two minor numbers
|
|
> that are associated with it. If you have two tape drives, then
|
|
> minors 0 and 1 will refer to the first and second drives and the
|
|
> tape will be rewound when the device is closed. Minor numbers 128
|
|
> and 129 (i.e. 128+n) also refer to the first and second physical
|
|
> drives, but the tape will not be rewound after closing the device.
|
|
> If you have one tape, you could create the devices with the
|
|
> following commands:
|
|
|
|
> mknod /dev/rmt0 c 9 0
|
|
> mknod /dev/nrmt0 c 9 128
|
|
|
|
|
|
NOTE: all the numbers given are in decimal form (the one you can see if
|
|
you perform ls -l on /dev).
|
|
|
|
|
|
QUESTION: Could some one give me indication about the meaning of the
|
|
IRQ's ?
|
|
|
|
|
|
ANSWER: (alawrenc@sobeco.com:)
|
|
Standard IRQ's :
|
|
IRQ 0 - Timer
|
|
IRQ 1 - Keyboard
|
|
IRQ 2 - Slave 8259 (AT)
|
|
IRQ 3 - COM 2 / COM 4
|
|
IRQ 4 - COM 1 / COM 3
|
|
IRQ 5 - (XT) Hard Disk, (AT) LPT2
|
|
IRQ 6 - Floppy Disk
|
|
IRQ 7 - LPT1
|
|
|
|
AT only IRQ 8 - Real Time Clock
|
|
IRQ 9 - Re-direct to IRQ 2
|
|
IRQ 10 - Not Defined
|
|
IRQ 11 - Not Defined
|
|
IRQ 12 - Not Defined
|
|
IRQ 13 - 80287
|
|
IRQ 14 - Hard Disk (AT)
|
|
IRQ 15 - Not Defined
|
|
|
|
QUESTION: (Chuck Boyer) Could some one clear up the devices meaning?
|
|
|
|
ANSWER: (Jim Winstead Jr)
|
|
>port
|
|
|
|
This allows programs to access the hardware ports directly. Not
|
|
something you generally mess around with much.
|
|
|
|
>ptyp0-3
|
|
>ptypa...tty
|
|
|
|
These are the pseudo-tty 'master' devices. Each pty connection uses
|
|
a slave-master set of tty devices.
|
|
|
|
>tty0...
|
|
|
|
tty[1-8] are the virtual consoles associated with Alt-F[1-8]. tty0 is
|
|
the current virtual console (so writing something to tty0 goes to the
|
|
current vc).
|
|
|
|
>tty64 I've figured out is the modem connection
|
|
|
|
Yes, that would correspond to COM1 under DOS. However, the tty64 name
|
|
is obsolete - ttys[1-4] should be used instead.
|
|
|
|
>ttyp0...
|
|
>ttypa...
|
|
|
|
These are the pseudo-tty 'slave' devices.
|
|
|
|
>ttys1...
|
|
|
|
These are the serial devices. ttys1 corresponds to COM1 under DOS,
|
|
ttys2 corresponds to COM2, etc.
|
|
|
|
|
|
VI.C Special Serial
|
|
~~~~~~~~~~~~~~~~~~~
|
|
*** This section is maintained by Jim Gifford
|
|
*** (jgifford@attmail,world.std}.com
|
|
*** Last update October 1992.
|
|
|
|
Douglas E. Quale:
|
|
This has come up a couple of times already (including the case of
|
|
serial mice as well), but for the record stty acts on stdin not
|
|
stdout. Old stty's (from V7 through BSD4.3) used stdout, but this is
|
|
suboptimal and doesn't conform to POSIX. The GNU stty you are likely
|
|
using on Linux uses stdin, as does the stty distributed with BSD
|
|
Networking Release 2. (Also, ``stty -a'' is more informative about
|
|
possible parameters, although it's pretty hard for me to remember what
|
|
90% of that stuff does without refering to the man page.)
|
|
Jim Gifford:
|
|
However, there are a few older (of mysterious origin) stty's that work
|
|
on stdout(I have one myself!)
|
|
|
|
QUESTION: Is there a list somewhere where I can get help with serial
|
|
communications under Linux?
|
|
|
|
ANSWER: (Jim Gifford -- jgifford@world.std.com)
|
|
There is a list for the discussion of serial communications under
|
|
Linux. It is for problems, drivers, new developments, etc... with
|
|
the Linux serial devices. The list is: linux-serial@stolaf.edu
|
|
To join, send mail to linux-serial-request@stolaf.edu
|
|
I hope that this list will prove beneficial to the improvement of
|
|
Linux. This list is maintained by Michael K. Johnson as
|
|
linux-serial-request@stolaf.edu
|
|
|
|
QUESTION: When I run kermit under Linux, I get "Warning, Read access
|
|
to lock directory denied". What am I doing wrong?
|
|
|
|
ANSWER: Nothing, you just need to create /usr/spool/uucp (kermit 4.6?)
|
|
or /usr/spool/locks (this is for the kermit5A), which is where kermit
|
|
like to lock files.
|
|
|
|
QUESTION: What are the major, minor numbers for the serial ports under linux?
|
|
|
|
ANSWER: Major 4, Minor :
|
|
64 /dev/ttys0 - com1
|
|
65 /dev/ttys1 - com2
|
|
66 /dev/ttys2 - com3
|
|
67 /dev/ttys3 - com4
|
|
|
|
QUESTION: can anyone give me a sample /etc/inittab entry for login
|
|
from a pc attached to serial line /dev/ttys2?
|
|
|
|
ANSWER: "Humberto speaking :), updated by Rick Miller"
|
|
First set up the modem to turn off echo and enable auto answer, I do
|
|
this in kermit by connecting to the modem and typing "ate0s0=1"
|
|
followed by enter (w/o quotes). Then setup inittab to spawn getty on
|
|
the modem
|
|
ttys2:vt100:/etc/getty -m 1200 ttys2
|
|
(Replace "vt100" with the name of the /etc/termcap entry for the
|
|
terminal type you will use, or use "dumb" if you don't have one.)
|
|
|
|
Then it should work. Some modems can be permanently set to disable
|
|
echo and set auto answer, see your manual.
|
|
|
|
Jim Weigand says:
|
|
disable all messages. This will prevent getty from hanging up
|
|
your modem.
|
|
Set For:
|
|
ATE0 No echo
|
|
ATQ1 No messages
|
|
ATS0=2 Answer 2nd ring
|
|
ATS7=60 1 minute to answer (shorter if 2400 baud)
|
|
You can use kermit to set these. Do an AT&W to save for power-up.
|
|
|
|
Michael K. Johnson says:
|
|
If you would rather not save these commands as defaults to come up
|
|
on power-up, perhaps because you want to use your current modem
|
|
settings under a DOS communications package, you can also shove
|
|
these command out ttys? from /etc/rc (or /etc/rc.local) using
|
|
the command:
|
|
echo "<MODEM_SETTINGS>" > /dev/ttys?
|
|
|
|
QUESTION: How do I set parameters like parity for serial login?
|
|
|
|
ANSWER: Use stty and redirect input from the serial line.
|
|
ex: stty parodd < /dev/ttys2 which gives ttys2 odd parity.
|
|
type stty -a to get an idea of possible parameters.
|
|
Or 'man stty' as well :)
|
|
|
|
|
|
VII. MORE HINTS
|
|
===============
|
|
|
|
This part try to keep track of the different information
|
|
that appeared in comp.os.linux and on the list since beginning of
|
|
March. I tried to update it for KERENL_VERSION, so there might be some
|
|
mistakes. Moreover take care to use the correct library and include
|
|
stuff, and the ad-hoc gcc you use !!!
|
|
|
|
|
|
QUESTION: How can I backup my Hd under Linux ?
|
|
|
|
ANSWER: I know at least two ways. One possibility is tar and mtools,
|
|
another possibility is the diskbackup/diskrestore of Diamano Bolla
|
|
(digest37 vol. #2) which saves big hd to floppies using the
|
|
stdin/stdout. These utilities have been uploaded to the major sites in
|
|
file disksplit.tar.Z.
|
|
An example usage (Roger Binns) is:
|
|
|
|
tar cvf - bin dev usr etc .. | compress | diskbackup
|
|
|
|
and to restore:
|
|
|
|
diskrestore | uncompress | tar xvf -
|
|
|
|
BTW: if you are on Ethernet you could send your files via tar..|rsh (tar...)
|
|
or even via NFS to a host which is regularly backed up !
|
|
|
|
|
|
QUESTION: Where is 'which' ?
|
|
|
|
ANSWER: It depends on the sh you are running:
|
|
in bash 'type -path'
|
|
in tcsh it's a builtin
|
|
|
|
for rc you can try the following (untested by me) script from
|
|
Kevin Brown:
|
|
|
|
#!/bin/sh
|
|
for i in `echo $PATH | sed 's/:/ /g'` ; do
|
|
for j in ""$@" ; do
|
|
if test -x "$i/$j" ; then
|
|
echo "$i/$j"
|
|
fi
|
|
done
|
|
done
|
|
|
|
QUESTION: How to use setterm: for the novice?
|
|
|
|
ANSWER:The setterm utility provides access to most of Virtual Consoles
|
|
(VCs) functionality. You can set your screen up to blank at 10
|
|
minutes using:
|
|
setterm -blank 10
|
|
|
|
You can set colors, and clear the screen. For a full list of commands,
|
|
just type "setterm" with no arguments.
|
|
|
|
There are a few tricks with the screen dumper can really make VCs go a
|
|
long way. Here are a few of the common ones that I use:
|
|
|
|
setterm dump
|
|
|
|
Dumps the contents of the current VC to screen.dump (in the current dir).
|
|
|
|
setterm dump 4
|
|
|
|
Dumps the contents of VC 4 to screen.dump
|
|
|
|
setterm -file mydumpfile -dump 4
|
|
|
|
Dump the contents of VC 4 to the file mydumpfile
|
|
|
|
setterm -file /dev/tty0 -dump 4
|
|
|
|
Dumps the contents of VC 4 to the current VC.
|
|
|
|
setterm -file /dev/tty4 -dump
|
|
|
|
Dumps the contents of the current VC to VC 4.
|
|
|
|
setterm -file /dev/ttys1 -dump
|
|
|
|
Dumps the contents of the current VC to the serial port.
|
|
Handy if you are logged on and want to paste a screen full without
|
|
having to resort to doing a file transfer.
|
|
|
|
setterm -file mydumpfile -append 4
|
|
|
|
Appends to instead of overwriting the dump file. Useful if you
|
|
have several screens you wish to concatenate.
|
|
|
|
|
|
QUESTION: I've tried clear/reset which exist on most of unix but it
|
|
doesn't work, have I missed something?
|
|
|
|
ANSWER: setterm -clear or setterm -reset will solve your missing. For
|
|
clear, you can also write a small script (which use the cl: part of
|
|
/etc/termcap wrt your TERM), or use bash where ctrl-l will do it for
|
|
you.
|
|
|
|
|
|
QUESTION: I know there are VC, but where is the setterm stuff?
|
|
|
|
ANSWER: It's in the current distribution (i.e. on the images), the
|
|
source can be found in virtcons.tar.Z at nic.
|
|
|
|
|
|
QUESTION: I know there are shared libraries; does there exist an easy
|
|
way to check an executable for sharing ?
|
|
|
|
ANSWER: (Josh Yelon & HJ Lu)
|
|
(J.Y.) An executable which shares a library is linked with an
|
|
(ordinary, non-shared) "stub" version of the library. One of the first
|
|
thing this stub does (when the executable is run) is to ask the kernel
|
|
to load the (big) "shared version" of the library (which is usually
|
|
named /lib/lib.XX.XX) The upshot of this is that in the code for the
|
|
stub (part of the executable), is the string "/lib/lib.XX.XX"; which
|
|
can be searched by using 'strings' or 'grep'.
|
|
(HJ. L.) if you have gcc2.11a or later the shared image is changed to
|
|
/lib/libxxxx_vyy_zzz. And you should better use nm to find
|
|
"__shared_lib" (nm failed on stripped executable). You can also write
|
|
a function for "file", which can even check the version number ....
|
|
|
|
(Claude Morin:) There exists at tsx-11 ldd.tar.Z If you follow
|
|
the instructions, you will be able to type "ldd <EXECUTABLE>" to List
|
|
the Dynamic Dependencies of the executables. In other words 'ldd'
|
|
prints the name of the shared libraries needed by the executable,
|
|
nothing appears for static one.
|
|
|
|
QUESTION: What is the rdev program provided in the images?
|
|
|
|
ANSWER: It's a program from Werner Almesberger of ETH. With no
|
|
argument it prints the first line of /etc/mtab. With one argument, a
|
|
boot-image, it prints the device configured as the root device, and
|
|
with two arguments, a boot image and a device, it sets the device as
|
|
default root in the specified image.
|
|
|
|
|
|
QUESTION: How to start Linux from drive B?
|
|
|
|
ANSWER: There is a DOS utility called boot_b.exe (look at DOS ftp).
|
|
Another simple way is to open the box and invert the cables.
|
|
|
|
|
|
QUESTION: The program boot_b works fine /but/ once the first disk is
|
|
read the system go back to the first drive, any hints?
|
|
|
|
ANSWER: Yes, change the bootimage in just the same way that you change
|
|
it to boot on the hard drive, execept that the major/minor pair is
|
|
different. All these information are in the file INSTALL-0.10.
|
|
Remember that if you use a sun or other endian machine, you will need
|
|
to reverse the byte order when you run the filter program (also in the
|
|
same file).
|
|
|
|
|
|
QUESTION: How can I get Linux to boot directly from the harddisk?
|
|
|
|
ANSWER: (Rick) The best option right now is LILO version ALPHA.6. It
|
|
has been generally agreed that the days of using "shoelace" are at an
|
|
end.
|
|
|
|
QUESTION: I use shoelace, but I want to change my root partition, what
|
|
is the process to get rid of it?
|
|
|
|
ANSWER: With Norton utility you can put back a standard boot sector.
|
|
Another possibility is to restore the old boot sector (the one you
|
|
should have backup *before* installing shoelace).
|
|
|
|
|
|
QUESTION: Sometimes, when I want to remove a directory, I get an error
|
|
message, is it a (known) bug?
|
|
|
|
ANSWER: No, There is no bug at all, you probaly have another shell
|
|
on another VC whose working directory is either the one you try to
|
|
remove, either a subdirectory of it.
|
|
|
|
|
|
QUESTION: I'm looking for init, getty, login, passwd stuff, where
|
|
can I find them?
|
|
|
|
ANSWER: You should find it in shadow.tar.Z (only sources), at least
|
|
at tsx in the usr.bin directory. Many people have reported some troubles
|
|
with the *OLD* shadow-passwd (shadow-bin.tar.Z and shadow-src.tar.Z, so
|
|
do not use them anymore); an alternative might be the mcc-interim
|
|
which contains standard passwd binary. There is also the Peter Orbaek's
|
|
admutil-1.?.tar.Z and poeigl-1.?.tar.Z which contains source for
|
|
shutdown, su, chsh, passwd and a system V init compatible.
|
|
|
|
|
|
QUESTION: How can I setup a user account other than root ?
|
|
|
|
ANSWER: You can either use the adduser program, either do it manually.
|
|
In the later case, you have to:
|
|
a) edit /etc/passwd as root and add a line of the following format:
|
|
user:passwd:uid:gid:user name:home directory:login shell
|
|
|
|
user is the login name; uid is the numeric user id, it should be
|
|
unique; gid is the numeric group id, this number should correspond to
|
|
an entry in /etc/group. The passwd field should be left blank 'cause
|
|
it is stored in an encrypted form [to set this field just use the
|
|
passwd program].
|
|
example
|
|
faq::200:5:Marc-Michel:/home/faq:/bin/sh
|
|
b) Still as root, you shoud now create the home directory and set the
|
|
correct ownership.
|
|
mkdir /home/faq
|
|
chown faq /home/faq
|
|
chgrp 5 /home/faq
|
|
|
|
|
|
QUESTION: I've been trying to get Linux to run on my [3/4]86 box. It
|
|
can't even boot. Any suggestions?
|
|
|
|
ANSWER: The most common error/problem is writing the bootimage to a
|
|
low density disk. It fits, but the bootstrap code will only recognize
|
|
high density disk. So try to format explicitely disk as high density:
|
|
- for 3.5", 'format a: /n:18 /t:80 '
|
|
- for 5.25", 'format a: /n:15 /t:80 '
|
|
|
|
|
|
QUESTION: Does there exist games, languages (other than C), and
|
|
anything which make the system more friendly?
|
|
|
|
ANSWER: Yes, among other things there are rogue and yahtzee; TeX;
|
|
Prolog, Perl.. but in general, if you want some extra tool port it to
|
|
Linux this is also a good beta-testing exercice.
|
|
|
|
|
|
QUESTION: Whenever I use uemacs 3.1X on a symlink, the symlink does
|
|
not exist anymore, why?
|
|
|
|
ANSWER: (Tristram Mabbs) Since ue3.10, uemacs uses 'safe save' mode,
|
|
writing the file to a temporary and moving it OVER the original. In
|
|
the process, this deletes the original. To prevent this just add the
|
|
following in your emacs '.rc' file: set $ssave FALSE
|
|
|
|
|
|
QUESTION: Uemacs doesn't work anymore with 0.95a, whenever I want to
|
|
save a file; what can I do?
|
|
|
|
ANSWER: ^S and ^Q are used for flow control. One solution is ^X^W
|
|
followed by the filename, or M-X save-file, try also ^XS it could work
|
|
for some version (not mine). Another possibility,
|
|
if you have download the stty.tar.Z file, is to do stty -IXON
|
|
before you first use uemacs (this can be included in your .profile).
|
|
And the last is to recompile the Peter Orbaek init-1.2 package.
|
|
|
|
|
|
QUESTION: I have an SVGA, but Linux detect an EGAc/EGAm; is it normal?
|
|
|
|
ANSWER: (Jim Winstead) This is correct actually. You have an EGA+ card
|
|
(SVGA) with a Color/Mono monitor. The only four possibilties are EGAc,
|
|
EGAm, *MDA and *CGA (according to the code in
|
|
kernel/chr_drv/console.c).
|
|
The true test, if Linux detects your video card, is if you press
|
|
<RETURN> at the "Press <RETURN> to see SVGA- ..." boot-time message.
|
|
If you have a SVGA recognized card, it will ask you to choose a
|
|
screen size. If not detected, the default is 80x50 mode.
|
|
BTW if you have no SVGA, press the <SPACE> and you are in 80x25 mode.
|
|
|
|
If you have dowloaded the kernel, you can automatically skip this
|
|
query at boot-time if you set the SVGA_MODE variable in the main
|
|
Makefile before compiling a new bootimage.
|
|
|
|
|
|
QUESTION: How can I change the keyboard repeat rate?
|
|
|
|
ANSWER: (Michael K Johnson) In boot/setup.S there are the lines:
|
|
! set the keyboard repeat rate to max
|
|
mov ax,#0x0305
|
|
mov bx,0x0000
|
|
int 0x16
|
|
|
|
If you don't want to change the repeat rate at all, just comment out
|
|
these lines. If you want something in the middle, change the
|
|
mov bx,0x000
|
|
by mov bx,0x??yy
|
|
where ??yy is determined by (Ralf Brown's interrupt list)
|
|
bh= delay value (0x00 = 250ms to 0x03= 1000ms (one sec))
|
|
this is the delay before the repeat is performed
|
|
bl= repeat rate (0x00 =30/sec to 0x1f=2/sec; 0x0c=10/sec [default])
|
|
|
|
|
|
QUESTION: I compiled fdformat.c and ran it on 1.44Mb and 1.2Mb, the
|
|
results are unreadable, any clue?
|
|
|
|
ANSWER: (M. Pereckas) fdformat only low-level formats the disk. to use
|
|
the fdformatted disk with DOS filesystem, run mformat on the disk.
|
|
Mformat writes DOS filesystem information but is unable to low-format
|
|
:). In order to put a Linux filesystem on a (low)formatted disk you
|
|
have to mkfs it.
|
|
|
|
QUESTION: Is it possible to disable the 3-fingers salute
|
|
(ctrl-alt-del) ?
|
|
|
|
ANSWER: Yes, in kernel/sys.c you can read the following:
|
|
|
|
/*
|
|
* this indicates wether you can reboot with ctrl-alt-del: the deault is yes
|
|
*/
|
|
static int C_A_D = 1;
|
|
|
|
there is also a small utility written by Linus in digest242 vol#2
|
|
|
|
|
|
QUESTION: Could some one explain the information provided at boot-time?
|
|
|
|
ANSWER: (Jim Winstead Jr)
|
|
> serial port at 0x03f8 is a 16450
|
|
> serial port at 0x02f8 is a 16450 (what's that the uart chip?)
|
|
|
|
Right, the last number should either be 8250, 16450, 16550, or 16550a,
|
|
and on the two 16550 models, it will report that FIFO's have been
|
|
disable (16550) or enabled (16550a).
|
|
|
|
> 8 virtual consoles (that's how many alt-F's I can get going?
|
|
> but only F1-4 actually work)
|
|
|
|
You can get sessions running on Alt-F[1-8], but the 'standard'
|
|
/etc/inittab only runs getty/login on Alt-F[1-4]. You can start
|
|
sessions on the other consoles by using 'doshell' or adding lines to
|
|
/etc/inittab.
|
|
|
|
> 4 pty's (are these the consoles F1-4?)
|
|
|
|
No, those are 'pseudo' ttys, which programs like MGR use to simulate
|
|
tty connections. That's probably a gross over-simplification, but it
|
|
gives you the general idea, I think. :)
|
|
|
|
> p_init: lp1 exists (0) (is that the (l)ine (p)rinter?)
|
|
|
|
Right.
|
|
|
|
|
|
QUESTION: What is the meaning of files ended by .T.Z (or .taz) ?
|
|
|
|
ANSWER: The suffix Z is for compressed files (to uncompress them use
|
|
the command `uncompress file.Z`).
|
|
The suffix T indicates a "tar file" the usual suffix is tar but, the
|
|
14 chars filename limit of the Minix filesystem makes it cumbersome to
|
|
use .tar.Z (to untar a file ended by .T, use the command
|
|
`tar options file.T` (see the man page for more details).
|
|
|
|
For the .taz file, change them as .T.Z and go-ahead.
|
|
|
|
|
|
QUESTION: I have upgraded the kernel from XX to YY (XX > YY), however the
|
|
login screen still says YY.
|
|
|
|
ANSWER: Just change the message in one of these files: /etc/issue and
|
|
/etc/motd. The former contains the message before the login, the later
|
|
is the one after you are logged in.
|
|
|
|
QUESTION: What is doshell good for ?
|
|
|
|
ANSWER: It's an old program provided in the early Linux version (0.12)
|
|
when the getty was not already there, it spawns a shell on any tty's.
|
|
(Mattew Gream): I do this quite often ( getty on tty1, 2, 3 and my
|
|
rc.local spawns a shell on tty4 as follows
|
|
'/usr/bin/doshell /dev/tty4 /bin/tcsh &'
|
|
|
|
|
|
QUESTION: I don't have the kernel sources, how can I change the keyboard
|
|
language?
|
|
|
|
ANSWER: You can use the fixkbd program written by
|
|
laurentj@hpgnse2.grenoble.hp.com. Its purpose is to fix the
|
|
keyboard map used in your kernel image. It works more or less a la
|
|
"rootdev" (or rdev).
|
|
|
|
|
|
*********************************************************
|
|
* *
|
|
* Answers to Frequently asked questions about Linux *
|
|
* *
|
|
*********************************************************
|
|
|
|
This post contains Part 3 of the Linux FAQ (4 parts).
|
|
It must be read *after* the 2 first parts.
|
|
|
|
===================================8<====>8============================
|
|
CONTENTS (of this part)
|
|
|
|
VIII. FEATURES (part3)
|
|
IX. GCC MISC INFORMATION (part3)
|
|
X. SCSI SPECIAL (part3)
|
|
|
|
===================================8<====>8============================
|
|
|
|
|
|
|
|
VIII. FEATURES
|
|
==============
|
|
|
|
QUESTION: I've read that linux has virtual consoles, what must I do to
|
|
get them?
|
|
|
|
ANSWER: Yes there are, you can access them with the left <ALT>-key
|
|
together with <FN>-key. With the Linux Images distribution, 4 consoles
|
|
are available, getty runs on them.
|
|
Notice that they are NOT accessible when running X (contrary to some
|
|
commercial unices).
|
|
|
|
QUESTION: When Linux boots, I get the following message "8 virtual
|
|
consoles"; how can I acess to the 5-8 vc's ?
|
|
|
|
ANSWER: If you want the getty to run on the 5-8, you should add the
|
|
corresponding entries in /etc/inittab. You can also just run sh on
|
|
them by using the doshell soft.
|
|
And then in either case, the ALT-F[5-8] will access the corresponding
|
|
vc.
|
|
|
|
QUESTION: What kind of shell is /bin/sh ?
|
|
|
|
ANSWER: It's the Bourne Again Shell, bash-1.12.3 and
|
|
compilation was straightforward, just "make"
|
|
that's all or nearly.
|
|
BTW There does exist different shells for Linux, these are:
|
|
bash, rc, zsh, tcsh and pdksh (a korn shell).
|
|
|
|
|
|
QUESTION: Does there exist a man page for **** ?
|
|
|
|
ANSWER: Download man.tar.Z from your favorite linux ftp site, there is
|
|
most of the fileutils man page -- either **** or g****, example there
|
|
is nothing on ld, but there is for gld :) --, check the whatis
|
|
database provided. The files in the cat1 dir are pre-formatted man
|
|
pages that the man program can use. Quite recently the man pages for
|
|
section 2 have been written (thanks Drew) and can be found, at least
|
|
at tsx-11 in /pub/linux/docs/man/man2.tar.Z
|
|
|
|
Also manpages are in the SLS on the b? disks.
|
|
|
|
BTW there is nroff and groff for Linux. Cawf 2.0 works just
|
|
fine for simple man pages, and a partial ms support too.
|
|
|
|
|
|
Moreover Michael Johnson is the coordinator for man pages under Linux,
|
|
he is looking for volunteers, so contact the DOC Channel.
|
|
|
|
QUESTION: Is there a simple man package (groff is too big):
|
|
|
|
ANSWER: "Cawf -man" also "fm -m" (Al Clark) tsx-11 in
|
|
/pub/linux/binaries/usr.bin/fm.tar.Z
|
|
|
|
|
|
QUESTION: What are the editors available in linux?
|
|
|
|
ANSWER: Right now there are uemacs-3.11, elvis-1.4 (1.5).
|
|
Gnu Emacs is there, read the section devoted to it in the 4th part of
|
|
this FAQ. Also the port of mg (micro gnu) has been done and can be
|
|
found at least at athos.rutgers.edu (128.6.4.4)
|
|
in pub/linux, mg is the binary and mg.tar.Z is the sources file. You
|
|
can also find a PD ed, and elvis has an ex mode. Finnally there are
|
|
joe, vile-3.11, elle (Elle Looks Like Emacs), Xedit and aXe.
|
|
|
|
QUESTION: Does there exist a printer package for Linux?
|
|
|
|
ANSWER: (R. Miller) Yes. The "plp" package is currently available
|
|
under the directory [/pub/linux]/BETA/plp on tsx-11 and its mirrors.
|
|
You may also print things manually like so: cat filename > /dev/lp1
|
|
(Note that though "/dev/lp0" exists, most people find that their
|
|
printer is on /dev/lp1. Use whatever the kernel says that it detects
|
|
in the boot-up messages.)
|
|
|
|
|
|
QUESTION: How do I make swapping work?
|
|
|
|
ANSWER: Quite simply, you need the swapon and the mkswap binaries.
|
|
Then you can choose between a swap partition or a swap file.
|
|
The mkswap is used to write the "swap signature", whilst the swapon
|
|
binary is to activate the swapping.
|
|
|
|
First of all you need a partition :), I assume it's the second of your
|
|
first disk namely /dev/hda2, and it's 10MB big
|
|
A) swap partition:
|
|
you have to indicate it's a swap area, this is done via mkswap
|
|
(instead of mkfs) which needs the name of the partition and the size
|
|
in blocks (a block is 1Ko big); the optional -c flag is for bad block
|
|
checking. So for our example you should perform:
|
|
mkswap [-c] /dev/hda2 10000
|
|
Then you need to indicate that you want linux to use the swap area,
|
|
this is done via swapon. In general it is set in the /etc/rc file,
|
|
just put the following entry:
|
|
/bin/swapon /dev/hda2
|
|
It can also be achieved via the /etc/fstab file
|
|
B) swap file:
|
|
The process is quite close; you need a partition, and a swap file.
|
|
Assume that I prefer a swap area of 4MB (I want to keep some place in
|
|
/dev/hda2). I need first to "dd" the file.
|
|
dd if=/dev/hda2 of=/swap_file bs=1024 count=4096
|
|
bs stands for block size, and count is the number of blocks
|
|
then I have to put the "swap signature" on that file:
|
|
mkswap /swap_file 4096
|
|
At this point, you should 'sync', just to be sure the signature is
|
|
effective. And finally add an entry in the rc file:
|
|
/bin/swapon /swap_file
|
|
|
|
|
|
QUESTION: When I boot I get one of the following messages:
|
|
"Unable to find swap signature" or "Bad swap-space bitmap"
|
|
|
|
ANSWER: You probably forgot to make your swap-device, use the mkswap
|
|
command.
|
|
|
|
|
|
QUESTION: How do I know if it is swapping?
|
|
|
|
ANSWER: You will notice it :)) First of all, Linux tells you at boot
|
|
time, "Adding swap: XXX pages of swap space", and if you start running
|
|
out of memory, you will notice that the disk will work overtime, and
|
|
things slow down. Generally a 2Meg RAM will make the system swap
|
|
constantly while running gcc, 4 Meg will swap occasionnaly when
|
|
optimizing big files (and having other things active, such as make).
|
|
Also, the command 'free' (from the ps package) reports total enabled
|
|
swap space and current swap use.
|
|
|
|
|
|
QUESTION: How is it possible to remove a swap file?
|
|
|
|
ANSWER: Simply perform a rm on that file, and remove the swapon of
|
|
your /etc/rc file.
|
|
|
|
|
|
QUESTION: How is it possible to remove a swap device?
|
|
|
|
ANSWER: mkfs the device, and remove the swapon of your /etc/rc file.
|
|
|
|
QUESTION: How much swap space do I need ?
|
|
|
|
ANSWER: Linux does not perform real swapping, it's rather paging (see
|
|
below for a more complete explanation). The swap area is *added* to
|
|
the memory and can be viewed as virtual memory, so choose the size you
|
|
need, example:
|
|
|
|
8MB RAM + 6MB swap => 14MB virtual memory
|
|
|
|
QUESTION: Could someone explain the swap process on Linux?, is it
|
|
swapping or paging ?
|
|
|
|
ANSWER: (Linus) Linux uses swap as /additional/ memory, one page of
|
|
the swap-space is used for the good-page bitmap and the swapspace
|
|
signature.
|
|
In fact Linux does only paging, no swaping in the meaning "write out
|
|
one whole process to disk".
|
|
The reason it's called swapping is that Linux used paging for memory
|
|
management on a low level since the very beginning, but didn't page to
|
|
disk at all until 0.12.
|
|
|
|
QUESTION: Is demand paging different from paging and How ?
|
|
|
|
ANSWER: (Linus) Demand-paging is really "demand loading of
|
|
executables" and is totally independent of the page-swapping
|
|
algorithms, although they have similarities. When Linux strts up a
|
|
process, no actual code space is loaded: I let the page exceptions
|
|
load in the executable as needed. Thus Linux demand-loads the code and
|
|
initialized data it needs.
|
|
Demand-loading has very good points: (a) it simplifies the exec system
|
|
call; (b) it means page sharing between that have excuted the same
|
|
file is easy to implement; (c) it cuts down on the amount of memory
|
|
required. When Linux runs out of real memory, it starts to lock for
|
|
pages it can swap out, but if it notices that the page is clean, it
|
|
just forgets about it, and demand-loads it when it's needed again.
|
|
Thta means that swap-file isn't needed as much, especially when
|
|
running big binaries such as gcc, where the code-pages can be
|
|
demand-loaded as you wish.
|
|
|
|
Point (c) means that even without any swap space, you can usually run
|
|
slightly larger programs that your memory setup would actually permit.
|
|
I've noticed this while running X and doing a kernel compilation +
|
|
something else wshen I've forgotten to turn on swapping: free reports
|
|
0 page available but things still work, although performance is
|
|
slightly down...
|
|
|
|
QUESTION: Is there any way to tell how much swap space you are using
|
|
or have left?
|
|
|
|
ANSWER: The free program provided with the ps package handles this.
|
|
|
|
|
|
QUESTION: I have a 2Megs box, but "free" reports only 1Meg why?
|
|
|
|
ANSWER: (Linus:) "free" doesn't concern with the memory the kernel has
|
|
allocated for itself. In other words what you see is the *user* memory
|
|
available. The kernel has taken the low 1Meg for it's use (~250Ko for
|
|
it and the rest for buffer cache and kernel data structures); for big
|
|
memory machine it could be even 2Megs.
|
|
|
|
QUESTION: What tape drives work with Linux ?
|
|
|
|
ANSWER: (24 sept. P. Riipinen)
|
|
- There is a working QIC-02 device driver for Linux, supporting (at
|
|
least) Everex/Wangtek cards.
|
|
- There are additional patches for the QIC-02 to support Archive
|
|
SC402/499R. You can find them in /pub/linux/alpha/qic-02 at tsx-11
|
|
There are some bugs in the driver but you can backup.
|
|
- Newer drivers are all SCSI, so check the SCSI section in this FAQ.
|
|
|
|
QUESTION: Is there only the %$#@ keyboard ?
|
|
|
|
ANSWER: There are Dannish, Finnish, French, German, Uk, US and DVORAK
|
|
keyboards. Set it in the main Makefile of the kernel sources, then
|
|
(re)compile the kernel again. Make sure the files in kernel/chr_drv
|
|
directory are recompiled.
|
|
|
|
|
|
QUESTION: (special FINNISH/US) I booteed up with the new image and
|
|
everything work except that some keyboard keys produce wrong
|
|
characters. Does anyone know what is happening?
|
|
|
|
ANSWER: Since 0.95a images are US product (and so are US-keyboard
|
|
oriented), BUT linux sources are FINNISH product, and so the default
|
|
keyboard is set to be FINNISH. The solution is in the previous Q/A.
|
|
|
|
|
|
QUESTION: Does there exist shared libs ?
|
|
|
|
ANSWER: (H.J. Lu, hlu@eecs.wsu.edu, 09/01/92)
|
|
|
|
The shared library under Linux started at 0.12. Peter MacDonald
|
|
collaborating with Linus made the first generation of shared library,
|
|
which is the base of the current classic shared library.
|
|
|
|
The kernel support of shared library under Linux is system call
|
|
|
|
extern int uselib (const char *__filename);
|
|
|
|
which loads an executable image with fixed entry point into memory,
|
|
just like the ordinary executables.
|
|
|
|
In crt0.s, a function which can find out if and which shared images
|
|
are needed and loads them is invoked before `main ()' is called if
|
|
necessary. David Engel and I developed a way to tell the loader which
|
|
shared images have to be loaded, utilizing the similar technique used
|
|
in global constructor in g++ 2.x with the help from GNU binary
|
|
utilities.
|
|
|
|
In the classic Linux shared library, we build a big executable image
|
|
for several libraries and make sure no external variables outside of
|
|
the participating libraries are referenced. Then we can get the
|
|
absolute addresses of all the global variables defined in the
|
|
libraries used to build that executable image. After that, we make a
|
|
stub library for each participating library which just has the
|
|
absolute addresses of all the global variable in it.
|
|
|
|
For each shared image, there must be one and only one file, usually
|
|
called, __shared.o, which defines a global variable containing
|
|
version, name and entry point of the shared image, and a dummy global
|
|
data. Among those libraries used to build the shared image, there must
|
|
be one library which will always be referenced whenever any other
|
|
library is referenced. We put `__shared.o' into the stub library for
|
|
that library and add a declaration for the dummy global data defined
|
|
in `__shared.o' which will make sure `__shared.o' will always be linked
|
|
in when any participating libraries are linked.
|
|
|
|
In gcc 2.2.2d, jump table, developed by David Engel, was introduced in
|
|
the shared library. At the beginning of each shared image, there is
|
|
a table in which every library function has a fixed entry address and
|
|
the instruction at that address is a jump which will lead to the
|
|
real library function. So we can change the library function without
|
|
changing the corresponding entry address of the jump table. For the
|
|
global data we put them at the beginning of data section of the shared
|
|
image. We have to separate them from text code and link them in fixed
|
|
order. It is very hard to maintain the same addresses for the global
|
|
data when library is changed. After the global data are set up properly
|
|
and some spaces are left for possible future changes (that is a very
|
|
tough procedure.), it isn't too difficult to maintain.
|
|
|
|
In the current implementation, only libc.a, libcurses.a, libdbm.a,
|
|
libtermcap.a and libm.a are built with jump table. The global data in
|
|
X11 libraries are too complicated to make jump table such that their
|
|
addresses won't change when there is a change in X11 libraries. It's
|
|
not apparent yet that the benefits gained from a jump table version of
|
|
the X libraries would offset the effort required to set it up and
|
|
maintain it unless we get some cooperation from X Consortium, which
|
|
is very unlikely. But they are linked with jump table version of
|
|
libc.a and libm.a. That means they don't have to be relinked when
|
|
there is a modification in libc.a or libm.a.
|
|
|
|
|
|
QUESTION: Does Linux work for SCSI drives?
|
|
|
|
ANSWER: Yes since v0.96. At headrest.colorado.edu in /pub/scsi, you
|
|
will find the last SCSI alpha/beta version and also a special SCSI
|
|
FAQ, read it, it contains the latter information than the one provided
|
|
in the SCSI section. You should, also, contact the linux-scsi list or
|
|
directly drew@cs.colorado.edu
|
|
|
|
|
|
QUESTION: Linux is supposed to work with ESDI drive. However I have
|
|
trouble with my Magtron MT-4115E (Joincom controler), any clue?
|
|
|
|
ANSWER: (Linus) Some harddisk don't like linux (even though they
|
|
should). Maybe not a bug but a deficiency.
|
|
(Mika) I had to remove the printk "unexpected hd interrupt" statement
|
|
in hd.c because I was getting so many of those messages. Be warned
|
|
that if there is any read error the system just hangs, even the
|
|
ctrl-alt-del won't work. You should be able to use your ESDI drives if
|
|
you could live with those nuisances.
|
|
|
|
QUESTION: How does one go about applying a patch to Linux ?
|
|
|
|
ANSWER: (Drew Eckhardt) In the unix world most of distribution are in
|
|
source form. This includes the operating system. To apply a patch, you
|
|
apply it with the 'patch' program to the affected sources. The patch
|
|
program takes as input the differences between the old and the new
|
|
version. After patching you need to recompile the sources.
|
|
|
|
Assume I want to apply a patch enclosed in the file XXX. First of all
|
|
I will look at the top of XXX, where the file affected is identified.
|
|
This may have aleading path attached to it. Either cd out to the
|
|
"root" of the patch, ie if I see
|
|
linux/kernel/blk_drv/blk.h
|
|
|
|
I would cd into /usr/src
|
|
(assuming it's the place where I can find linux/kernel...)
|
|
and then patch as follows
|
|
patch -p0 < whatever_place/XXX
|
|
|
|
or, you can specify a number of path components to strip from the
|
|
path. If I am in the blk_drv directory patching would be
|
|
patch -p3 < whatever_place/XXX
|
|
|
|
|
|
QUESTION: There are a lot of patches available (ps patch, NFS patches,
|
|
CD-ROM patches ...) can I be fairly confident the subsequent patches will
|
|
work?
|
|
|
|
ANSWER: This is not true yet for the current version; but it will be
|
|
so I kept it :)
|
|
No you can't, patching is a real beta tester art :)). People are not
|
|
working on the same patched release, so you have to check if the
|
|
patches you already applied works on the same kernel part, if not,
|
|
/great/, just apply them. If yes, check if there is an order, patch
|
|
creator knows that, and (should) try to warn patch user (in other
|
|
words: beta tester) otherwise you should edit the patch files (and
|
|
possibly make a brief note to others on this list/newsgroup or even a
|
|
cdiff) before applying them, another solution is to keep cool and wait
|
|
for the next version of Linux where, in general, the modifications
|
|
have been done but this behavior is /not/ Linux helpful.
|
|
|
|
|
|
QUESTION: I got the patches on some ftp sites, and applied them to the
|
|
kernel and tried to compile. It didn't !!. Are the patches buggy?
|
|
|
|
ANSWER: Before remake, just do a make clean in the directories
|
|
involved by the patches. This will force a rebuild of the .o and .a
|
|
files.
|
|
If you have a RCS running on your source tree, did you checked a
|
|
patched version of the files changed before /any/ CO either by you or
|
|
make
|
|
|
|
Finally, make sure the patches succeded. Normally, failed patches on a
|
|
file FILE will leave a FILE# file. Moreover you will get a "chunk
|
|
failed" message. It is possible to capture the output while patching,
|
|
with the following:
|
|
|
|
patch -p0 < patchfile | 2>&1 patch.result | more
|
|
|
|
|
|
QUESTION: What is VFS?
|
|
|
|
ANSWER: (Ted) Linux 0.96 already has Virtual FileSystem, which means
|
|
that it acts as a filesystem switch. It makes it easy for someone to
|
|
design another filesystem format and include it in the Linux kernel
|
|
along with the standard minix filesystem format. So it /enables/
|
|
someone to design a robust filesystem which would have some nice
|
|
properties (no 14 chars file name limitation, nor 64Meg limit), and
|
|
could be included in the kernel in such a way that both the Minix and
|
|
the new one could be mounted at the same time. This solves the
|
|
uncompability problem; since the root disk could still use the Minix
|
|
filesystem, while the hardisk could be using the new one.
|
|
|
|
|
|
|
|
QUESTION: What's about Bus Mice ?
|
|
|
|
ANSWER: (Nathan I. Laredo) Since the Linux v0.96c-pl2 the kernel does
|
|
support LOGITECH and BUS MICE
|
|
If you are unsure that you have a bus mouse or not, check to see if
|
|
your mouse card has a selection for a sample rate switchable between
|
|
30Hz and 60Hz (or possibly 25/50Hz), if it does not, then it is NOT a
|
|
true bus mouse (InPort mice for example will not work with this
|
|
driver).
|
|
To create a bus mouse device:
|
|
mknod /dev/mouse c 10 0
|
|
|
|
|
|
QUESTION: What's about TeX ?
|
|
|
|
ANSWER: The primary site for Linux TeX is 129.78.66.1, this is
|
|
P. Williams' site in Australia. The stuff at tsx-11 was posted by
|
|
T. Dunbar who does support/maintain the dvilj stuff.
|
|
|
|
|
|
QUESTION: What's about LILO ?
|
|
|
|
ANSWER: (Werner Almesberger)
|
|
LILO - Generic Boot Loader for Linux ("LInux LOader")
|
|
|
|
This is an ALPHA test release of a new boot loader. Be sure to have
|
|
some means to boot your system from a different media if you install
|
|
LILO on your hard disk.
|
|
|
|
Features
|
|
--------
|
|
|
|
- does not depend on the file system. (Tested with Minix, EXT FS and MS-DOS
|
|
FS.)
|
|
- can be used to boot from floppies and from hard disks.
|
|
- can replace the master boot record.
|
|
- can boot non-Linux systems (MS-DOS, DR DOS, OS/2, ...) and unstripped
|
|
kernels.
|
|
- supports up to 16 different boot images that can be selected at boot
|
|
time. Root and swap disk/partition can be set independently for each
|
|
image.
|
|
- boot sector, file map and boot images can be all on different disks or
|
|
partitions.
|
|
|
|
|
|
Restrictions and known problems
|
|
-------------------------------
|
|
|
|
- SCSI disks are not fully supported yet. (Still waiting for some kernel
|
|
changes.)
|
|
- booting other operating systems doesn't seem to work everywhere. If
|
|
everything but booting a non-Linux OS from LILO works on your system,
|
|
you should boot LILO by BOOTACTV and select the alternate OS with the
|
|
latter as a temporary work-around.
|
|
- booting non-Linux systems from the second hard disk ("D:") is not yet
|
|
supported.
|
|
|
|
Please send all bug reports to almesber@nessie.cs.id.ethz.ch
|
|
|
|
|
|
QUESTION: What's about MGR ?
|
|
|
|
ANSWER: (General Information grabbed from various sources)
|
|
There is a MGR channel available , contact the request adress with
|
|
help in the body: linux-activists-request@niksula.hut.fi
|
|
The stuff can be found at banjo in pub/Linux/MGR
|
|
In brief:
|
|
|
|
MGR provides:
|
|
- multiple overlapping windows
|
|
- multiple fonts
|
|
- text and graphics in each windows
|
|
- a simple popup menu package
|
|
- a client/server model 'a la' X
|
|
- independance from any peculiar networking technology
|
|
|
|
MGR consist of a server process and some clients. Each client has his
|
|
own window, and can create subwindows. Clients communicate with the
|
|
server via a bidirectionnal channel. A C library is provided.
|
|
|
|
When a new window starts, it is as a terminal emulator running the
|
|
shell; for more information you can grab the mgr-man.out from
|
|
bellcore.com
|
|
|
|
|
|
QUESTION: I have successfully compiled MGR, but when I try to run the
|
|
program I get "can't find mouse" or "already in use", any clue?
|
|
|
|
ANSWER: try the following "mgr -m /dev/ttys1" if the mouse is on
|
|
the serial 1. Another possibility is to link /dev/mouse with
|
|
/dev/ttys1 (assuming your mouse is on serial 1). Or if it's a bus
|
|
mouse, "mknod /dev/mouse c 10 0" once.
|
|
|
|
QUESTION: Any tips for MGR?
|
|
|
|
ANSWER: Well, I have tried it on my 386Sx Ega/Vga; the screen is Ok
|
|
but the Logitech mouse I have is not well recognized.
|
|
|
|
BTW check the major/minor number for pty's; they should be character
|
|
device with 4 as major and 128 and bigger as minor:
|
|
ptyp0 c 4 128
|
|
ptyp1 c 4 129
|
|
...
|
|
ttyp0 c 4 192
|
|
ttyp1 c 4 193
|
|
|
|
QUESTION: What's about X11 ?
|
|
|
|
ANSWER: See the section devoted to X11 in this FAQ.
|
|
|
|
|
|
IX. GCC MISC INFORMATION
|
|
========================
|
|
|
|
The official release of GCC for Linux is 2.2.2d, information for the
|
|
previous versions (1.37, 1.40) can be found in FAQ of July 92.
|
|
|
|
I think this section is needed, 'cause a) gcc is the compiler under
|
|
Linux, and b) the gcc-2.x is still evolving, and many information change
|
|
constantly.
|
|
To conclude this short introduction (in fact the conclusion will be
|
|
longer than the introduction :), the most recent release of gcc-2.2.2d
|
|
can be found at tsx-11 in /pub/linux/GCC, and also at
|
|
fgb1.fgb.mw.tu-muenchen.de under /pub/linux/GCC, and one of the
|
|
"specialist" is Hongjiu Lu (hlu@eecs.wsu.edu). There is a special
|
|
channel for GCC, feel free to contact the linux-activists list.
|
|
The Information provided in this section which envolved GCC2.xx
|
|
are extracted from the FAQ GCC, written by Hongjiu, provided
|
|
with the current distribution of gcc /READ IT/
|
|
Finally whenever you report a bug please give the version of gcc, the
|
|
version of your kernel, otherwise NO ONE can help you.
|
|
|
|
|
|
QUESTION: I don't know how to install gcc stuff, is there special
|
|
places?
|
|
|
|
ANSWER: gcc-2.xx is splitted in 3 main files 2.xxdb.tar.Z,
|
|
2.xxlib.tar.Z and 2.xxmisc.tar.Z, some utilities (binutils.tar.Z) and
|
|
shared libraries are also provided. To install them do the following:
|
|
|
|
First of all, backup the old compiler. YOU MUST BE SURE THERE IS NO
|
|
OTHER C COMPILER INSTALLED ON YOUR SYSTEM. What is meant by compiler
|
|
is all the stuff: binaries, header files, libraries and crt0.o. I
|
|
assume that whateverplace contains the 2.xxfiles you have downloaded.
|
|
|
|
cd /usr
|
|
tar xvpzf whateverplace/2.xxmisc.tar.Z
|
|
|
|
read the FAQ, and README in /usr/install/gcc2.
|
|
|
|
|
|
QUESTION: What are the contents of them?
|
|
|
|
ANSWER: 2.xxdb.tar.Z contains cpp, libg.a and libc_p.a. 2.xxlib.tar.Z
|
|
contains cc1 and cc1plus. 2.xxmisc.tar.Z contains gcc 2.xx drivers,
|
|
header files, libraries, manual pages and installation instructions.
|
|
Another file, XXXXinc.tar.Z, where XXXX is the current version number
|
|
of Linux kernel, has all the header files to replace the header files
|
|
from kernel. YOU MUST INSTALL IT. Please read README for details.
|
|
|
|
(gcc.2.2.2d 08/15/92)
|
|
1. 2.2.2ddb.tar.Z (libg.a, libc_p.a and jump stable stuffs)
|
|
You just have to install jump/lib*.so.* by hand.
|
|
3. 2.2.2dg1.tar.Z (libg.a compiled with -g1 to get a smaller libg.a)
|
|
4. 2.2.2dfix4.tar.Z (<TIME.H>, <LIMITS.H>, <UNISTD.H>, libc.a and
|
|
shared/*.a)
|
|
5. shlib-2.2.2d.tar.Z (build the stub libs for the shared libs.)
|
|
6. libc-2.2.2dfix4.tar.Z. It has the following files:
|
|
|
|
./posix/sysconf.c
|
|
|
|
You need to delete by hand libinet.a in
|
|
/usr/lib/gcc-lib/i386-linux/2.2.2d
|
|
|
|
|
|
|
|
QUESTION: I seem to be unable to compile anything with gcc. Why?
|
|
|
|
ANSWER: If you have only 2 MB RAM, gcc will die silently without
|
|
compiling anything. You must have at least 4 MB to do compilations
|
|
|
|
BTW Since swapping is possible, I have heard that compilation works
|
|
with only 2Meg and a lot disk traffic :) Isn't it great?
|
|
|
|
|
|
QUESTION: gcc complains about not finding crt0.o and the system
|
|
include files What am I doing wrong ?
|
|
|
|
ANSWER: The include files normal place is in /usr/include. lib*.a and
|
|
*.o should be in /usr/lib or /usr/local/lib
|
|
|
|
|
|
QUESTION: I tried to port a /new/ version of gnu stuff. But in the
|
|
linking phase, gcc complains about the missing libg.a.
|
|
|
|
|
|
ANSWER: Yes this is well known for compiler version earlier than
|
|
2.2.2, throw away the flag -g that's all, anyway libg.a is /only/ for
|
|
debugging purpose.
|
|
|
|
|
|
QUESTION: How to compile programs which may be debugged with gdb?
|
|
|
|
ANSWER: There are different ways to handle this problem. If
|
|
you have the gcc2.2.2 or later it's simple, use the -g flag. Otherwise
|
|
there are different possibilities:
|
|
1) As there is no libg.a, you should throw away the -g flag in link
|
|
phase, this means that the compilation must be done in two steps
|
|
example: instead of "gcc -g monprog.c -o monprog", use the following
|
|
"gcc -g -c monprog.c" and then "gcc -o monprog monprog.o"
|
|
Alas this method is not that good if you are using Makefile.
|
|
2) The other way is to create an empty libg.a as follows (Peter
|
|
Macdonald trick):
|
|
- create libfake.c containing libgfake() {}
|
|
- compile it with: gcc -c libfake.c
|
|
- create the libg.a with: ar r libg.a libfake.o
|
|
2bis) The more tricky Humberto method:
|
|
cd /usr/lib
|
|
ranlib libg.a
|
|
|
|
then gcc -g monprog.c -o monprog will produce a debuggable monprog
|
|
|
|
|
|
QUESTION: When compiling some code, cc1 complains about some insn
|
|
code, what's that?
|
|
|
|
ANSWER: An insn is an internal representation that gcc uses when
|
|
compiling. The main part of gcc is to take ordinary c (or c++) code,
|
|
and compile it, while ding optimizations in insn part, which is
|
|
soft/hard independant. Then another part which is hard/Os dependant
|
|
takes the insns and translate it in assembly language. The fix is only
|
|
to turn off the optimization flag (-O).
|
|
|
|
|
|
QUESTION: While compiling some stuff, I'm getting the following
|
|
error message:
|
|
Undefined symbol ___addsf3 referenced from text segment
|
|
as well as ___mulsf3 and __cmpsf2.
|
|
These symbols are not in the program or in it's header files.
|
|
|
|
ANSWER: These are math helper functions, and you can usually compile
|
|
these programs to use the kernel floating point routines by adding
|
|
'-m80387' to the compiler switches. If the program does any wierd
|
|
fp math (exp(), sin()) it'll die when you run it though.
|
|
|
|
|
|
|
|
QUESTION What's about gcc2.x ?
|
|
|
|
ANSWER: It has been ported to linux, it is (pretty) stable and works.
|
|
The files are 2.xxlib.tar.Z and 2.xxmisc.tar.Z Uncompress and untar
|
|
2.xxmisc, read the FAQ enclosed and play with it. You can find these
|
|
files at tsx-11 in binaries/compilers/gcc-2.x. One of the most recent
|
|
version is on tsx-11 and fgb1.
|
|
The shlib.tar.Z enables you to create shared libraries, read the
|
|
README file included
|
|
The 096inc.tar.Z contains the header files from the kernel
|
|
|
|
|
|
QUESTION: I can't run g++ due to the lack of "expr"; where can I find
|
|
it ?
|
|
|
|
ANSWER: In the shellutils-1.6.tar.Z (or whatever is the last release)
|
|
on prep.ai.mit.edu
|
|
|
|
QUESTION: I have grabbed the new gcc2.xx, but I can't use it whenever
|
|
I compile (even hello world program) I get "parse error before ('s";
|
|
any clue ?
|
|
|
|
ANSWER: Yes, it's caused by bad compress/tar binaries, use the one
|
|
provided at tsx-11 in linux/binaries/usr.bin
|
|
|
|
QUESTION: Is there a bug in how g++ and gcc handle include files?
|
|
'cause I can't get them to find files in the g++-include directory.
|
|
|
|
ANSWER: Did you run "fixfiles"? The file permission in g++-include is
|
|
640 and should be 444.
|
|
|
|
|
|
QUESTION: I've seen on my ftp-server that there are different
|
|
***fix*.tar.Z files in the GCC directory, do I need them?
|
|
|
|
ANSWER: If you got a very early copy of gcc 2.2.2, please get
|
|
2.2.2fix1.tar.Z and 2.2.2fix2.tar.Z, and libc-linux.fix.tar.Z for the
|
|
C lib sources, and new shlib-2.2.2.tar.Z if you want. If you got gcc
|
|
2.2.2 after you saw **fix*.tar.Z, you are fine.
|
|
|
|
QUESTION: Is stdio ANSI compatible?
|
|
|
|
ANSWER: Yes, please test it.
|
|
|
|
QUESTION: Is g++ in 2.xx?
|
|
|
|
ANSWER: Yes.
|
|
|
|
QUESTION: How do I use gcc?
|
|
|
|
ANSWER: Read manual page, gcc.ps or gcc.man in /usr/install/gcc2.
|
|
|
|
QUESTION: What options can I use for gcc?
|
|
|
|
ANSWER: Read manual page, gcc.ps or gcc.man. Also -static tells gcc
|
|
to use the static libraries, -nojump forces gcc to use the classic
|
|
shared libraries. The default is the jump table version of shared
|
|
libraries. The shared libraries for X are linked with the jump table
|
|
version of shared C library.
|
|
|
|
QUESTION: Where is the source code of the new libc.a?
|
|
|
|
ANSWER: The same place you find this file. It is called
|
|
lib-src-yy.xx.TZ.
|
|
|
|
QUESTION: Why does g++ complain, even die?
|
|
|
|
ANSWER: You need "expr", which is in GNU shell utilities 1.6, echo (?)
|
|
and sed.
|
|
|
|
QUESTION: How do I generate code for 486?
|
|
|
|
ANSWER: Add -m486 to CFLAGS.
|
|
|
|
QUESTION: I heard malloc (0) wouldn't work with Linux, what should I
|
|
do?
|
|
|
|
ANSWER: include <STDLIB.H> and don't define NO_FIX_MALLOC.
|
|
|
|
QUESTION: Why does gcc say "xxxxx..h not found"?
|
|
|
|
ANSWER: see QUESTION: What are the contents of them?
|
|
|
|
QUESTION: I really followed every step in the documentation, but when
|
|
I do "make", why does it say "don't how to make xxxxxx"?
|
|
|
|
ANSWER: The dependency in Makefile is dated, you need to make a new
|
|
one. Please get some guide on make and read Makefile. For the kernel
|
|
sources, please do
|
|
|
|
cd src/linux
|
|
make dep
|
|
|
|
QUESTION: How do I compile programs under Linux?
|
|
|
|
ANSWER: The Linux C library is trying to be ANSI/POSIX compliant. It
|
|
is also very compatible with SYSV and BSD. The C library is loaded
|
|
with SYSV and BSD functions. There are three exceptions:
|
|
|
|
1. signal in Linux is POSIX.
|
|
2. tty in Linux is POSIX.
|
|
3. time functions are POSIX, plus a few BSD and SYSV extensions.
|
|
4. setjmp/longjmp functions are POSIX. But you can use -D__FAVOR_BSD
|
|
to make it BSD or use sigsigjmp/siglongjmp.
|
|
|
|
When you compile a program under Linux, your best bet is include all
|
|
the appropriate header files and use -Wall. All the usable functions
|
|
and global variables are declared in the corresponding header files.
|
|
YOU SHOULD NOT DEFINE ANY functions or global variables OF THE LINUX C
|
|
LIBRARY IN YOUR CODE IF YOU WANT TO USE THE SHARED LIBRARIES.
|
|
|
|
After saying all those, you now should know you can compile a program
|
|
with -D_POSIX_SOURCE or -D_GNU_SOURCE (read <FEATURES.H> for details).
|
|
With a few modifications you can even use -DSYSV, -DUSG or -DBSD. Some
|
|
codes need to define -DSTDC_HEADERS for ANSI C compiler like gcc here.
|
|
|
|
To use malloc () and calloc () safely under Linux, please include
|
|
|
|
<STDLIB.H> and don't define NO_FIX_MALLOC.
|
|
|
|
BTW, gcc -traditional should work with gcc 2.2.2d or above.
|
|
|
|
Please also read ChangeLog for the latest enhencement.
|
|
|
|
Please read the header files for details. Maybe you should get a book
|
|
on POSIX. Any suggestion of the book list?
|
|
|
|
QUESTION: When compiling #$@!, I've got some problems with "SIGBUS"
|
|
signal that doesn't exist. Any clue ?
|
|
|
|
ANSWER: (Louis J. LaBash, Jr.) SIGBUS is a common problem, its not
|
|
needed, just comment it all out, something like:
|
|
|
|
#ifdef SIGBUS
|
|
.. normal sigbus code ..
|
|
#endif
|
|
|
|
QUESTION: How can I write codes suitable for building shared library ?
|
|
|
|
ANSWER: (H.J. Lu, hlu@eecs.wsu.edu, 09/01/92)
|
|
There are some guidelines for writing codes suitable for building the
|
|
shared library with jump table.
|
|
|
|
1. Never, ever allow library users to access global data directly.
|
|
Always, always make them go through access functions. That way,
|
|
you are free to change the internal implementation, but can
|
|
easily provide backward compatibility by simply replacing the
|
|
access functions.
|
|
|
|
2. If you do have to define some global data for library users to
|
|
access, put them into a separate file. Never mix them with other
|
|
library code. Also make sure the relative locations of the global
|
|
data will not change very often. One solution is leave some spaces
|
|
for them to grow.
|
|
|
|
X. SCSI SPECIAL
|
|
===============
|
|
*** This section is written by Drew Eckhardt, mail him for any
|
|
*** information, questions related to this section.
|
|
*** Last update November 1992.
|
|
|
|
|
|
QUESTION: What SCSI hosts are supported?
|
|
|
|
ANSWER: The Adaptec 154x, Adaptec 174x Future Domain 16x0, Seagate ST0x,
|
|
Ultrastor 14F, and Western Digital 7000FASST are supported. Various Adaptec
|
|
clones from Bustek and Future Domain are known to work, in both ISA and EISA
|
|
flavors.
|
|
|
|
The TMC 950, and the discrete 8xx implementations will be supported
|
|
in the new Seagate driver when debugging is finished. If you want to
|
|
use an older kernel, add 0x200 to the status and data register addresses.
|
|
|
|
Not very many BIOS signatures are included for the Future domain boards, so
|
|
they may not auto-detect correctly.
|
|
|
|
QUESTION: Which disks ?
|
|
|
|
ANSWER: Anything that works with your host adapter electronically, and
|
|
is new enough to support a December 1985 draft of SCSI-I.
|
|
|
|
Sysquest, and other removeable hard disks are supported.
|
|
|
|
Extended partitions also work, with 11 Extended partitions per disk
|
|
allowed in combination with the four real partitions and whole disk
|
|
sub device.
|
|
|
|
Disks up to two terabytes in size will work, since the sd drier
|
|
switches to 10 byte reads when necessary.
|
|
|
|
QUESTION: What about SCSI tapes ?
|
|
|
|
ANSWER: Tapes are supported in the alpha SCSI drivers.
|
|
|
|
QUESTION: What about CD ROMS?
|
|
|
|
ANSWER: Stable support is in the kernel for SCSI CD-ROM drives, and the
|
|
ISO-9660 file system is in beta test. Rockridge extensions are supported.
|
|
|
|
QUESTION: How do I get SCSI information?
|
|
|
|
ANSWER: Subscribe to the SCSI channel of the linux-activists mailing list.
|
|
mail linux-activists@joker.cs.hut.fi
|
|
And put in the header.
|
|
X-MN-Admin: join SCSI
|
|
|
|
QUESTION : I can't make a filesystem on /dev/hd*
|
|
|
|
ANSWER : /dev/hd* aren't your SCSI disks. /dev/sd* are.
|
|
See below for approproate major / minor numbers if they
|
|
do not exist on your root diskette.
|
|
|
|
QUESTION: How do I partition the disk?
|
|
|
|
ANSWER: Use pfdisk or the DOS parititioning program of your choice
|
|
|
|
QUESTION: My partitioning program can't figure out the disk geoemetry
|
|
|
|
The problem with partitioning SCSI disks and Linux is that Linux talks
|
|
directly to the SCSI interface. Each disk is viewed as the SCSI host
|
|
sees it : N blocks, numbered from 0 to N-1, all error free. There is
|
|
no portable way to get disk geometry.
|
|
|
|
However, DOS doesn't like things like this, it demmands that BIOS
|
|
present it with a normal Cylinder / Head / Sector coordinates. So,
|
|
BIOS does, and it comes up with some fabrication that fits what DOS
|
|
wants to see. You don't want to disagree with what BIOS thinks when
|
|
you write the partition table.
|
|
|
|
The newest SCSI code will return the mapped geometry for some host
|
|
adapter / disk combinations. Get the latest SCSI code from
|
|
tsx-11.mit.edu:/pub/linux/ALPHA/scsi
|
|
|
|
QUESTION: The stock {f,pf}disk programs don't work.
|
|
|
|
ANSWER: At least some older versions of these partitioning programs have
|
|
/dev/hd* hardcoded into them, and they don't see /dev/sd*.
|
|
|
|
If you want, YOU can change the /dev/hd* devices to be links to or
|
|
other entries for the SCSI devices.
|
|
|
|
Also, pfdisk should be callable with a device name.
|
|
|
|
Hopefully, some one will change the partitioning programs to respect
|
|
the SCSI devices.
|
|
|
|
QUESTION: Where is the latest version maintained?
|
|
|
|
ANSWER: tsx-11.mit.edu:/pub/linux/ALPHA/scsi
|
|
|
|
Join the list before you grab anything.
|
|
|
|
eric@tantalus.nrl.navy.mil (Eric Youngdale) added scatter/gather support
|
|
to the SCSI drivers, and changed around the internal structures to get
|
|
something that works as "version 2"
|
|
|
|
QUESTION: What are the major / minor numbers for SCSI drives?
|
|
|
|
ANSWER: Because of the large number of devices that can be hung off of
|
|
a SCSI bus (as many as 56 if you use SCSI fanouts or bridge boards),
|
|
and the possibility of 16 partitions on a SCSI disk, we'd run out of
|
|
minor numbers if they were statically allocated - so a dynamic
|
|
numbering scheme is used.
|
|
|
|
Block device major 8 is used for SCSI drives, 9 for SCSI tapes, and
|
|
11 for CD-ROMs.
|
|
|
|
Minors are assigned in increments of 16 to SCSI disks as they are
|
|
found, scaning from host 0, ID 0 to host n, ID 7, excluding the host
|
|
ID. Most hosts use ID 7 for themselves.
|
|
|
|
A minor where minor mod 16 = 0 is the whole drive, where minor mod 16
|
|
is between 1 and 4, that partition, extended partitions dynamically
|
|
assigned from 5 to 15 inclusive. Note that the gendisk.c module
|
|
prints partition tables on initialization - you should be able to see
|
|
them there.
|
|
|
|
Example : I have four SCSI disks, set up as follows
|
|
Seagate ST02, ID=0
|
|
Seagate ST02, ID = 5
|
|
Ultrastor 14, ID = 0
|
|
Adaptec 1542, ID = 0
|
|
|
|
The first disk on the seagate at ID 0 will become minors 0-15
|
|
inclusive, the second at ID5 16-31 inclusive, the disk on the
|
|
Ultrastor 32-47, on the Adaptec 48-63.
|
|
|
|
QUESTION: How do I reduce kernel bloat and eliminate the drivers I
|
|
don't want?
|
|
|
|
ANSWER: Simply #undef CONFIG_DISTRIBUTION in include/linux/config.h,
|
|
and define the macros for the SCSI hosts you want enabled.
|
|
|
|
QUESTION: I get SCSI timeouts.
|
|
|
|
ANSWER: Make sure your board has interrupts enabled correctly.
|
|
|
|
QUESTION: The seagate driver doesn't work.
|
|
|
|
ANSWER: There are several possibilities
|
|
1) Is the board jumpered for IRQ5 ?
|
|
|
|
The factory settings are
|
|
for MSLOSS, and have interrupts disabled. Interrupts are controlled
|
|
by the W3 (ST01) or JP3 (ST02) jumper, which should have pins FG
|
|
shorted. See your manual.
|
|
|
|
2) Cached machines will not have problems IF the Seagate's address
|
|
space (typically C8000 - CAFFFF) is not marked "non cacheable."
|
|
This applies to the i486 internal cache as well as i386/i486
|
|
external caches.
|
|
|
|
This can be set in the XCMOS of most machines. If you can't disable
|
|
cache for the Seagate's area (16K in size, starting at the base
|
|
address), then you must disable the cache entirely, otherwise
|
|
it won't work.
|
|
|
|
3) The new seagate drivers (not yet released) can operate in a mode where
|
|
the 0ws ISA bus line is used to synchronize the ISA and SCSI busses.
|
|
This makes things fast, since the alpha Seagate driver can dump SCSI data out
|
|
fast enough to swamp the bus. However, this will only work if the 0ws
|
|
jumper is enabled. If this isn't the case, the Seagate driver "should" detect
|
|
this as an over/under run condition, but it might not. Either enable
|
|
the 0ws jumper, or #undef FAST in seagate.h.
|
|
|
|
QUESTION: The Adaptec driver doesn't work.
|
|
|
|
ANSWER: The Adaptec BIOS does some initialization that affects
|
|
the driver. If the BIOS was disabled, it may fail on your system.
|
|
|
|
Older versions of the SCSI drivers ran the 174x in 1542 emulation
|
|
mode, where some of these cards have a bug that interferes with
|
|
reads / writes > 512 bytes.
|
|
|
|
The new SCSI drivers support the 174x in 'native' mode, so this isn't
|
|
a problem.
|
|
|
|
QUESTION: What about bugs?
|
|
|
|
ANSWER: It works on MY hardware. It works on Tommy Thorn's Adaptec
|
|
system, Dave Gentzel's Ultrastor, Thomas Wuensche's WD7000, Rick
|
|
Faith's Future Domain, and quite a few other systems.
|
|
|
|
Bugs that are there will mostly be very hardware specific, and nasty
|
|
to track down. SCSI should be basically error free - consequently,
|
|
the error code has not been heavily tested, and there are known bugs
|
|
in it.
|
|
|
|
If you have found a bug, please mail it to the mailing list with
|
|
specifics of your hardware. Other people may have the same problem, a
|
|
solution, etc.
|
|
|
|
If you provide a patch, in context diff form, the bug will be fixed
|
|
Immediately. If you can provide me with a procedure that reproduces
|
|
the bug on *MY* system, the bug will be fixed "soon." Your chances
|
|
of getting it fixed increase exponentially with the amount of
|
|
information provided. If I can't reproduce it, and your
|
|
description gives me no idea as to where in the code to look,
|
|
it won't get fixed by me.
|
|
|
|
QUESTION: What are the known bugs?
|
|
|
|
ANSWER :
|
|
|
|
Many of the drivers cannot abort a command that is in progress - if
|
|
something goes haywire, all drives off that controller will hang.
|
|
|
|
QUESTION: I get a message saying READ CAPACITY FAILED. What does this
|
|
mean?
|
|
|
|
ANSWER: UPGRADE.
|
|
|
|
QUESTION: Why does the system "hang" when SCSI disk access occurs.
|
|
|
|
ANSWER: Older Linux distributions (pre .97) used earlier versions
|
|
of the SCSI drivers, where the drivers were not interrupt driven
|
|
(easier debugging, or so we thought). Since the drivers did not return
|
|
from the device driver strategy routine, until the SCSI command
|
|
completed, no other tasks were scheduled, and ineteractive performance
|
|
was abysmall.
|
|
|
|
UPGRADE.
|
|
|
|
QUESTION: Why can't I swap to a SCSI disk?, Why can't I mount a SCSI
|
|
disk as root?
|
|
|
|
ANSWER: This was due do a race condition that has since been fixed.
|
|
|
|
UPGRADE.
|
|
|
|
QUESTION: What future developments are planned?
|
|
|
|
ANSWER: The following changes will/have occurred :
|
|
|
|
- have occurred :
|
|
|
|
- support for scatter / gather is there. This
|
|
means that all read (and readaheads) will be
|
|
handled via one command.
|
|
|
|
- Significant changes have been made to the
|
|
Seagate driver. Among other things, it supports the
|
|
0ws line, which means we can dump data fast enough
|
|
to flood the bus.
|
|
|
|
- Multiple outstanding commands per LUN are supported.
|
|
This should result in vastly improved performance
|
|
on multi-device systems.
|
|
|
|
- SCSI tapes are supported.
|
|
|
|
- Support for LUN !=0 is there.
|
|
|
|
- Planned
|
|
- SCSI commands are issued as linked commands
|
|
wherever possible, eliminating the arbitration /
|
|
selection / message out phases needed to start
|
|
a command "from scratch".
|
|
|
|
- I have the mode page specs, and am looking at
|
|
doing "appropriate things" w.r.t. cache enable,
|
|
buffer control, etc. It seems that some drives
|
|
power up, and keep the buffer off until told otherwise
|
|
in software.
|
|
|
|
|
|
QUESTION: What drivers does the new code support.
|
|
|
|
ANSWER: ALL of the existing drivers work fine. However, only an Adaptec
|
|
scatter/gather driver is included in the alpha package. The seagate
|
|
scatter/gather driver is fast but not yet stable and still kernel
|
|
panics.
|
|
|
|
QUESTION: WHEN?
|
|
|
|
ANSWER: Again, thanks to Eric's code contributions, it's available in
|
|
alpha test now.
|
|
|
|
|
|
|
|
*********************************************************
|
|
* *
|
|
* Answers to Frequently asked questions about Linux *
|
|
* *
|
|
*********************************************************
|
|
|
|
This post contains Part 4 of the Linux FAQ (4 parts).
|
|
It must be read *after* the 3 first parts.
|
|
|
|
===================================8<====>8============================
|
|
CONTENTS (of this part)
|
|
|
|
XI. X11, THE MAXIMUM and MORE (part4)
|
|
XII. NETWORKING and LINUX (part4)
|
|
XIII. EMACS for LINUX (part4)
|
|
|
|
===================================8<====>8============================
|
|
|
|
|
|
XI. X11 THE MAXIMUM and MORE
|
|
============================
|
|
*** This section is maintained by Krishna Balasubramanian
|
|
*** <BALASUB@CIS.OHIO-STATE.EDU>. Mail him if you have corrections,
|
|
*** additions, etc.
|
|
*** Last update: Tue, 17 Nov 92 19:06:57 -0500
|
|
|
|
XI.A. X386 GENERAL INFORMATION
|
|
XI.B. HARDWARE REQUIREMENTS: Supported Video cards.
|
|
XI.C. LINUX DISTRIBUTION: Files required, Current version.
|
|
XI.D. LEARNING/USING X: Pointers to X documentation.
|
|
XI.E. DEBUGGING STARTUP PROBLEMS: Checklist, Screen restoration, Hanging.
|
|
XI.F. XCONFIG: Video mode settings and common errors in Xconfig.
|
|
XI.G. X-APPLICATIONS: Compiling X programs.
|
|
XI.H. BUGS
|
|
|
|
The X11 directories are (depending on your version of X)
|
|
XLIB = /usr/X386/lib/X11/ or /usr/lib/X11/
|
|
XBIN = /usr/X386/bin/ or /usr/bin/X11/
|
|
|
|
|
|
|
|
XI.A. X386 GENERAL INFORMATION
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: What is the X11 release supported by Linux?
|
|
|
|
ANSWER: It's the X11R5 (xfree86-1.1).
|
|
|
|
|
|
QUESTION: What is X386/xfree86?
|
|
|
|
ANSWER: X386 is the port of the X11 server to System V/386 that was
|
|
done by Thomas Roell (roell@informatik.tu-muenchen.de). It supports a
|
|
wide variety of VGA boards. X386 1.2 is included in MIT's X11R5
|
|
distribution.
|
|
|
|
The Linux X386 port was based on the stock distribution from X11R5,
|
|
from MIT and was done by Orest Zborowski (obz@sisd.kodak.com).
|
|
|
|
It has since moved to becoming part of the standard xfree86 distribution.
|
|
|
|
|
|
QUESTION: Where can I get X386 1.2 (X11R5)?
|
|
|
|
ANSWER: The X386 1.2 and xfree86 sources are available at any site that
|
|
distributes the X11R5 source (too numerous to list here, but includes
|
|
export.lcs.mit.edu)
|
|
|
|
|
|
QUESTION: Any tips on compiling X11R5?
|
|
|
|
ANSWER:
|
|
- Dont do it.
|
|
- XFree86 is distributed with a link kit so you can optionally
|
|
include what you like in the server.
|
|
- You will need lots of disk space (around 150Meg for the MIT core).
|
|
- Look at mit/server/ddx/x386/README and follow any instructions for
|
|
your particular platform.
|
|
- Contact the X11 channel at linux-activists
|
|
|
|
|
|
|
|
|
|
XI.B HARDWARE REQUIREMENTS:
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Approx: at least 4 megs of ram + swap ...slooooww. 10 Meg disk for X.
|
|
Another 6-10 meg of disk for GCC if you want to compile X11 programs.
|
|
|
|
QUESTION: What VGA boards are supported?
|
|
|
|
ANSWER:
|
|
et3000, et4000, gvga, pvga1a, wd890c00, tvga8900, ati ver. 5 or 6,
|
|
8514/A, generic vga: 800x600 mono (Xmono), 640x480x16 (Xega).
|
|
|
|
Diamond cards are not supported and will not be supported.
|
|
Contact Diamond if you have further questions or (better) buy another card.
|
|
|
|
Standard x11v1.1 or xfree86 server:
|
|
ET3000 (for ex. GENOA 5300/5400)
|
|
ET4000 (Tricom, STB PWR Graph, Sigma Legend, etc.)
|
|
GVGA (Genoa 6400)
|
|
PVGA1A (Paradise VGA Professional) ... see BUGS.
|
|
WD90C00 (Paradise VGA 1024)
|
|
|
|
supported by xfree86:
|
|
TVGA8900 TRIDENT 8900 support is in xfree86
|
|
|
|
ATI ATI VGA WONDER XL and most ATI VGA WONDER PLUS
|
|
cards (chip version 5 or 6).
|
|
Courtesy Rik Faith (faith@cs.unc.edu)
|
|
ATI Notes: An example Xconfig file is available from ftp.cs.unc.edu:
|
|
/pub/faith/linux/x386. Please note that:
|
|
1) clock.exe does *NOT* work with ATI cards.
|
|
2) The ATI Wonder driver in xFree86 is known only to work with
|
|
chip version 5 and 6 cards. This is most ATI VGA Wonder PLUS cards
|
|
and all ATI VGA Wonder XL cards (although sporadic problems have been
|
|
reported even with these very recent cards). The driver will tell
|
|
you which ATI chip version you have, as will the ati.test program in
|
|
XLIB/etc/
|
|
|
|
|
|
MONO Any vga card should be able to use X386mono server. (At least
|
|
640x480 with 800x600 virtual). Use vga2 section of Xconfig.
|
|
|
|
Also available as ALPHA test versions (join the X11 channel):
|
|
(The standard x386/xfree86 server will not handle the following cards)
|
|
|
|
8514 ATI graphics ULTRA, ATI graphics Vantage
|
|
(should work with any VESA standard 8514/A register compatible card?)
|
|
tsx-11 pub/linux/packages/X11/X8514/ (X8514new.T.Z x.8514.src.T.Z)
|
|
courtesy Kevin Martin (martin@cs.unc.edu).
|
|
|
|
Xega Generic 640x480x16 compatible server (originally for laptops).
|
|
This requires a microsoft mouse at /dev/mouse for now
|
|
and it does not use Xconfig so use environment variables
|
|
to define the font path etc. in .xinitrc:
|
|
export FONT_PATH=/usr/lib/X11/fonts/misc:/usr/lib/X11/fonts75dpi
|
|
Works better with courier fonts so add to .Xresources:
|
|
*Font: -*-courier-medium-r-*--10* ..or whatever..
|
|
A link kit is available at tsx-11 (you need gcc2.2.2).
|
|
in pub/linux/ALPHA/Xega/X386.ega.T.Z
|
|
courtesy Marc Hoffman (marc.hoffman@analog.com).
|
|
|
|
The Xega server is compiled with the gcc-2.2.2 libs and should be
|
|
upgraded soon. It should however work with programs/fonts in new X11
|
|
releases as long as you ensure you have the shared images needed by
|
|
the server in /lib.
|
|
|
|
|
|
XS3 S3 chipset server (Jon Tombs jon@robots.ox.ac.uk)
|
|
I've started a FAQ on ftp.robots.ox.ac.uk (pub/linux/S3), but the Xserver
|
|
is still very alpha. Unless you know something about X386 and are prepared
|
|
to work at it, stick with the mono XFree86 server until you see different
|
|
advice. I'd hope to get the server integrated with XFree86 in the next
|
|
couple of weeks. This will make most the current problems go away.
|
|
|
|
|
|
WARNING: Do not try to bring up an Xserver that does not support your
|
|
hardware. There have been cases where damage has resulted from pushing
|
|
the monitor beyond its specs.
|
|
|
|
|
|
QUESTION: What Mouses are supported?
|
|
|
|
ANSWER: Serial : Logitech, Microsoft, MouseSystems .... compatibles ...
|
|
Busmouses : Logitech, microsoft, ATI_XL, PS/2 (aux).
|
|
|
|
|
|
QUESTION: Has anyone gotten the "Mini-DIN" mouse on an HP Vectra 486/33T
|
|
to work? The slight info I've been able to find says it's PS/2 compatible.
|
|
|
|
ANSWER: First you need to create an entry in /dev for it:
|
|
|
|
mknod /dev/psaux c 10 1
|
|
|
|
There is no direct PS/2 mouse support in XFree86 yet, so to use the
|
|
mouse with X you'll have to use the mconv mouse protocol conversion
|
|
utility, which can be found on nic.funet.fi, in
|
|
/pub/OS/Linux/utils/tools/mconv.c. This program converts the packets
|
|
sent by the PS/2 mouse into the corresponding ones from a Microsoft
|
|
mouse, so you can fool X telling it you have a Microsoft serial
|
|
mouse instead. Instructions for use are included in the source file.
|
|
(Johan Myreen jem@cs.hut.fi)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
XI.C. LINUX DISTRIBUTION
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: What is the current version?
|
|
|
|
ANSWER: The newest public Linux release is x11v2.1. It is the linux
|
|
release of xfree86-1.1. It was compiled with gcc-2.2.2d and is available
|
|
for example at tsx-11 in pub/linux/packages/X11/xfree86-1.1/
|
|
The SLS distribution stays at 2.0.
|
|
|
|
QUESTION: What Files do I need to download?
|
|
|
|
ANSWER: For x11v2.1: There is a README file in the distribution directory.
|
|
Bring this down first and read it. Then get xbin, xman and xfonts.
|
|
You need xprog and xlibman only if you plan to compile X applications.
|
|
You dont need xkit if you want to relink the server.
|
|
|
|
**** You need The shared images libc.so.4 (4.1 or later) and libm.so.4 (4.0)
|
|
in /lib/. All the X11 binaries use these. To compile programs you should
|
|
get gcc-2.2.2d7 or later and the 4.x libraries.
|
|
|
|
For Other servers see also the notes in the previous section.
|
|
|
|
|
|
|
|
QUESTION: Where do the X11 files go? What are they?
|
|
|
|
ANSWER: x11v2.1 uses the directories /usr/X386/bin/ (XBIN) for programs
|
|
and /usr/X386/lib/X11/ (XLIB) for support files.
|
|
|
|
The support files include default/example Xconfig, xinitrc, twmrc
|
|
which you should copy to your HOME directory (as Xconfig, .xinitrc
|
|
and .twmrc) and edit them to define your hardware and X11 setup.
|
|
The directory XLIB/etc/ contains some documentation which
|
|
should explain how to configure your video.
|
|
|
|
|
|
|
|
|
|
XI.D. LEARNING/USING X
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: Where can I find the basic help for learning/using X ?
|
|
|
|
ANSWER: Try man X386; man Xserver; man xterm; man twm; man xinit
|
|
on any unix machine. The man pages on xterm and twm will reflect
|
|
behaviour on Linux systems quite accurately. The others will give you
|
|
some bearing though not every option will work. These man pages are
|
|
part of the xfree86 distribution.
|
|
|
|
|
|
QUESTION: What docs are available besides man pages?
|
|
|
|
ANSWER: The FAQ in comp.windows.x11 is extensive and has a bibliography.
|
|
There is also the Xt-FAQ. Both are available from export.lcs.mit.edu in
|
|
pub/contrib/.
|
|
|
|
|
|
|
|
|
|
|
|
XI.E. DEBUGGING STARTUP PROBLEMS:
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: How do I start up X?
|
|
|
|
ANSWER: Type 'startx' at the shell prompt.
|
|
Before doing this you should:
|
|
1) copy the file Xconfig.sample from the XLIB directory to your
|
|
HOME directory (/usr/root/Xconfig?) or to XLIB/Xconfig.
|
|
2) Edit Xconfig and set the video data for you card and monitor.
|
|
Use the clocks appropriate for your card and the modes appropriate
|
|
for your monitor for those clock values. To determine what values are
|
|
appropriate read files in XLIB/etc and the Xconfig section below.
|
|
3) Set the mouse device in Xconfig correctly....Use the busmouse entry
|
|
for Logitech only. For other busmouses use microsoft.
|
|
4) Ensure that there is a termcap entry for xterm in /etc/termcap
|
|
(One is available in the subdir /doc).
|
|
5) Ensure that the X11 binaries are in the path example:
|
|
add the line PATH=${PATH}:/usr/X386/bin to ~/.profile or
|
|
look at bash.ad in /doc.
|
|
WARNING: NONE of the modes (in the Modes line in Xconfig) should use a
|
|
clock your monitor cannot handle.
|
|
Now type startx.
|
|
|
|
|
|
QUESTION: I cannot type in my xterm
|
|
|
|
ANSWER: /dev/console must have major=4, minor=0
|
|
rm -f /dev/console; ln /dev/console /dev/tty0
|
|
|
|
|
|
QUESTION: What are some of the common omissions and errors?
|
|
|
|
ANSWER: (Peter)
|
|
1) Add /usr/bin/X11 (or /usr/X386/bin) to your path.
|
|
|
|
2) Add the xterm termcap entry to /etc/termcap.
|
|
|
|
3) ln -s X386 X in the XBIN directory.
|
|
ln -s X386mono X (if you want to use the mono server).
|
|
|
|
4) Run X as root first. This avoids some trivial problems.
|
|
|
|
5) If you change the font path entry .... X386 is finicky about
|
|
the syntax.
|
|
|
|
6) Make sure your mouse entry in Xconfig points to a legitimate serial
|
|
device (or busmouse)... usually something like: microsoft "/dev/ttys1"
|
|
serial devices have major # 4 minor 64,65 ... busmouses are major 10.
|
|
ls -l in /dev will show you the major and minor entries.
|
|
|
|
7) Need read/write/exec access to /tmp directory
|
|
|
|
8) Use startx 2> x.err to log your error messages. If the server sticks
|
|
and you have to reboot you'll probably loose this stuff... see notes
|
|
on `hanging' below.
|
|
|
|
9) See Xconfig problems and the device list below.
|
|
|
|
10) Have you read the X386 man page?
|
|
|
|
|
|
QUESTION: Why is the server unable to find some of the fonts?
|
|
|
|
ANSWER: First check that the directories listed in the font path exist
|
|
and have font files in them. Some of the servers are not set up to use
|
|
compressed fonts. In such cases you have to uncompress the fonts in the
|
|
directory and run `mkfontdir .`. Read the man page on mkfontdir.
|
|
|
|
|
|
QUESTION: My server "hangs" Why?
|
|
|
|
ANSWER: (Peter) Quite often it isn't a hang. If the server grabs the
|
|
screen(and enters graphics mode) and then dies, it may return you to
|
|
bash *without* restoring the screen. In other words, just because you
|
|
see no output, don't assume it's running/hanging. The way to test
|
|
this is to see if you can use a bash command to spin your disk. eg.:
|
|
sync; ls -l /bin.
|
|
|
|
Also - I *suspect* that (at least for me), you can kill the
|
|
server if you include the servernum option in the Xconfig
|
|
|
|
You can kill the server when you want to by typing ctrl-alt-backspace.
|
|
Then a couple of ctrl-C 's in case your stuck in xinit.
|
|
|
|
The two line message
|
|
X386 version .....
|
|
(protocol Version ....
|
|
is returned from the X386 programme itself, so if you get
|
|
this (or if the screen blanks) X must be starting.
|
|
|
|
|
|
QUESTION: When I try to use X11 I got "Cannot connect to
|
|
server" or "process does not exist", any clue ?
|
|
|
|
ANSWER: The cause might be wrong fontpath variable setup in your
|
|
Xconfig; uncomment and set the correct fontpath variable.
|
|
|
|
|
|
QUESTION: Why cant I run more than 4 xterms?
|
|
How can I have more than 4 pty's ?
|
|
|
|
ANSWER: set the number in the header include/linux/tty.h and
|
|
recompile the kernel. Also make nodes :
|
|
mknod /dev/ptypxx 4 minor (where minor = 128 + xx)
|
|
mknod /dev/ttypxx 4 minor (minor = 192 + xx)
|
|
This is for before linux-0.97pl6.... for later versions
|
|
you only need to make the nodes.
|
|
|
|
|
|
QUESTION: I have trouble with my logitech Pilot mouse and X under
|
|
Linux, any clue ?
|
|
|
|
ANSWER: (Thomas Roell?) There are TWO line of Logitech mice out there.
|
|
One is the programmable and uses MouseSystems protocol at startup.
|
|
X386 reprogramms them to use another protocol. If you specify
|
|
'Logitech' in the Xconfig, X386 assumes a mouse like C7 or S9 (notC7-M).
|
|
The second line is the MicroSoft compatible. Currently all newer
|
|
Logitech mice follows this practice, like the MouseMan. In that case
|
|
you have to say 'MicroSoft' or 'MouseMan'.
|
|
|
|
From: jliddle@rs6000.cmp.ilstu.edu (Jean Liddle)
|
|
I just purchased a new logitech mouseman, and yes, the new X-Windows
|
|
(XFree86 as opposed to X386) requires that you use the "microsoft" mousetype.
|
|
However, if you turn Third Button Emulation off, the middle button WILL work.
|
|
|
|
|
|
QUESTION: How does X11 start up?
|
|
|
|
ANSWER: The startup involves the server (XBIN/X), and some
|
|
programs like startx and xinit.
|
|
|
|
Typing startx runs the script XBIN/startx. Look through startx.
|
|
For explanation of the server arguments try man Xserver.
|
|
startx does little other than gather arguments and then call xinit.
|
|
|
|
xinit **calls** X (X is linked to X386). xinit therefore continues to
|
|
run, and quite often you will receive error messages from xinit rather
|
|
than X itself. If you get the message "giving up", it means X has died
|
|
(quite probably it died immediately) and xinit has been unable to start
|
|
x applications. xinit processes the startup script xinitrc.
|
|
|
|
|
|
QUESTION: How can I see what startx passes to xinit, and xinit to X?
|
|
|
|
ANSWER: Add the line: set -x near the top of startx.
|
|
|
|
To see what xinit passes to X, try: (Peter)
|
|
|
|
rm XBIN/X
|
|
- yes, if you have set it up correctly, X should only be a link
|
|
so it's safe to remove it.
|
|
|
|
then create a shell script XBIN/X containing:
|
|
#/bin/sh
|
|
echo $*
|
|
and run startx. You should see something like:
|
|
X :0
|
|
which is all xinit passes to X. If you don't see the :0, you may not
|
|
have your DISPLAY=":0" set correctly. THEN RESTORE X!! :
|
|
cd XBIN; rm X; ln -s X386 X
|
|
|
|
|
|
QUESTION: What devices does X depend on:
|
|
|
|
ANSWER: check your device numbers with ls -l /dev. You should have:
|
|
|
|
5 0 tty
|
|
4 0 tty0
|
|
4 0 console
|
|
4 1 tty1 (etc)
|
|
1 1 mem
|
|
|
|
4 128 ptyp0 pseudo ttys used by xterm/emacs etc
|
|
4 129 ptyp1 (etc) to talk to unix programs.
|
|
4 192 ttyp0
|
|
4 193 ttyp1 (etc)
|
|
|
|
4 64 ttys1 one of these is the mouse
|
|
4 65 ttys2 or you have a busmouse.
|
|
10 x mouse busmouse x = 0 => logitech 1 => ps/2 (aux)
|
|
2 => microsoft 3 => ATI_XL.
|
|
/tmp/.X11-unix/X0 socket used by X apps to talk to the server.
|
|
this is created by X386.
|
|
|
|
|
|
|
|
|
|
XI.F. Xconfig: Xconfig and Video mode settings.
|
|
~~~~~~~~~~~~
|
|
QUESTION: What do the mode names mean?
|
|
|
|
ANSWER: The mode names like "640x480" are used to match entries in
|
|
the modes line with the modeDB entry which actually defines the mode.
|
|
You can toggle between modes in the modes line with ctrl-alt-numericplus.
|
|
If you're experimenting with 640x480 you can define
|
|
modes "640x480a" "641x480b" "642x480c"
|
|
with corresponding entries under ModeDB so you can toggle between
|
|
these three modes. Try man X386.
|
|
|
|
QUESTION: How do I compute the numbers for the video modes?
|
|
|
|
ANSWER: See if there is an entry that matches your chip/monitor in
|
|
XLIB/etc/modeDB.txt. Use the clock entries for your chip
|
|
and the mode entry for that clock appropriate for your monitor.
|
|
If you cant find a mode entry for a particular clock 'needed_clock'
|
|
but can find a mode entry (for your monitor) for a nearby clock value
|
|
'found_clock', scale all numbers in the modeDB entry by
|
|
(needed_clock/found_clock). man X386 and Read CONFIG and Xconfig.notes.
|
|
|
|
|
|
QUESTION: How can I determine the clocks on the video chip?
|
|
Where can I find clock.exe or clock.pas ?
|
|
|
|
ANSWER: The XFREE Team discourages the use of clocks.exe and wants it
|
|
to be removed from all docs, since the new Server is better at
|
|
guessing the clocks than clocks.exe.
|
|
|
|
You can get X to tell you what it finds by commenting the
|
|
clocks entry in Xconfig. Use 'startx 2> x.err' to log the output.
|
|
If X starts up this file gets the clocks only after you exit.
|
|
|
|
I strongly advise using the 'modegen' spreadsheets to generate the
|
|
appropriate settings. If I remember correctly you can find them in
|
|
'pub/linux/packages/SLS/x4' called modegen.taz or something equally
|
|
as obvious ... Good luck. (Andy asb@cs.nott.ac.uk)
|
|
|
|
The clocks entry in Xconfig serves as an index. example:
|
|
clocks 1 2
|
|
ModeDB
|
|
1 640x480 .....
|
|
2 800x600 .....
|
|
means the first clock on the chip will be used for the 640x480 mode
|
|
and so on. Usually one uses the MHz value for the clock for convenience
|
|
instead of 1 2 you probably have 25 28 ... etc.
|
|
|
|
|
|
QUESTION: What are the settings used with a trident-8900C?
|
|
|
|
ANSWER: To get X/SLS/Linux working with a trident-8900C, do the following:
|
|
|
|
1) From Frank Houston fh8n@uvacs.cs.Virginia.EDU
|
|
vga256
|
|
Virtual 1024 768
|
|
ViewPort 0 0
|
|
Modes "1024x768" "800x600" "640x480"
|
|
Use the VESA monitor timings from the modeDB in the example Xconfig.
|
|
You do not need to specify the chipset or clocks.
|
|
|
|
2) From: Henk Vandecasteele henkv@cs.kuleuven.ac.be
|
|
TRIDENT TVGA 8900C card with BIOS C2.11, A cheap color monitor AOC (CM-335)
|
|
with a maximum horizontal frequence of 39.5
|
|
vga256
|
|
Virtual 1024 1024
|
|
ViewPort 0 0
|
|
Modes "912x684" "800x600" "640x480"
|
|
# This mode drives my monitor to the limit (VESA timings for the rest).
|
|
"912x684" 45 912 944 1104 1136 684 684 690 712
|
|
|
|
|
|
QUESTION: What are common problems with Xconfig?
|
|
|
|
ANSWER:If X isn't firing at all, or even if it clears the screen and
|
|
crashes (see below) you almost certainly have a fault in Xconfig.
|
|
|
|
1. Note that the server X interprets Xconfig. (not xinit)
|
|
|
|
2. If you have a fault in Xconfig it is possible to crash or hang the
|
|
server without getting an error message.
|
|
|
|
3. leave the two paths at the top of Xconfig commented out when testing.
|
|
|
|
4. test with only one graphics mode included - one you are most sure of.
|
|
|
|
5. If you make a mistake in the mouse section, you will (I understand)
|
|
get an error message, so if you don't get some mouse error, try
|
|
elsewhere first. (eg "No such file or directory" indicates you have a
|
|
fault in the "/dev/ttyxx" line, or /dev/ttyxx doesn't exist.
|
|
|
|
6. *NB* X looks in your home directory first to find an Xconfig. make
|
|
certain it's using the one you've been working on!
|
|
|
|
7. you need double quotes (") around your chipset and modes: eg
|
|
chipset "et4000"
|
|
Modes "640x480" "640x480a" "800x600"
|
|
and around the /dev/ttyxx eg.:
|
|
microsoft "/dev/ttys1"
|
|
|
|
8. Check your VGA section and modeDB first.
|
|
|
|
9. ensure ModeDB clock speeds match the VGA section. Comment out any
|
|
unused lines in MODEDB.
|
|
|
|
eg clocks 25 36 00 00 00 00 00 00
|
|
|
|
then you *must* have (and only have) lines under modeDB corresponding
|
|
to speeds 25 and 36. If you have one with (say) 62 uncommented out in
|
|
the modeDB section in place of the 36 line, you will cause the server to
|
|
die immediately with no error message.
|
|
|
|
10. a syntax error (such as an unrecognised word) in Xconfig will cause
|
|
a death with no warning.
|
|
|
|
11. videoram must equal the amount of display ram on your chip.
|
|
|
|
|
|
QUESTION: What do I use in my Xconfig file to use the bus mouse?
|
|
Logitech doesn't work with my Logitech busmouse.
|
|
|
|
ANSWER: (Nathan I. Laredo)
|
|
Here are the mouse lines from my Xconfig:
|
|
|
|
BusMouse "/dev/mouse"
|
|
|
|
You may add a sample rate if you want, but chances are, unless the model
|
|
number on your mouse matches mine: PC-93-9MD it probably will cause your
|
|
machine to lock up, as I've gotten several reports saying that.
|
|
|
|
According to the X386 documentation, non-logitech mice do not support
|
|
a sample rate.
|
|
|
|
|
|
|
|
|
|
|
|
XI.G X-APPLICATIONS: Compiling X Programs.
|
|
~~~~~~~~~~~~~~~~~~
|
|
|
|
QUESTION: Does anyone know where I can find the libobz.a library ?
|
|
|
|
ANSWER: This library contained the socket stuff, when X386 V0.1 was
|
|
released. Meanwhile it has found it's way into the kernel, so
|
|
remove -lobz from the link step in the Makefile.
|
|
|
|
|
|
QUESTION: I get _setjmp undefined when linking xv from .a files.
|
|
|
|
ANSWER: You are trying to link a program compiled with gcc-2.2.2
|
|
and setjmp has changed sice then. Recompile xv from the source
|
|
using the latest gcc.
|
|
|
|
|
|
QUESTION: How do I compile an X application that has an Imakefile?
|
|
|
|
ANSWER:
|
|
Type xmkmf to generate the Makefile.
|
|
Type make.
|
|
|
|
|
|
QUESTION: gcc complains the X libraries are not found or links static.
|
|
|
|
ANSWER: Check out the -nojump -static options of GCC ... read the GCC FAQ.
|
|
You can tell gcc what directories to search with -L.
|
|
|
|
|
|
|
|
|
|
XI.H BUGS:
|
|
~~~~~~~~~
|
|
Restoration of the text screen fails on some hardware.
|
|
|
|
Cant compile Xaw programs without -static in versions x11v1.1 or older.
|
|
There is a glitch with the Xaw shared libs ... I haven't seen
|
|
this in a while anyway its fixed in newer releases.
|
|
|
|
Color problems with Xega .... fixed in latest version on tsx-11.
|
|
|
|
from chuck@coplex.com (Chuck Sites)
|
|
It is possible to run X386 on a Paradise VGA Plus. The X386.0 doc file
|
|
has a small misprint. The Chipset is not pvga. It's pvga1. Anyway,
|
|
under the line in /usr/X386/lib/X11/Xconfig VGA256, add, `chipset "pvga1"`.
|
|
You will need a 512k board. There seems to be a problem with 800x600 mode
|
|
that causes pixels to be misplaced in the center 1/3 of the screen. 640x480
|
|
works fine. Anybody out there might have a fix for that? You may want to use
|
|
X386mono with 800x600 instead.
|
|
|
|
|
|
Fix for missing numlock control in xfree86-1.1.
|
|
use xmodmap to change the mapping:
|
|
clear mod1
|
|
add mod1 = Alt_L
|
|
keysym Alt_R = Mode_switch
|
|
add mod5 = Mode_switch
|
|
David (Dawes)
|
|
|
|
Sources for X11_FAQ:
|
|
Steve Kotsopoulos, Peter Hawkins, John Morris, MM. Corsini, K. Balasubramanian.
|
|
Direct comments, questions, complaints to krishna at:
|
|
balasub@cis.ohio-state.edu
|
|
|
|
XII. NETWORKING and LINUX
|
|
============================
|
|
*** This section should be maintained by Philip Copeland
|
|
*** (p_copela@csd.uwe.ac.uk). This first version was built by myself
|
|
*** (MM. Corsini) from the original material posted by Phil in c.o.l.
|
|
*** I hope the information provided below are readable and useful.
|
|
*** Last Update: 16 Nov 92 01:12:45 GMT
|
|
|
|
**** In the ANSWER part the I/MY stands for P. Copeland ****
|
|
|
|
QUESTION: Where can I find useful information about networking for
|
|
Linux ?
|
|
|
|
ANSWER: Join the NET channel on the multi-channel list. The
|
|
FAQ/INTRODUCTION written by P. Copeland should be posted every 2
|
|
weeks.
|
|
|
|
QUESTION: What do I need to get started ?
|
|
|
|
ANSWER: To use TCP/IP on local ethernet you will need the following
|
|
|
|
1) A linux machine with linux kernel 0.98.4 or newer
|
|
|
|
2) A WD8003/WD8013 compatible MEMORY MAPPED ethernet card
|
|
but WD8013 is probably the best to use due to its
|
|
electronic reconfiguration rather than jumper settings
|
|
although you'll probably need DOS to set it up
|
|
|
|
You should note that the kernel will always claim to
|
|
have found a WD8013. If this bothers you, change the printk
|
|
in linux/net/tcp/we.c to reflect your hardware.
|
|
|
|
*NOTE* no special hardward is needed to communicate with
|
|
yourself
|
|
|
|
Currently I know of three cards that will work (please tell
|
|
me if there are more) support for the ne2000 is being
|
|
worked on but little has been heard of it's progress
|
|
|
|
These are the WD8013, WD8003, and the SMC Elite 16.
|
|
|
|
3) If you are only going to use 'loopback' mode, you probably
|
|
won't need a card either! A special loopback device is used
|
|
to comunicate with yourself
|
|
|
|
4) some tcp/ip software eg telnet/ftp/talk/finger/rcp/
|
|
rsh/various other stuff like daemons etc...
|
|
|
|
5) Know the IRQ's of your internal cards.
|
|
|
|
6) A lot of coffee and one of those stress relieving
|
|
gadgets you can get in the local market.
|
|
|
|
QUESTION: Where to start ?
|
|
|
|
ANSWER: First off you'll need to rebuild the kernel with networking
|
|
compiled into the linux kernel. You do this by removing the '#'s in
|
|
linux/net/Makefile on lines 13,14 and 26 if they haven't already been
|
|
removed. Next you'll need to calibrate your network card. Decide what
|
|
IRQ setting you'll need for the network card.
|
|
Anyway for those who are frexible, the standard kernel parameters
|
|
for this are :-
|
|
|
|
INT = 5
|
|
mem = D0000
|
|
i/o addr = 280
|
|
memory start = D0000
|
|
memory end = D2000 (8K block for 8003, make it D4000
|
|
16k for the wd8013 )
|
|
|
|
but these can be changed on lines 12-17 (16,17 being the most important)
|
|
of the file linux/net/tcp/Space.c
|
|
|
|
*NOTE* if you have problems with the memory start addr, please get in touch
|
|
with bir7@EDU.Stanford.leland
|
|
|
|
Future versions of the TCP/IP code will be setable at boot time via
|
|
ioctl's. For those of you who do not have the wd8013 card, please refer to
|
|
the ethernet board documentation on the jumper settings you may have to change.
|
|
|
|
Right, compile the kernel (You may need to do a 'make clean dep Image')
|
|
and hopefully on the next reboot with the new kernel it should detect your card
|
|
telling you of the ethernet number it is, and also that a new family of
|
|
sockets (AF_INET) are available.
|
|
If your card is incorrectly inserted (I know you wouldn't) it could
|
|
cause all kinds of errors to be reported.
|
|
|
|
At this stage you have a kernel which supports tcp/ip via the
|
|
ethernet board in your machine but knows nothing of networking, that is
|
|
where the software in the tcpip suites becomes important as it is this
|
|
software that understands networking protocols.
|
|
|
|
QUESTION: What files do I need and setup info ?
|
|
|
|
ANSWER: the 0.8.0/0.8.1 suites have reasonable enough documentation to
|
|
get the various working parts out into somewhere useful on your
|
|
system, typically /usr/etc/inet and /etc
|
|
|
|
having followed the net install shell script you'll probably find that
|
|
it asked some questions that you hadn't a clue about,... well ok lets
|
|
look at it.
|
|
|
|
Enter Ip Address for (your host) (aaa.bbb.ccc.ddd)
|
|
|
|
here you are being asked what network address you would like to be known
|
|
as. Ip address are unique numbers so as to identify you machine from
|
|
another on a multiuser network.
|
|
Ip numbers are typically of the 0-255.0-255.0-255.0-255 range
|
|
so valid answers are 243.123.4.23 or 192.35.173.3 etc but 324.234.545.2
|
|
is completely wrong.
|
|
|
|
Enter Net Address for (your hostname) (aaa.bbb.ccc.0)
|
|
|
|
Here you are being asked for your subnetwork address.
|
|
A quick way of getting the question right is to type in whatever you
|
|
have for your ip address but make the last number 0 eg if my ip address
|
|
was 135.56.33.155, my 'safe' Net address would be 135.56.33.0
|
|
0.0.0.0 means the whole world and is probably what slip people shoul use.
|
|
|
|
Enter Router Address for (your hostname) (aaa.bbb.ccc.ddd)
|
|
|
|
Routers tend to have 2 ethernet boards in them whith differing network
|
|
numbers for them so that they can 'bridge' between different numbered
|
|
networks, eg you could not talk directly to a ip address of 192.35.173.12
|
|
from an ip address of 192.35.175.15 but a machine in the middle with
|
|
two ip address 192,35.173.4 and 192.35.175.3 can 'collect' the data from
|
|
the xxx.xxx.173.xxx network and transfer it to the xxx.xxx.175.xxx network
|
|
All we have to do here is stick in the ip address of the local router
|
|
in this case it would be 192.35.173.4 (clear as mud I know but it's as good
|
|
as it gets) If you don't have a router,... just stick in 0.0.0.0 meaning
|
|
don't route anything.
|
|
|
|
Enter Domain name for (your host)
|
|
|
|
This isn't too bad, domain names are 'convenient' labels eg uwe.ac.uk
|
|
is the domain name that appends to all the machines on site so that a sun
|
|
called csd would be known as csd.uwe.ac.uk
|
|
|
|
Name Server for Domain (aaa.bbb.ccc.ddd)
|
|
|
|
If your networked to the local Uni/technical collage your in luck and it
|
|
shoul be able to serve you with a name server service, find out from your
|
|
local network controller what machine distributes the service. If you are
|
|
unlucky enough NOT to have a nameserver, just stick in your own IP address,
|
|
you'll just have to run your own nameserver.
|
|
|
|
Ok time for a quick check of what you *SHOULD* have
|
|
in /usr/etc/inet
|
|
|
|
config - This sets up the ethernet ip tables
|
|
inetd - Daemon process that invokes other network daemons
|
|
inetd.conf - Configuration file for inetd about the other daemons
|
|
install.net - The semi automatic script I just talked about
|
|
named-xfer - Used for updating the nameserver records
|
|
named.reload - used to load in the named
|
|
named.restart - user to stop and restart the named process
|
|
rc.net - a network rc file called from /etc/rc.local from /etc/rc!
|
|
services - a file specifying what 'port' numbers certain services are
|
|
available on
|
|
telnetd - daemon for connecting reqesting external sites to your
|
|
machine for interactive logins
|
|
named - the nameservice daemon
|
|
|
|
|
|
QUESTION: What is DNS ?
|
|
|
|
ANSWER: DNS stands for Domain Name System. It doesn't rely on a
|
|
single large table; it is a distributed database system that doesn't
|
|
bog down as the database grows. DNS currently provides information on
|
|
approximately 700,000 hosts. DNS also guarentees that the new host
|
|
information will be disseminated to the rest of the network as it is
|
|
needed.
|
|
|
|
QUESTION: What are the configuration files for the DNS nameserver; and
|
|
how can I fix them ?
|
|
|
|
ANSWER: DNS configuration reqires that a number of files be edited in
|
|
the case of Linux these files are minimally (resolv.conf can be
|
|
optional)
|
|
/usr/etc/inet/
|
|
resolv.conf
|
|
or
|
|
named.boot
|
|
a_hosts_table (normally called named.hosts)
|
|
|
|
named.boot: domain uwe.ac.uk
|
|
primary uwe.ac.uk /usr/etc/inet/a_hosts_table
|
|
|
|
resolve.conf: domain uwe.ac.uk
|
|
nameserver 192.35.173.2
|
|
|
|
a_hosts_table: @ IN SOA slave.uwe.ac.uk. \
|
|
root.slave.uwe.ac.uk. (
|
|
1.1 ;serial
|
|
3600 ;refresh every 10 hours
|
|
300 ;retry every 6 minutes
|
|
36000000;expire after 1000 hours
|
|
3600 ; default dtl is 100 hours )
|
|
IN NS slave.uwe.ac.uk.
|
|
slave IN A 192.35.173.2
|
|
hal IN A 192.35.173.1
|
|
zen IN A 192.35.173.30
|
|
.
|
|
.
|
|
.
|
|
mother IN A 192.35.173.69
|
|
|
|
|
|
For most people, a nameserver will be available in which case the only
|
|
file really needed is resolv.conf which would contain only the domain
|
|
name of the site and a nameserver ip address to point to all the named
|
|
functions are thus the responsibility of the nameserver and not your
|
|
machine (crafty huh?)
|
|
Now unfortunately there are those of us that were just plain born
|
|
unlucky and had to RTFM so,... where a nameserver is not available it is
|
|
possible to run a nameserver service on your local machine.
|
|
The following is a list of flies that you will eventually need
|
|
although just named.boot and a_hosts_table will suffice
|
|
|
|
named.boot: Sets general named parameters and points to the
|
|
sources of the domain database information used
|
|
by this server. The sources can be local disks or
|
|
remote servers.
|
|
named.ca: Points to the root domain servers
|
|
named.local: Used to locally resolve the loopback address
|
|
named.hosts: The zone info file that maps host names to IP addresses
|
|
named.rev: the zone file for the reverse domain that maps IP
|
|
addresses to host names (you'll prob never touch it
|
|
so i'm going to skip it's description unless people
|
|
get upset enough to lynch me)
|
|
|
|
|
|
QUESTION: What is NFS ?
|
|
|
|
ANSWER: NFS stands for Network Filing System.
|
|
Network filing systems are convenient mechanisms which allow your
|
|
machine access to more disk space that it actually has by 'borrowing'
|
|
disk space from another networked machine for either sharing of common
|
|
data or if allowed, the storing of data generated by your machine.
|
|
NFS is still in alpha testing and has the unfortunate handicap
|
|
of not being able to run binaries over the interface due to mmap
|
|
support not being available at the moment but shell scripts can be run.
|
|
NFS has several benifits,
|
|
|
|
1) it reduces local disk storage requirements because
|
|
a network can store a single copy of a directory, while
|
|
the directory continues to be fully axcessible to everyone
|
|
on the network.
|
|
2) NFS simplifies central support tasks, becaue files can be
|
|
updated centrally, yet be available throughout the network
|
|
3) NFS allows users to use familiar UNiX commands to manipulate
|
|
files with rather than learning new ones. There is no need
|
|
to use rcp/tftp/ftp to copy files, just 'cp' will do
|
|
|
|
NFS is controlled by several files
|
|
|
|
/etc/exports
|
|
/usr/etc/inet/rc.net
|
|
|
|
The /etc/exports file allows your machine to decide what local
|
|
filesystems it will allow remote clients to NFS mount and decide what
|
|
access those clients should have to your filespace.
|
|
|
|
The /usr/etc/inet/rc.net file is used to start the named services and nfs
|
|
|
|
QUESTION: What are the most common trouble with the Linux Networking ?
|
|
|
|
ANSWER: One of the most common complaints requards the config command
|
|
what isn't often noted is that this has to be recompiled from the 0.8.1
|
|
sources (available currently on tsx-11.mit.edu: as
|
|
/pub/linux/ALPHA/tcpip/tcpip-0.8.1.tar.Z). Another problem that crops
|
|
up is that some binaries that are distributed requires libc.2.2.2 to
|
|
be present (mine I've no idea what version/wher it came from but it's
|
|
173060 bytes long if it helps!)
|
|
Other people think that it's their version of libraries that
|
|
cause the problem but can't find the source code for the various utils
|
|
to recompile. Well sorry folks you are out of luck, the source code
|
|
for those utils like ftpd and inetd are jealously held back because
|
|
they are buggy and full of ugly hacks so rather than have the net
|
|
flooded with complaints, they have been compiled into binary form and
|
|
shoved out the door with innocent looks about them. Of note are inetd
|
|
and named from the BSD sources, someone needs to port them as the
|
|
current ones are erm.. well not really inetd/named. A new telnetd will
|
|
probably be available after the kernel pty's are fixed which looks as
|
|
though it'll break a lot of ioctl code.
|
|
|
|
QUESTION: Any tricks that can help me to setup my system ?
|
|
|
|
ANSWER:Several things that can help
|
|
|
|
1) upgrade your kernel to the latest one that you can grab
|
|
a copy of (currently at time of writting 0.98.4)
|
|
2) join the NET mail channel, you can learn an awful lot
|
|
from the guys on this channel (like the various new
|
|
copyrighted techniques for tearing out your hair)
|
|
3) try and upgrade your C compiler and libraries to at least
|
|
version 2.2.2d7
|
|
4) binary distributions of various network probrams can be
|
|
found on sunsite.unc.edu,.. always read the README files
|
|
they are there for a reason! (personal show/contacts/etc..)
|
|
5) Depending on your type of problem, contacting the author
|
|
of the software or the person who ported the software would
|
|
be a better choice.
|
|
6) Complain bitterly to me if I haven't covered your problem
|
|
and I'll get it sorted for the next FAQ
|
|
|
|
Cast of this section
|
|
====================
|
|
|
|
Ross Biro - Without whom all this wouldn't be possible
|
|
and who pointed out holes in my documentation.
|
|
Also contributed the history of tcp/ip on linux
|
|
after he saw my rather perverted view of it.
|
|
|
|
Mitch DSouza - Constant alpha tester. Also pointed out mistakes
|
|
and made critical and helpfull suggestions (like
|
|
getting a spell checker). Also gave me his Tel No.
|
|
which I used to annoy him with.
|
|
|
|
Rick Sladkey - The current Author of the NFS client server code
|
|
who with the help of Doug Quale repatched the
|
|
kernel to support networking filesystems.
|
|
|
|
The pioneers - Mentioned in the history of TCP/IP 0.8.[01] by
|
|
Ross earlier in this FAQ
|
|
|
|
The supporting - You know who you are (probably, depending on how
|
|
extras much virtual beer you had last night) for contributing
|
|
to the network code.
|
|
|
|
Linus Torvalds - The elusive ecentric UNiX kernel coder who probably
|
|
burns more CPU time on compiling than anyone else
|
|
Here's to a long and healthy kernel development
|
|
program and a Nobel equiv award for his efforts.
|
|
|
|
Philip Copland - The only sad person to take on the FAQ because I was
|
|
getting annoyed at the number of 'petty' tcp/ip code
|
|
problems being asked on the net. Besides of which I
|
|
wanted to give something useful towards Linux which
|
|
I've used since 0.10 (does this make me a vetrian?)
|
|
|
|
XIII. EMACS for LINUX
|
|
=====================
|
|
*** This section is maintained by Rick Sladkey (jrs@world.std.com)
|
|
*** Last Update November 1992.
|
|
|
|
XIII.A. GENERAL INFORMATION
|
|
XIII.B. GNU EMACS for LINUX
|
|
|
|
XIII.A. GENERAL INFORMATION
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
This is a short list of Frequently Asked Questions about GNU Emacs
|
|
under Linux. It does not address general questions about Emacs which
|
|
are not Linux specific. For general help about Emacs, 1) learn to use
|
|
and read the online documentation, 2) read the real Emacs FAQ found in
|
|
emacs/etc/FAQ, and 3) read the newsgroup gnu.emacs.help.
|
|
|
|
Rick Sladkey <JRS@WORLD.STD.COM>
|
|
|
|
XIII.B. GNU EMACS for LINUX
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
QUESTION: Does Linux Emacs use the shared libraries?
|
|
|
|
ANSWER: Yes. It wasn't easy. If you have any problems with them let
|
|
me know. Also contact me if you would like static binaries.
|
|
|
|
QUESTION: What version of the compiler was used? Which shared libaries?
|
|
|
|
ANSWER: This describes version of GNU Emacs 18.59 for Linux 0.97 and above
|
|
compiled with GCC 2.2.2d7 using the libc.so.4.1 and libX11.so.2.1 shared
|
|
libraries.
|
|
|
|
QUESTION: Which files do I need?
|
|
|
|
ANSWER:
|
|
emacs-18.59a.tar.Z this file, sample default.el and diffs
|
|
for this version, the eight-bit patch,
|
|
iso-latin-1.el and eight-bit.el
|
|
emacs-etc-18.59a.tar.Z emacs support programs and misc info
|
|
emacs-bin-18.59a.tar.Z shared emacs binary and its doc file
|
|
x11emacs-bin-18.59a.tar.Z shared x11emacs binary and its doc file
|
|
|
|
QUESTION: How do I install them?
|
|
|
|
ANSWER: According to Linux convention, cd to /usr and untar the
|
|
packages.
|
|
|
|
QUESTION: Does Linux Emacs support eight-bit input/output?
|
|
|
|
ANSWER: Yes. It is new with this version. It uses the so-called
|
|
"ctl-arrow" patch. See the file README.8bit for more information.
|
|
|
|
QUESTION: How much disk space is required?
|
|
|
|
ANSWER: Anywhere from 1 to 15 Meg. Emacs works reasonably well with no
|
|
support files at all. With a judicious selection from lisp/*.elc and
|
|
etc/*, quite a lot can be done using only 2 Meg. If you want all of
|
|
lisp/*.elc, info/*, and etc/* this will require 4 to 6 Meg. If you
|
|
unpack the whole source you need 8 Meg. If you collect info files
|
|
like rare coins and install a lot of big lisp packages then Emacs may
|
|
need its own partition. :-)
|
|
|
|
QUESTION: Why does Emacs crash under Linux 0.98 patchlevel 4 or higher?
|
|
|
|
ANSWER: It crashes becuase of the a new 256-bit wide fd_set structure.
|
|
Sometimes progress requires sacrifice.
|
|
|
|
QUESTION: Why can't Emacs find its support files anymore?
|
|
|
|
ANSWER: This is because older versions of Emacs were compiled with
|
|
"/usr/local/emacs" based paths. The current version is compiled with
|
|
"/usr/emacs" paths. If you have a previous installation, just "mv
|
|
/usr/local/emacs /usr" and you're done. If you can't bear to part
|
|
with the "/usr/local" pathnames because of inertia then do "ln -s
|
|
/usr/local/emacs /usr" and you can have them both.
|
|
|
|
QUESTION: How do I get Emacs to recognize my cursor keys?
|
|
|
|
ANSWER: Simple. Don't use them. :-) Seriously, there are as many
|
|
ways to do this are there are elisp hackers but the preferred way is
|
|
to follow the pattern set by the other terminal definition files in
|
|
emacs/lisp/term/*.el. For just arrow keys you can just copy vt220.el
|
|
to console.el and that's it. For function keys and the others see
|
|
the sample default.el included with this file.
|
|
|
|
QUESTION: What packages are particularly useful under Linux?
|
|
|
|
ANSWER: Because info format is the documentation standard of the GNU
|
|
project and just about everything except the kernel comes from FSF,
|
|
you will find that Dave Gillespie's enhanced info package is very
|
|
useful. It allows multiple info directories, space bar paging, and
|
|
supports compressed info files. Please learn to use info. Imagine
|
|
Unix life without man.
|
|
|
|
Others that I highly recommend are Sebastian Kremer's enhanced
|
|
dired directory editor, Dave Gillespie's calc calculator, Masanobu
|
|
UMEDA's gnus for usenet news, and Kyle Jone's vm for mail.
|
|
|
|
All can be found in the OSU Emacs archive. See the real FAQ for more
|
|
details.
|
|
|
|
QUESTION: Does Linux Emacs use the shared libraries?
|
|
|
|
ANSWER: Yes. It is very delicate. Emacs uses its own malloc and the
|
|
library uses the standard one. Everything works as long as the two
|
|
never meet.
|
|
|
|
QUESTION: Does Linux Emacs support the X Window System?
|
|
|
|
ANSWER: Yes. However, there are two binaries. One without X support
|
|
(about 485k) and one with X support (about 515k).
|
|
|
|
QUESTION: Do I need both Emacs if I don't always use X?
|
|
|
|
ANSWER: No. The X11 version works equally well inside or outside of
|
|
X. If you get the message "Check your DISPLAY variable" it means that
|
|
you have defined DISPLAY in your ~/.profile (or whatever). You can
|
|
fix this by starting Emacs with 'emacs -nw' or by removing the DISPLAY
|
|
variable from your ~/.profile and putting it in you ~/.xinitrc.
|
|
|
|
QUESTION: Why doesn't Emacs use the settings in my
|
|
.Xdefaults/.Xresources file?
|
|
|
|
ANSWER: You are probably using the word "emacs" and your X version of
|
|
emacs is called x11emacs. Either use the word "Emacs" in your resource
|
|
file or rename x11emacs to emacs. See above question on why this
|
|
is reasonable.
|
|
|
|
QUESTION: I read about some menu that is supposed to pop up when I
|
|
press some mouse button. Does this work with Linux Emacs?
|
|
|
|
ANSWER: Yes. This requires XMenu support to be compiled in. Former
|
|
versions did not support it because it did not work correctly.
|
|
|
|
QUESTION: Sometimes Emacs crashes with a SIGALRM message. What's
|
|
wrong?
|
|
|
|
ANSWER: You need to upgrade to a newer version of bash. Some older
|
|
versions of bash were compiled with buggy libraries that caused bash
|
|
to send a SIGALRM to its parent in some circumstances. Recent
|
|
versions do not exhibit this problem.
|
|
|
|
QUESTION: Why does Emacs always put me in the root directory?
|
|
|
|
ANSWER: You have an old version of Emacs compiled before GCC 2.11c and
|
|
you are using the Linux extended filesystem. Get the new version.
|
|
|
|
QUESTION: Why doesn't Control-Z doesn't work right with Emacs?
|
|
QUESTION: Why doesn't job control work in shell mode?
|
|
|
|
ANSWER: You have a really old version of Linux Emacs. Get the new one.
|
|
|
|
===================8<==========>8================
|
|
</PRE>
|
|
<HR>
|
|
<A href="http://home.ins.de/~m.hussmann/linux.html">Back to M.H.'s Linux
|
|
links</A> </BODY></HTML>
|