From: Marc CORSINI (corsini@numero6.greco-prog.fr)
Date: 03/18/92


From: corsini@numero6.greco-prog.fr (Marc CORSINI)
Subject: FAQ part1 of 2
Date: Wed, 18 Mar 1992 23:57:34 GMT


Hi Linuxers!
This is the first part of the FAQ, it contains part I. to IV. of the
FAQ. I will post them to the main sites in a while.
=======================

The originall FAQ 1st version was posted in Dec. 19, by Robert Blum,

Most credits of this work to Linus, Robert and Ted, 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). I haven't copyrighted them, so thanks to every one who
participated even indirectly to this FAQ.

[To find what has changed, view the `Cdiff-faq' in my previous posting.
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 alt.os.linux
newsgroup (and also the 'linux-activists' mailing list), and spare the
time of many activists. I will post it twice a month, since there are
more and more new incomers, and new features.

BTW I think this FAQ should be available at the main Linux sites in
the doc directory (have you read this Ary, Robert, Ted ?). So I will
send a copy to the main sites.

Please suggest any change, rephrasing, deletions, new questions,
answers ...
Please include "FAQ" in the subject of messages sent to me about FAQ.
Please use corsini@labri.greco-prog.fr whatever will be the From part
of this message.

Thanks in advance,
                                Marc <corsini@labri.greco-prog.fr>

Remind the vote for comp.os.linux;
post the YES vote to linux-yes@bloom.beacon.mit.edu
The voting period will last through 00:00 UTC (7:00pm EST), 19 March
1992.

Future Plan:
        - verification/location/organization for files available
        via FTP (I've tried what a mess!!)
        - cross posting this to news.answers as soon as comp.os.linux
        is created.
        - reorganization of the FAQ. I don't know how, but I feel it's
        needed, any help appreciated.

================================8<=====8<==============================
CONTENTS
        I. LINUX GENERAL INFORMATION
        II. LINUX USEFUL ADRESSES
        III. INSTALLATION and SECURITY
        IV. LINUX and DOS
        V. SOME CLASSICAL PROBLEMS
        VI. INSTALLATION HINTS
        VII. FEATURES
        VIII. MORE HINTS

I. LINUX GENERAL INFORMATION
=============================

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 0.95a, date: March 17th 1992. The previous version v0.95
(March 7th) had some bugs, please do not use it anymore.

   Linux 0.95(a) is a freely distributable UNIX clone. It implements a
subset of System V and POSIX functionality. 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: What is the current state of Linux?

ANSWER: do "finger torvalds@kruuna.helsinki.fi", or read the
alt.os.linux newsgroup.

QUESTION: I've just heard about linux, what should I do to get it?

ANSWER: First read all this FAQ, and the INFO-SHEET monthly post, then
go to the nearest ftp site (see below), download the Images there are
two a rootimage and a bootimage (in general in the images directory),
download the INSTALL and RELNOTES files. Find the rawrite utility
(for example at tsx-11 it's in /pub/linux/INSTALL), then rawrite the
images on high density floppies (5.25 or 3.5), finally boot on the
root diskette and that's it.

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. A high density floppy
drive -- either 5".25 or 3".5

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, and 4M is definitely a plus. It can
happily use up to 16M (and more if you change some things). People
are working on a SCSI-driver.

BTW it works for some ESDI drive (Joincom controller with Magtron
drive after you have commented out the "unexpected hd interrupt"-message
from hd.c). And quite recently for some SCSI adapter.

QUESTION: How would this operate in an OS/2 environment?

ANSWER: Fine.

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: How big is the 'complete' Linux package?

ANSWER: Well, the boot and root image diskettes are about 750k
compressed. The kernel sources are about 200k compressed, and the
libc sources are another 170k compressed. The GNU C compiler is 670k,
and the other miscellaneous unix utilities are probably a bit over a
megabyte.

Now add sources to whatever you want to port and compile yourself.
The sources to GNU emacs are about 3 megabytes, compressed. Groff (a
troff replacement) is just over 1 megabyte.

If you think this is big, remember that the OS/2 2.0 Limited
Availability release is 20 1.44 megabyte diskettes.

QUESTION: Since how long does linux exist?

ANSWER (partial): Few months, v0.10 went out in Nov. 91, v0.11 in Dec.
and the current version 0.95a is available since March 17th 92. 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.

QUESTION: What's about the copywright of linux.

ANSWER: This is an except of the RELEASE Notes v.095a: Linux-0.95a is
NOT public domain software, but is copyrighted by Linus Torvalds. The
copyright conditions are the same as those imposed by the GNU
copyleft: get a copy of the GNU copyleft at any major ftp-site (if it
carries linux, it probably carries a lot of GNU software anyway, and
they all contain the copyright).

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 400 persons, very few of them enhance the kernel, some
adds/ports new soft and most of us are only (but USEFUL) beta testers.
So join us and choose your "caste"

QUESTION: What are the differences, pros and cons compared to Minix ?

ANSWER (partial):
Cons:
- Linux is not as mature as Minix, there is less working software right now.
- 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: 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: Not yet, but kermit has been ported to Linux, and the ka9q too.

QUESTION: Does linux do paging? Can I have virtual memory on my small
machine?

ANSWER: Linux0.95(a) does do paging in a better way than Linux0.12.

QUESTION: Can I have tasks spanning the full 4GB of addressable 386
memory? No more 64kB limits like in coherent or standard minix?

ANSWER: Linux does limit the task-size, but at a much more reasonable
64MB (MEGA-byte, not kilos), so bigger programs are no problem.

QUESTION: Does the bigger program sizes mean I can run X?

ANSWER: X is not ported to linux, and I hope it will be some day,
people are working hard on it but it's big, and wants a lot from
the system.

II. LINUX USEFUL ADRESSES
=========================

QUESTION: Where can I get linux?

ANSWER: Linux can be gotten by anonymous ftp from
        nic.funet.fi (128.214.6.100):
                directory /pub/OS/Linux
        Tupac-Amaru.Informatik.RWTH-Aachen.DE (137.226.112.31):
                directory /pub/msdos/replace
        tsx-11.mit.edu (18.172.1.2):
                directory /pub/linux
        ftp.eecs.umich.edu (141.212.99.7):
                directory linux
        src.doc.ic.ac.uk (146.169.3.7):
                directory /pub/os/Linux
        hpb.mcc.ac.uk (130.88.200.7):
                directory pub/linux
        ustsun.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.

If you don't have ftp-capability, you are in trouble. See next Q/A. If
you have no uncompress utility, there are a lot even for DOS, have a
look on SIMTEL, or else use facilities provided by some sites to
uncompress for you. Don't do that if you can, because it's lengthy,
expensive and causes troubles to other users on ftp sites.

QUESTION: I do not have FTP access, what can I do to get linux?

ANSWER: 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

QUESTION: Is there a newsgroup or mailing-list about linux? Where can
I get my questions answered? How about bug-reports?

ANSWER: alt.os.linux is formed, and comp.os.linux is on the way, for
those who can't access to the news you can ask for digest to:
Linux-Activists-request@NEWS-DIGESTS.MIT.EDU. On the other hand, mail
sent to Linux-Activists@NEWS-DIGESTS.MIT.EDU are posted to
alt.os.linux

DO NOT mail "I want to [un]subscribe" to the newsgroup, use
the request-address. IF not your mail-box will be over-crowded by
activists.

Questions and bug-reports can be sent either to the newsgroup or to
"torvalds@kruuna.helsinki.fi", depending on which you find more
appropriate.

BTW People are working on the organization of Linux, this is done on
a separate mailing-list.

linux-standards: Discussion of distribution and directory standards
for the Linux operating system, including directory structure, file
location, and release disk format.

Requests to be added to this list must be sent to:
              linux-standards-request@banjo.concert.net

QUESTION: Does there exist a place where the traffic of the newsgroup
is kept?

ANSWER: Yes, on nic and tsx-11 (see the ftp adresses above)

III. INSTALLATION and SECURITY
==============================

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 BLOCKS, ie 1024 bytes, not
sectors. The mkfs doesn't work for very big partition (over than 64
Megs). Also, make doubly certain that you have the correct partition.

There are a few rules about this: /dev/hda (under linux0.95a) corresponds
to /dev/hd0 (under minix) and /dev/hdb (linux0.95a) to /dev/hd5
(minix). DO NOT USE THEM, they are the whole raw
disk, not partitions. Also if a partition is on drive 1 under minix
(ie /dev/hd1-4), it is drive 1 under linux as well. Moreover, there
is no real consensus on whether partition #1 is the first partition on
the disk, or is the first entry in the partition table. Some parition
programs sort this information on the screen only, some will write the
sorted information back to the hard disk. Linux assumes that the
first entry is hda1, and so if some utility starts sorting/reordering
the table these things can change. Moreover, do not use extended
partition (this is in the installation notes).

REMARK Minix does some reordering.

A useful hack is to make each of your partitions a different size.
Then after any editting or possible change to the partition table you
can boot a floppy system and run fdisk (linux's, not DOS) to see if
the assignments still hold.

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
(currently the same fs as Minix). You should, at least, make on your
hard disk, one partition per operating system you want to use.

QUESTION: I mounted the linux filesystem, and copied the files from
the root-disk to the harddisk. Now I cannot find them any more, and
somethimes linux dies with a "panic: trying to free unused inode".

ANSWER: You have probably forgot to sync before rebooting. Linux, like
all unices, use a "buffer cache" to speed up reads and writes to disk.
On a machine that has enough memory, this buffer-cache is 1.5MB, and
if you forget to sync before exiting, it may not be fully written out
to disk. Re-mkfs and re-install (or try to use the preliminary fsck,
but remember that although fsck tries to correct the faults it finds,
it may fail.)

IV. LINUX and DOS
=================

QUESTION: Is it possible to access to DOS world from Linux

ANSWER: Yes, there is the mtools package (with patches for devices.c)
The original sources of mtools can be found at any places not only at
nic, tupac and tsx-11, and the patches for Linux (with fix for big DOS
partitions are in the directory patches or ports). Moreover you should
download the file patch.Z to apply patches :)
It is possible to find the compiled mtools stuff at mcc (see above for
the adress)

QUESTION: the mtools package won't work. I get an ENOENT error message
for all devices.

ANSWER: mtools needs to be told which device to look for. Use 'ln' or
'mknod' to create a special file called "/dev/dosX", where X is A, B,
C, X or Y. A and B are for floppies (12 bits), C is for hard disk and
X, Y for any. This file should point to the device you want to read.
About the minor/major pair have a look in section INSTALLATION HINTS.

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.

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:

 - No segments - everything is in the same segment (at least in the
   bootsectors and setup, as they don't use the .data segments)

 - mov[b|w|l] are shorter versions of mov ax,[byte|word|long] ptr
[XXX].
   This is how unix assemblers normally give the size (byte, word or
long).
   Gas has similar constructs.

 - There is no "jmp short", the opcodes are "j" for a short jump and
   "jmp" for a long one.

 - "jmpi" is a jump with a segment:offset pair. I don't know how this
is
   written in DOS assembly.

==================================8<==========>8=================
                        Marc <corsini@labri.greco-prog.fr>