General Commands UNIX

 

who Tells you who else is on your system.
whoami Tell you who YOU are.
who am i Information on what computer you're on, the time, etc.
w Tells you the last thing that each of them has typed. (Keyboard voyerism, but you can learn from it.)
last last - ecleung will tell you when is the last 5 times that ecleung login.
passwd The way to update your password. (You must know your current password.)
uname Gives the type of UNIX system your running on.
uname -a gives all system information (op system, version, processor type, etc)
finger (address) Gives you information about some person, if available. Also tells you if they are logged on.
Some computers will tell you more with finger --info (address).
clear Clears the screen, helps you to relax, increases alpha brain waves.
h Lists a history of previously typed commands. If you type h 5 it will return the last 5 commands.
date Returns the date and the time
ps Gives a list of all the recent stuff you've run, with the id numbers beside each. ps -u ecleung will list all processes user ecleung running, includes those in the background.
jobs Tells you what jobs are running on your account. To get more information, use jobs -l for the long listing. This will include the process id # (the "pid").
kill Kills a process that you don't want to keep running. Like when the computers mentions that there are still jobs running, and you're thinking, "what jobs?" Well, use either the ps or the jobs command to find out the pid number, and then type something like kill -12345 (for example, process number 12345).

Directory Commands

pwd This stands for "present working directory." Tells you where you are in the great directory of life.
cd (directory) Changes to the directory of your choice.
cd .. Takes you "back" one directory in the great disk space tree of life.
ls Short form of a directory listing of where you're at.
ls -l Long form of the directory listing. Also gives you the file sizes.
ls -las A longer form with lots of good information, like the user/group rights.
du Tells you how much disk space this branch of the directory tree has eaten up, including all the subbranches that are attached to it.
mkdir (name) Make a directory.
rmdir (name) Remove a directory after the fun of creating it wears off.

File Commands

cat (file1) (file2) Concatenates two files together into one BIG file. The new file name will be whatever (file1) was. cat (file) will type the content of (file) to the standard output (your screen).
rm (filename) Removes a file of your choice.
more (filename) Will type out the contents of this file.
pico (filename) UNIX editor program. Some help on the bottom of screen. If the filename you put in doesn't exist, it will creates it for you.
vi (filename) Another UNIX text editor with more features, but less intuitive.
mv The ominus move command: doubles for the rename command. To use it to rename a file:

mv (old filename) (new filename)

To use it to just move it somewhere else:

mv (filename) /(directory of your choice)/

which leaves the filename the same, or to move and rename:

mv (old filename) /directory/(new filename)

cp Copy command. Works similar to mv but leaves original:

cp (filename) (new filename)

Or, to copy it and move to another directory:

cp (filename) /directory/(new filename)

diff (file1) (file2) Compares two files and shows you what's different between them. It also tells which lines are different. Helpfull when trying to decide why you have two files named almost the same thing, and you can't remember why, or you're trying to decide which copy to keep, etc.
Some convenient switches are:

diff -i (file1) (file2) - ignores upper/lower case distinctions
diff -b (file1) (file2) - ignores blank spaces on the end of lines
diff -w (file1) (file2) - ignores all spaces and tabs


Internet Unix Programs

whatis (command) Gives a (very) short description of what a command does.
apropos (command) Gives a listing of every command on your system that has something to do with the command you typed in, along with a short description of what they're for or do.
man (command) The system's on-line Manual. If you're confused about some command, or just want to see if a command exists, use this. Slightly unreadable for the most part, but can do if you can't find someone to explain it in your native tongue.
look Spell-checker for unix users. Wanna know if a word is really a word? Type "look (word)" and if it echoes it back to your screen (perhaps with a few variations) then it's a word, otherwise you spelled something wrong.
pine One of the more popular ways to do some UNIX emailing. Just type pine and it starts up. The instuctions on how to use it are on-screen.
talk (address) The great time waster, if your other party is on-line, and is compatible with your server's protocols. If that doesn't seem to do it, there are a couple of common alternative ways of trying the same thing: Either ytalk or ntalk which are as well multiple user options for "talk"ing.
ftp (place) The UNIX way to ftp some place, from back in the cave-computing era. Stands for "file transfer protocol." With this, you can look at public directories of files and take any of them you like.

Ex: ftp ftp.netscape.com

Once inside:

dir Directory listing
cd .. Same as normal
get (filename) Gets file, puts it on your UNIX account. (Once there, you will need to transfer it to your computer, if you need to.)
bye or exit To get outa there

If you just type "ftp" or can't get in to your first choice location, you will get an "ftp>" prompt. From here, to go somewhere you type:

open (place)

ncftp (place) Not yet available on the UCSU accounts! Just a better way of doing ftp. Friendlier, with those great percentage-done transfer bars included. More help too.

If you're trying to get into some hard-to-reach place, like Netscape, try the "repeat" option:

ncftp -r ftp.netscape.com

Gets you in as soon as possible.

 

 

 

 

[UNIX-hack]

Error Messages that one may came across:
----------------------------------------
Login incorrect - An ivalid ID and/or pw was entered.This means nothing.
                  In UNIX there is no way guessing valid user IDs.You may     
                  come across this one when trying to get in.
No more logins - will happens when the system wont accept anymore logins
                 could be going down            
Unknown Id - will happen if an ivalid id is entered using (su) command
Unexpected eof in file - The file being stripped file has been damaged
Your password has expired - This is quiet rare although there have been cases
                            where it happened.Reading the etc/passwd will
                            show you at how many intervals it changes.
You may not change the password - The password has not yet aged enough.The
                                  Administrator set the quotas for the users
Unknown group [groups name] - occurs when chgrp is executed ,group doesn't
                              exist
Sorry - Indicated that you have typed in an invalid super user password(execu-
        tion of the su)
Permission denied!- Indicated you must be the owner or a super user to change
                    password.
Sorry <[# of weeks] since last change - This will happen when password has    
                                        has not aged enough and you tried to
                                        change it(passwd)
[directory name]:no permission - You are trying to remove a directory which
                                 you have no permission to.
[file name] not removed - trying to delete a file owned by another user
                          that you dont have write pemision for. 
[dirname] not removed - ownership of the dir is not your that your trying to  
                        delete. 
[dirname] not empty - the directory contains files so you must have to delete
                      the files before executing the rmdir 
[command] not found - you have entered an ivalid command not know to UNIX
cant execute pwd - some thing wrong with the system cant execute pwd command
cannot chdir to .. -   (.. one level up) permision is required to execute pwd
                       above the current directory
cant open [file name] - defined wrong path,file name or you have no read
                        permission
cp:[file name] and [file name] are identical - self explanatory  
cannot locate parent directory - occurs when using mv
[file name] not found - file which your trying to move doesn't exsist
You have mail - Self explanatory

Basic Networking Utility error messages
---------------------------------------
cu:not found - networking not installed
login failed - invalid id/pw or wrong # specified
dial failed - the systen never answered due to a wrong #
uucp completely failed - did not specify file after -s
wrong time to call - you called at the time at a time not specified in the
                     Systems file
system not in systems - you called a remote not in the systems file

Logon format : first thing one must do is switch to lower case
--------------
Identifing a UNIX.Here is what you'll see:
Some times there will be no system identifer
                             
AT&T UNIX SysVR3.0 (eg of a system identifier)

login:
 or
Login:

Any of these is a UNIX.Here is where you will have to guess at a user valid
id.Here are some that I have come across eg( glr,glt,radgo,rml,chester,cat,
lom,cora,hlto,hwill,edcasey and also some containing numbers smith1,mitu6 or
special characters in it like bremer$,j#fox.Login names have to be 3 to 8
chracters in lenght lowercase and must start with a letter.In some XENIX
systems one may login as "guest"

User level accounts:(lower case)
-------------------- 
In Unix they have whats called accounts .These
accounts can be used at the "login:" prompt.
Here is a list:

sys
bin
trouble
daemon
uucp
nuucp  
rje
lp
adm
listen - if starlan is installed

Super-user accounts:
--------------------
And then there are super-user login which make UNIX worth hacking.   
The accounts are used for a specific job. In large systems these logins
are assingned to users who have a responsibilty to maintain subsystems.

They are as follows :(all lower case)

root       -  this is a must the system comes configured with it.It has no
              restriction.Has power over every other account.
unmountsys -  unmounts files
setup      -  system set up
makefsys   -  makes a new file
sysadm     -  allows useful S.A commands(doesn't need root login)
powerdown  -  powering system down
mountfsys  -  mounts files
checkfsys  -  checks file

These accounts will definitly have passwords assigned to them.These
accounts are also commands used by the system administrator.

Here are some examples of accounts I have seen:

cron         uuhelp     usenet
anonuccp     news       network
bellboy      lp         vector
guest        games      ninja
vote         warble     sysinfo



After the login prompt you will receive a password prompt:

password:
  or
Password:
    
Enter the password (it wont echo).The password rule is as follows:Each pw
has to contain at least 6 characters and maximum has to be 8 .Two of which are
to be alphabetic letters and at least one being a number or a special character
The alphabetic digits could be in upper case or lower case.Here are some of the
passwords that I have seen (eg.Ansuya1,PLAT00N6,uFo/78,ShAsHi..,Div417co)

The passwords for the super user accounts will be difficult to hack
try  the accounts interchangebly eg.login:sysadm password:makefsys or rje1,
sysop,sysop1,bin4 or they might contain letter,numbers,special chracters in
them.It could be anything.The user passwords are changed by an aging proccess
at successive intervals.The users are forced to changed it.The super-user
will pick a password that wont need changing for a long period of time.

You have made it! 
----------------- 
The hard part is over and hopefully you have hacked a super-user account.
Remember Control-d stops a process and also logs you off.
The next thing you'll probably see is the system news
eg.

login:john 
password:hacker1        
System news                 
There will be no networking offered to the users till
august 15,due to hardware problems.             
(just an example)

$

$ is the Unix prompt -waiting for a command to be entered.I will use this
                      throught the article to show outouts etc..(Its not
                      part of the command)
# - means your logged in as root(very good)

A word about the XENIX System III:(run on the tandy 6000)
---------------------------------                  
The largest weakness in the XENIX System III occurs after the installation
of the Profile-16 or more commonly know as the filepro-16.I have seen the     
filepro-16 installed in many systems.          
The installation process creates an entry in the password file for a user  
named \fBprofile\fR ,an account that who owns and administors the database.
The great thing about it is that when the account is created ,no password is
assigned to it.The database contains executable to maintain it.The database
creation programs perform a \fBsetuid\fR to boot up the \fBoot\fR  there by 
giving a person the whole C Shell to gain Super User privilege same as root.
Intresting huh!
                     

* Note: First the article will inform you of how the Unix is made up

The Unix is made if three components-The shell,the kernal,file system.
 
The kernal:
-----------
You could say that the kernal is the heart of the Unix operating system.
The kernal is a low level language lower than the shell which maintains
processes .The kernal handles memory usage ,maintains file system
the sofware and hardware devices.
 
The shell:
----------
The shell a higher level language. The shell had two important uses,
to act as command interpreture for example using commands like cat,who,       
ls the the shell is at work figuring out whether you have entered a command
correctly or not.The second most important reason for the shell is its ability
to be used as programing language.Suppose your performing some tasks      
repeatedly over and over again,You can program the shell to do this for you.
         
The file system:   
---------------
The file system in Unix is divede into 3 catagories:Directories,ordinary files
and special files.(d,-)
          
Basic stucture:        
(/)-this is abreviation for the root dirctory.
  root level                      root
                                  (/)                                  system
-------------------------------------|----------------------------------level
|      |        |         |                  |        |       |        |
/unix   /etc    /dev      /tmp               /lib     /usr    /usr2    /bin
        |                                        _____|_____
login passwd                                     |    |    |
level                                            /john  /cathy    
                             ________________________|_______________
                            |        |     |      |        |        |
                        .profile   /mail  /pers  /games   /bin     /michelle
*.profile - in case                        |    __|______  |      __|_______
 you wich to change your enviroment     capital |        | data   |         |
but after you log off.It sets to              othello  starwars letter letter1
default.                                     

the /unix-is the kernal
/etc - contains system administrators files,Most are not available to the
       regular user.(this directory contains the /passwd file)

    Here are some files under /etc directory:
    /etc/passwd
    /etc/utmp
    /etc/adm/sulog
    /etc/motd
    /etc/group
    /etc/conf
    /etc/profile
  
/dev - contains files for physical devices such as printer and the disk drives
/tmp - temporary file directory
/lib - dirctory that contains programs for high level languages
/usr - this directory contains dirctories for each user on the system

     Eg. of a list of files under /usr
    /usr/tmp
    /usr/lib
    /usr/docs
    /usr/news
    /usr/spool 
    /usr/spool/lp
    /usr/lib/uucp

/bin - contain executable programs (commands)

The root also contains:                                                       
/bck - used to mount a back up file system.
/install - Used to install and remove utilities
/lost+found - This is where all the removed files go,This dir is used by fsck
              (1M)
/save -A utility used to save data
/mnt - Used for temporary mounting

**Now the fun part scouting around**

                 Local commands (Explained in details)
                 -------------------------------------
At the unix prompt type the pwd command-it will show you the current working
directory you are in.

$ pwd
$ /usr/admin - assuming that you have hacked into a super user acc checkfsys
$

This gives you the full login directory.The / before tell you the location
of the root directory                     

or

(REFER TO THE DIAGRAM ABOVE)
$ pwd
$ /usr/john   
$
Assuming you have hacked into johns acc.

Now lets say you wanted to move down to the michelle directory( you own this)
that contains letters.You would type in

$ cd michelle or cd usr/john/michelle
$ pwd
$ /usr/john/michelle
$

Going back one directory up type in:
$ cd ..
or going to your parent directory just type in "cd"
      
Listing file directories assuming you are in the parent directory:

$ ls /usr/john
mail
pers
games        
bin
michelle
This wont give you the .profile file .To view it type
$ cd
$ ls -a
:
:
.profile

To list file names in michelles directory type in:
$ ls michelle (that if your in the johns directory)
$ ls /usr/john/michelle(parent dir)

ls -l            
-----             
The ls -l is an an important command in unix.This command displays the whole
directory in long format :Run this in parent directory

$ ls -l
total 60
-rwxr-x---    5 john      bluebox    10 april 9  7:04  mail
drwx------    7 john      bluebox    30 april 2  4:09  pers
     :            :         :         :     :      :    :
     :            :         :         :     :      :    :
-rwxr-x---     6 cathy    bluebox    13 april 1  13:00 partys
     :            :         :         :     :      :    :
$
   
The total 60 tells one the ammount of disk space used in a directory.The     
-rwxr-x--- is read in triples of 3.The first chracter eg(-,d,b,c)-means as
follows: - is an ordinary file ,d is a directory,b is block file,c is a
chracter file.
The r stands for read permission,w is write permission,x is execute.The first
colum is read in 3 triples as stated above.The first group of 3 (in -rwxr-x---)
after the "-" specifies the permission for the owner of the file,the second
triple are for the groups (the fourth colum) and the last triple are the      
permissions for all other users.Therefore the -rwxr-x--- is read as follows.
The owner john has permission to read,write and execute anything in the bin
directory but the group has no write permission to it and the rest of the users
have no permission at all.The format of one of the lines in the above output
is as follows:

file type-permissions,links,usersname,group,bytes taken,date,time when last
renued,directory or file name.
**You will be able to read,execute cathys file named party due to the same
group***

chmod                    
-----             
The chmod command changes permission of a directory or a file.Format is
chmod who+,-,=r,w,x
The who is substituted by u-user,g-group,o-other users,a-all.
The + means add permission,- means remove permission,= - assign.  
Example :If you wanted all other users to read the file name mail ,type:   

$ chmod o+r mail
 
cat         
---          
Now suppose you wanted to read the file letter .There are teo ways to doing
this.First go to the michelle directory then type in:

$ cat letter
line one ...\
line two ... }the output of letter
line three../
$
   or
If you are in the parent directory type in:
$ cat /usr/john/michelle/letter
and you will have the same output.

Some cat options are  -s,-u,-v,-e,-t

Special Chracters in Unix:
-------------------------
*  - matches any number of single characters eg. ls john* will list
     all files that begin with john
[...] - matchs any one of the chracter in the [ ]
? - matches any single chracter
runs a process in the backgroung leaving your terminal free
$ - Values used for variables also $n - null argument
> - redirectes output
< - redirects input to come from a file
>> - redirects command to be added to the end of a file
| - pipe output (eg:who|wc-l tells us how many users are online)
"..." - Turn of meaning of special chracters excluding $,`
`...` - allows command output in to be used in a command line
'...' - turns of special meaning of all chracters

continuation of local commands...[     ] -contains the options used
------------------------------- 
passwd
------
Password changing seems to be a big thing among the savants.Anyway to change
the password one would use the 'passwd' command as shown below:

   $passwd
   Changing password for john
   Old password:                              
   New password:                              
   Retype new password:
   $
  
This will only work when the password has aged enough

ps
--
Its sometimes necessary to see what command procesess you are running,this
command lets you see that.
ps [-a all processes except group leaders] [-e all processes] [-f the whole
   list]                                                           

   $ps
   PID   TTY  TIME   COMMAND
   200   tty09 14:20  ps

   The systems reports (PID - process idenetification number which is a #
   from 1-30,000 assigned to UNIX processes)
   It also reports the TTY,TIME and the COMMAND being executed at the time.
   To stop a process enter :    

   $kill [PID] (this case its 200)
   200 terminated
   $

grep
----
This comand is important when seaching for a word or words in large files.

grep [argument] [file name] - searchs for an file that contains the argument
                              for example:
   $ grep phone cathy
    phone   michelle  (718)5551234
    phone   cindy   (718)5553456

    What this did was to find the argument 'phone' in the file cathy.If the
    argument consists of two or more words then  it must be enclosed in single
    quotes.


mv
--
mv [file names(s)] [ dir name ] - renames a file or moves it to another     
                                  directory eg.      
   $mv letter letters 
   $
   This renames the file letter to letters thereby deleting letter
                  or if you want to move files then
   $mv /usr/john/pers/capital /usr/john/michelle/capital
   $   
   This moves the file capital to the directory named michelle

diff
----
diff [file name] [ file name] - show diffrence between two files.Output of this
                                will have something like 4,5c4,5 then the it
                                will display both sets of files on the screen
                                The 4,5c4,5 means that you must change "c"
                                lines 4 to 5 in one file to line 4 to 5 in   
                                another.
      Option for using this command are :
       -b  -  it ignores blank spaces
       -h  - compares it quickly
       -s  - reports files that are the same
       -S[file] - this is when you want to compare a directory starting at a
                  specific file
       

       There is also a command to compare 3 files which is :   
 
       diff3 [options] [file1] [file2] [file3]

cp
--
cp [file name] [file name] - makes a copy of a file

   $ cp letter letters
   $
   The file letters is a dupilcate copy of letter.In this case the original
   is not erased like in the mv command



.... more UNIX commands:
--------------------

man [command] or [c/r] -will give you a list of commands explainations

help - available on some UNIX systems
                  
mkdir [dir name(s)] - makes a directory      

rmdir [dir name(s)] - removes directory.You wont be able to remove the
                      directory if it contains files in them

rm [file name(s)] - removes files. rm * will erase all files in the current
                    dir.Be carefull you!!.Some options are :                
                    [-f unconditional removal] [-i Prompts user for y or n]
                        
write [login name ] - to write to other logged in users.Sort of a chat

mesg [-n] [-y] - doesn't allow others to send you messages using the write
                 command.Wall used by system adm overrides it.

$ [file name] - to execute any file

wc [file name] - Counts words,chracters,lines in a file

stty [modes] - Set terminal I/O for the current devices

sort [filename] - Sorts and merges files many options

spell [file name] > [file name] - The second file is where the misspelt words
                                  are entered

date [+%m%d%y*] [+%H%%M%S] - Displays date acoording to options

at [-r] [-l] [job] - Does a specified job at a specified time.The -r Removes 
                     all previously scheduled jobs.The -l reports the job #
                     and status of all jobs scheduled

write [login] [tty] - Sends message to the login name.Chat!



su [login name]
---------------
The su command allows one to switch user to a super user to a user.Very
important could be used to switch to super user accounts.
Usage:                                                

$ su sysadm
password:

This su command will be monitored in /usr/adm/sulog and this file of all files
is carefully monitered by the system administrator.Suppose you hacked in johns
account and then switched to the sysadm account (ABOVE) your /usr/adm/sulog
entry would look like:

SU  04/19/88  21:00 + tty 12 john-sysadm

Therfore the S.A(system administrator) would know that john swithed to sysadm
account on 4/19/88 at 21:00 hours

Searching for valid login names:   
-------------------------------
Type in-
$ who  ( command informs the user of other users on the system)
cathy  tty1  april 19  2:30
john   tty2  april 19  2:19
dipal  tty3  april 19  2:31
:
:
tty is the users terminal,date,time each logged on.dipal,john are valid
logins.   

Files worth concatenating(cat)
/etc/passwd file:                    
-----------------                     
The etc/passwd is a vital file to cat.For it contains login names of all
users including super user accounts and there passwords.In the newer          
SVR3 releases they are tighting their security by moving the encrypted
passwords from /etc/passwd to /etc/shadow making it only readable by root.
This is optional offcourse.

$ cat /etc/passwd
root:D943/sys34:0:1:0000:/:
sysadm:k54doPerate:0:0:administration:usr/admin:/bin/rsh
checkfsys:Locked;:0:0:check file system:/usr/admin:/bin/rsh
:
other super user accs.
:
john:chips11:34:3:john scezerend:/usr/john:
:
other users
:
$
If you have reached this far capture this file as soon as posible.
This is a typical output etc/passwd file.The entries are seperated
by a ":".There made be up to 7 fields in each line.
Eg.sysadm account.
The first is the login name in this case sysadm.The second field contains the
password.The third field contains the user id."0 is the root".Then comes the
group id then the account which contains the user full name etc .The sixth
field is the login directory defines the full path name of the the particlar 
account and the last is the program to be executed.          
Now one can switch to other super user account using su command descibed above.
The password entry in the field of the checkfsys account in the above example
is "Locked;". This doesn't mean thats its a password but the account
checkfsys cannot be accessed remotely.The ";" acts as an unused encryption
chracter.A space is also used for the same purpose.You will find this in many
UNIX systems that are small systems where the system administrator handles
all maintaince.  

Password aging:  
---------------
If password aging is active the user is forced to change the password at    
regular intervals.One may be able to tell just by looking at the /etc/passwd
file when the password is allowed to be changed and when it is compulsory to
change it.
For example the entry:

john:chips11,43:34:3:John Scezerend:/usr/john:

The password contains an extension of (,43) which mean that john can change has
to change the password atleast evert 6 weeks and can keep it for atleast 3
week.The format used is [password],Mmww.The M is the maxiumum number of weeks
password has to be change and m is the minimum interval password can be changed
and the ww is indicates when the password was last changed.

    Aging chart:
---------|-----------
Character|# of weeks
    .    |  0
    /    |  1
 0-9     | 2-11
 A-Z     | 12-37
 a-z     | 38-63
---------|-----------

From the above anyone can determine the number of weeks one can change the    
password.         

The (ww) is automatically added as to when the password was last changed .   

IF SHAWDOWING IS ACTIVE:
------------------------

If the shawdowing is active the /etc/passwd would look like this:

root:x:0:1:0000:/:
sysadm:x:0:0:administration:/usr/admin:/bin/rsh

The password filed is substituted by "x".

The /etc/shawdow file only readable by root will look similar to
this:

root:D943/sys34:5288::
:
super user accounts
:
Cathy:masai1:5055:7:120
:
all other users
:  

The first field contains users id:the second contains the password(The pw will
be NONE if logining in remotely is deactivated):the third contains a code of
when the password was last changed:the fourth and the fifth contains the 
minimum and the maximum numbers of days for pw changes(Its rare that you will
find this in the super user logins due to there hard to guess passwords)

  
/etc/options directory
-----------------------
The etc/options dir will consists of utilities available in the system.
Example:                  
-rwxr-xr-x   1 root  sys   40 april  1:00  uucp.name                
uucp standing for BNU

/etc/group
-----------
The file has each group on the system.Each line will have 4 entries separated
by a ":" . Example of concatenated /etc/group:

root::0:root
adm::2:adm,root
bluebox::70:

Group name:password:group id:login names
** It very unlikely that groups will have passwords assigned to them **
The id "0" is assigned to /

Sending and recieving messages:
-------------------------------
Two programs are used to manage this.They are mail & mailx.The difference
between them is that mailx is more fancier thereby giving you many choices
like replying message ,using editors etc.
Sending:
--------  
The basic format for using this command is:

$mail [login(s)]
(now one would enter the text
after finishing enter "." a period
on the next blank line)
$
This command is also used to send mail to remote systems.Suppose you wanted
to send mail to john on a remote called ATT01
you would type in:

$mail ATT01!john

Mail can be sent to several users,just by entering more login name after
issuing the mail command
 
Using mailx is the same format:(This I'll describe very briefly)
$mailx john
subject:(this lets you enter the subject)
(line #1)
(line #2)
(After you finish enter (~.) not the brackets offcourse ,more commands are
available like ~p,~r,~v,~m,~h,~b etc.)

Receiving:
----------
After you log on to the system you will the account may have mail waiting.
You will be notified "you have mail".   
To read this enter:       
$mail
(line #1)
(line #2)
(line #3)
?       
$
After the message you will be prompted with a question mark.Here you have a
choice to delete it by entering d,saving it to view it later s,or just press
enter to view the next message.
(DONT BE A SAVANT AND DELETE THE POOR GUYS MAIL)

Super user commands:
--------------------
$sysadm adduser - will take you through a routine to add a user
                 (may not last long)

Enter this:

$ sysadm adduser
password:
(this is what you will see)
/--------------------------------------------------------------------------\
  Process running succommmand `adduser`     
  USER MANAGMENT

  Anytime you want to quit, type "q".
  If you are not sure how to answer any prompt, type "?" for help

  If a default appears in the question,press  for the default.

  Enter users full name [?,q]: (enter the name you want)                
  Enter users login ID [?,q]:(the id you want to use)
  Enter users ID number (default 50000) [?,q) [?,q]:( press return )
  Enter group ID number or group name:(any name from /etc/group)
  Enter users login home directory:(enter /usr/name)
    
  This is the information for the new login:
  Users name: (name)
  login ID:(id)
  users ID:50000
  group ID or name:     
  home directory:/usr/name
 Do you want to install,edit,skip [i,e,s,q]? (enter your choice if "i" then)
 Login installed
 Do you want to give the user a password?[y,n] (its better to enter one)
 New password:
 Re-enter password:   

 Do you want to add another login?
\----------------------------------------------------------------------------/

This is the proccess to add a user.Since you hacked into a super user account
you can make a super user account by doing the following by entering 0 as an
user and a group ID and enter the home directory as /usr/admin.This will give
you as much access as the account sysadm
**Caution** - Do not use login names like Hacker,Cracker,Phreak etc .This is
a total give away.                                                           
The process of adding a user wont last very long the S.A will know when he
checks out the /etc/passwd file

$sysadm moduser - This utility allows one to modify users.DO NOT ABUSE!!!
Password:

This is what you'll see:

/----------------------------------------------------------------------------\
MODIFYING USER'S LOGIN

1)chgloginid  (This is to change the login ID)
2)chgpassword (Changing password)
3)chgshell (Changing directory DEFAULT = /bin/sh)

ENTER A NUMBER,NAME,INITIAL PART OF OF NAME,OR ? OR ? FOR HELP,
Q TO QUIT ?
\----------------------------------------------------------------------------/

Try every one of them out.Do not change someones password.It creates a havoc.
If you do decide to change it.Please write the original one down somewhere
and change back.Try not to leave to many traces after you had your fun.
In choice number 1 you will be asked for the login and then the new one.
In choice number 2 you will asked for the login and then supplied by it correct
password and enter a new one.
In choice 3 this is used to a pchange the login shell ** Use full **
The above utilites can be used separatly for eg( To change a password one
coulfd enter: $sysadm chgpasswd not chapassword ,The rest are same)

$sysadm deluser - This is an obviously to delete a user
password: 
   
This will be the screen output:
/---------------------------------------------------------------------------\
Running subcommand 'deluser' from menu 'usermgmt'
USER MANAGEMENT  
This fuction completely removes the user,their mail file,home directory
and all files below their home directory from the machine.

Enter login ID you wish to remove[q]:      (eg.cathy)
'cathy' belongs to 'Cathy Franklin'
whose home directory is /usr/cathy
Do you want to remove this login ID 'cathy' ? [y,n,?,q] : 

/usr/cathy and all files under it have been deleted.

Enter login ID you wish to remove [q]:
\--------------------------------------------------------------------------/ 
This command deletes everthing owned by the user.Dont use it even if you have
access to it.



other super user commands:
--------------------------
wall [text] control-d  - to send an anouncement to users logged in(will
                          override mesg -n command).Execute only from /     
/etc/newgrp - is used to become a member of a group

sysadm [program name]
        delgroup - delets groups
        whoson - self explanatory
        lsgroup - Lists group
        mklineset -hunts various sequences
        lsuser -lists all the users & their logins names

Other commands may require file system to be mounted.
  

                       Basic Networking utility(BNU)
                       -----------------------------

The BNU is a unique feature in UNIX.Some systems may not have this installed.
What BNU does is allow other remote UNIXes communicate with yours without
logging off the present one.BNU also allowes file transfer between computers.
Most UNIX systems V will have this feature installed.

The user program like cu,uux etc are located in the /usr/bin directory

Basic Networking Files:
-----------------------
/usr/lib/uucp/[file name] 
 [file name]
 systems - cu command to establishes link.Contains info on remote computers
           name,time it can be reached,login Id,password,telephone numbers
 devices - inter connected with systems files(Automatic call unit same in two
           entries)also cantains baud rate,port tty1 etc.
                
 dialers - where asscii converation must be made before file tranfers etc.
 dialcodes - contains abreiviations for phone numbers that can be used in
             systems file

 other files are sysfiles,permissions,poll,devconfig

B.N.U Aministrative files:
--------------------------
There are 5 admnistrative files present.These are files are created in the
/usr/spool directory .These A.Files are responsible for various BNU procceses
like kepping records data ,files tranfers bettwenn remote and local and also
usefull to lock devices.

TM - This file used to hold temporary data .When tranfering the files from a  
     remote to local the /usr/spool/uucp/[name of the remote computer ] creates
     this in the format of as of below:
       
     TM[Process Identification Number].[ddd]

     The ddd is the a 3 digit number (sequential) starting with "0"
     Here a typical eg: TM322.012
     Then this file is moved into the path defined by the C.sysnxxx file

X.[Execute files] - Created in the /usr/spool before you execute the commands
                    in remote.
                    The format used to name this file is X.sysnxxx
                    where sys stand for the remote name and n is the priority
                    level the xxxx is a sequence assingned by the uucp.These
                    files always contain the Name of the file ,Comuter & file
                    name to recieve,Persons login & computer name and the
                    command string.

LCK - The lock file created in the /usr/spool/locks directory.The is used when
      devices are being used.Prevent usage of the same calling device.
      
     Format used: LCK.str wher the str is a device name.The Lock file contains
     the PID needed to lock

C.sysnxxx - created in the usr/spool directory.These are the work files.Used  
            when work is in line,remote execeutions.Format is same as the     
            X.sysnxxxx.The works files contain the full path name of the file
            to be sent,path name of the destination (TM Transfers),Remote login
            name to be notified after the file transmision is complete,Users
            login name and the name of the programs used eg.uucp,uupick etc.
          
D - The data files.Format used is  D.systmxxxxyyy.These files are created when
    specified in a command to copy to the spool directory.Eg. By the usage of
    uucp -C this will be true.       
    The systm is the remote name,xxxx is the the 4 digits seq assingned by
    the uucp.The yyy is a sub sequence number.

Logining on to remote and sending+receiving files
-------------------------------------------------
 cu - This command allows one to log on to the local as well as the remote
      Unix (or a non unix)without haveing to hang up so you can transfer files.
      Usage:[options]

  $ cu [-s baud rate][-o odd parity][-e even parity][-l name of comm line]
       telephone number | systemname

  To view system names that you can communicate with use the 'unname' command:
  Eg. of output of names:
 
  ATT01
  ATT02
  ATT03
  ATT04


$ cu -s300 3=9872344 (9872344 is the tel#)
 connected
 login:
 password:

local strings:
--------------
<~.> - will log you off the remote terminal but not the local
~! - out you on the local withiout disconnecting the line from remote
 - puts you back on the remote unix
~%take [file name] - takes a copy of the file name and copies it to the
                     local(the directory which you are in)
"%put [file name] - reverse of above
~$[command] - allows the execution of a command to the local from remote

ct         
--         
ct allows local to connect to remote.Initiates a getty on a remote terminal.
Usefull when using a remote terminal.BNU has call back feature that allows
the user on the remote who can execute a call back meaning the local can call
the remote.[   ] are options

$ ct [-h prevent automatic hang up][-s bps rate][-wt set a time to call back
     abbrieviated t mins] telephone number

uux          
---        
To execute commands on a remote (unix to unix)       
usage:[  ] are options

$ uux [- use standard output][-n prevent mail notification][-p also use
      standard output] command-string                        

uucp                              
----             
uucp copies files from ones computer to the home directory
of a user in remote system.This also works when copying files from one
directory to another in the remote.The remote user will be notified by mail.
This command becomes use full when copying files from a remote to your local
system.
The uucp requires the uucico daemon will call up the remote and will perform
file login sequence,file transfer and notify the user by mail.
Daemons are programs runining in the background.The 3 daemons in a Unix are
uucico,uusched,uuxqt.

 Daemons Explained:[nows a good time to explain the 3 daemons]
 ------------------

 uuxqt - Remote execution.This daemon is executed by uudemon.hour started by
         cron.UUXQT searchs in the spool directory for executable file
         named X.file sent from the remote system.When it finds a file X.file
         where it obtains process which are to be executed.The next step is 
         to find weather the processes are available at the time.The if     
         available it checks permission and if everthing is o.k it proceeds
         the background proccess.

 uucico - This Daemon is very immportant for it is responsible in establishing
          a connection to the remote also checks permission,performs login
          procedures,transfers + executes files and also notifies the user
          by mail.This daemon is called upon by uucp,uuto,uux commands.

 uusched - This is executed by the shell script called uudemon.hour
           This daemons acts as a randomizer before the UUCICO daemon is
           called.


Usage of uucp command:

$ uucp [options] [first full path name!] file [destination path!] file
example:
$ uucp -m -s bbss hackers unix2!/usr/todd/hackers

What this would do is send the file hackers from your computer to the remotes
/usr/todd/hackers making hackers offcourse as file.todd would mail that
a file has been sent to him.The unix2 is the name of the remote.
Options for uucp:(Dont forget to type in remotes name unix2 in case)         
-c  dont copy files to spool directory
-C  copy to spool
-s[file name] - this file will contain the file status(above is bbss)
-r  Dont start the comm program(uucico) yet
-j  print job number(for above eg.unix2e9o3)
-m  send mail when file file is complete

Now suppose you wanted to receive file called kenya which is in the usr/dan/usa
 to your home directory /usr/john assuming that the local systems name is
ATT01 and you are currently working in /usr/dan/usa,you would type in:

$uucp kenya ATT01!/usr/john/kenya

uuto         
----          
The uuto command allows one to send file to remote user and can also be used
to send files locally.
Usage:
$ uuto [file name] [system!login name]( omit systen name if local)



Conclusion:
-----------
Theres always more one can say about the UNIX but its time to stop.
I hope you have enjoyed the article.I apologize for the lenght. I hope I
made the UNIX operating system more familiar.
Remember do not abuse any systems you hack into for a true hacker doesn't like
to reck but to learn.

 

Och lite på Svenska :
--------------------

 

Linux Informationsblad
  Michael K. Johnson, johnsonm@redhat.com
  Översättning Kåre Hviid, ukh@marijne.df.lth.se
  v4.10, 5:e januari 1997

  Detta dokument tillhandahåller grundläggande information om opera­
  tivsystemet Linux, inklusive en förklaring av vad Linux är, exempel på
  egenskaper hos Linux, vad som krävs för att köra Linux och var du kan
  hitta mer information.  (Översättarens anmärkning: alla referenser i
  detta dokument till andra dokument, nyhetsgrupper och andra källor
  avser engelska dito.)

  1.  Introduktion till Linux

  Linux är en helt fri implementering av POSIX-specifikationerna, utökat
  med SYSV och BSD (vilket betyder att det ser ut som Unix, men inte
  härstammar från samma källkodsbas), vilket är tillgängligt både så som
  källkod och i binär form.  Upphovsrätten (och dess copyright) tillhör
  Linus B. Torvalds (Linus.Torvals@Helsinki.FI) och andra bidragsgivare
  och är fritt tillgängligt i enlighet med GNU Public License.

  Linux är inte public domain, inte heller är det ``shareware''.  Det är
  ``fri'' mjukvara, allmänt kallat freeware och du får lov att ge bort
  kopior av det, men du måste i så fall också ge bort källkoden med det
  eller göra den tillgänglig på något sätt.  Om du distribuerar några
  ändringar så är du rättsligen bunden till att även distribuera
  källkoden till dessa ändringar.  Se GNU Public License för fler
  detaljer.  En kopia finns inkluderad i källkoden till Linux, om inte
  kan du hämta en kopia via FTP från prep.ai.mit.edu i /pub/gnu/COPYING.

  Per version 2.0 är Linux fortfarande fritt och kommer så att förbli.
  På grund av den GNU copyright som Linux lyder under så vore det
  illegalt att göra det icke fritt.  Observera dock: det är fullt
  tillåtet att ta betalt för att distribuera Linux, bara så länge som du
  också distribuerar källkoden.  Detta är en förenkling; om du vill veta
  de intrikata detaljerna, läs GPL.

  Linux kör på 386/486/Pentium-maskiner med ISA-, EISA-, PCI- och VLB-
  bussar.  MCA (IBM:s egen buss) är för tillfället inte väl understött
  även om stöd har lagts till i det nuvarande utvecklingsträdet, 2.1.x.
  Om du är intresserad, se
   <http://glycerine.itsmm.uni.edu/mca>.

  Det arbetas på en portning (konvertering, anpassning) för flera
  plattformar med Motorola 680x0 (för närvarande körs den under vissa
  Amiga-, Atari- och VME-maskiner), som nu fungerar ganska bra.  Den
  kräver en 68020 med en MMU, en 68030, 68040 eller 68060, och kräver
  dessutom en FPU.  Nu fungerar även nätverk och X.

  Linux kan också köras bra på DEC:s Alpha CPU.  För tillfället stödjs
  ``Jensen'', ``NoName'', ``Cabriolet'', ``Universal Desktop Box''
  (bättre känd som ``Multia'') och många andra plattformar.  För mer
  information, se
   <http://www.azstarnet.com/~axplinux/FAQ.html>.

  Linux körs med gott resultat på Sun SPARC; de flesta sun4c- och sun4m-
  maskiner kan nu köra Linux och det arbetas på stöd för sun4u.  Red Hat
  är (när detta skrivs) den enda Linux-distributionen tillgänglig för
  SPARC; se
   <http://www.redhat.com/support/docs/rhl-sparc/>.

  Man håller för tillfället på att porta Linux till PowerPC-
  arkitekturen, bland annat för PowerMac- (NuBus och PCI), Motorola-,
  IBM- och Be-maskiner.

  Portningar till andra maskiner, till exempel MIPS och ARM, är på väg
  och uppvisar varierande framgång.  Dessa portningar är emellertid ej
  långt komna, men om du är intresserad och kan bidraga, så är det
  mycket möjligt att du kan hitta andra utvecklare (developers) som
  önskar samarbeta med dig.

  Linux anses ej längre för att vara under beta-testning, då version 1.0
  släpptes den 14:e mars 1994.  Det finns fortfarande buggar i systemet,
  och nya kommer att dyka upp och bli åtgärdade med tiden.  Då Linux
  följer den ``öppna utvecklingsmodellen'' (open development model), så
  kommer alla nya versioner att bli släppta för allmänheten, oavsett om
  de anses vara av ``produktionskvalité'' eller ej.  Men för att hjälpa
  folk att hålla reda på huruvida de får en stabil version eller inte,
  så har följande schema lagts upp:  Version 1.x.y, där x är ett jämnt
  nummer, är en stabil version, och endast bugg-fixar läggs till i och
  med att y ökas.  Alltså, från version 1.2.2 till 1.2.3 var det bara
  bugg-fixar och inga nya funktioner.  Version 1.x.y, där x är ett udda
  nummer, är av beta-kvalité och enbart för utvecklare, kan vara
  instabil och krascha, det läggs hela tiden till nya funktioner till
  sådana versioner.  Då och då, emedan den för tillfället aktuella
  utvecklingskärnan stabiliseras, kommer den att frysas så som den nya
  ``stabila'' kärnan, och utvecklingen kommer att fortsätta på den nya
  utvecklingsversionen av kärnan.

  Version 2.0.27 är den nuvarande stabila versionen (detta kommer att
  ändras allt medan nya drivrutiner läggs till och buggar fixas), och
  utvecklingen har påbörjats på de exprimentella 2.1.x-kärnona också.
  Om 2.0.x är för nytt för dig så kanske du föredrar att hålla till godo
  med 1.2.3 för tillfället.  Det skall dock sägas att de senaste
  versionerna av 2.0 har visat sig ganska stabila.  Observera att för
  att uppgradera från 1.2 till 2.0 så måste du även uppgradera ett antal
  verktyg; du kanske föredrar att uppgradera din Linux-distribution för
  att skaffa dessa verktyg.  Källkoden till Linux-kärnan innehåller även
  en fil, Documentation/Changes, vilken förklarar dessa ändringar och
  mer därtill.

  De flesta versioner av Linux, vare sig de är beta eller ej, är ganska
  stabila och du kan fortsätta köra dessa om de gör vad du vill att de
  skall göra och du inte önskar vara på ``the bleeding edge''.  Ett
  ställe hade en dator som körde version 0.97 patchlevel 1 (daterad
  sommaren 1992) i över 136 dagar utan ett fel eller en krasch.  (Det
  skulle ha varit längre om inte ställföreträdande skyffeloperatör hade
  misstagit huvudnätaggregatet för en soptunna...)  Andra har postat
  (gjort inlägg på Usenet) om uptimes på över ett år.  Ett ställe har
  fortfarande en dator som har kört Linux 0.99pl15s i 600 dygn vid
  senaste rapporten.

  En sak man skall vara medveten om är att Linux utvecklas med en öppen
  och distribuerad modell, istället för en stängd och centraliserad
  modell så som mycken annan mjukvara.  Detta betyder att den nuvarande
  utvecklingsversionen alltid är tillgänglig för allmänheten (med upp
  till en eller två veckors fördröjning) så att alla kan använda den.
  Resultatet blir att så fort en version med nya funktioner släpps,
  innehåller den nästan alltid buggar, men det resulterar också i en
  väldigt snabb utveckling där buggar hittas och korrigeras snabbt, ofta
  på ett par timmar, då många människor arbetar på att fixa dem.

  Detta i jämnförelse med den stängda och centraliserade modellen vilken
  innebär att endast en person eller en grupp arbetar på projektet, och
  de släpper bara mjukvara som de tror är väl fungerande.  Detta leder
  ofta till långa intervall mellan versioner, långa väntetider för bugg-
  fixar och långsammare utveckling.  Naturligtvis är den senaste för
  allmänheten tillgängliga versionen av sådan mjukvara ofta av högre
  kvalité, men utvecklingshastigheten är generellt sett mycket
  långsammare.

  Per den 20:e december 1996 är den senaste stabila versionen av Linux
  2.0.27 och den senaste utvecklingsversionen är 2.1.16.

  2.  Egenskaper hos Linux

  ·  multitasking (multiprogrammering med tidsdelning): flera program
     kan köra samtidigt.

  ·  multianvändare: fler än en användare kan vara på samma maskin
     samtidigt (och inga tvåanvändar-licenser!).

  ·  multiplatform: kör på flera olika CPU, inte bara Intel.

  ·  kör i skyddat läge (protected mode) på 386:an.

  ·  har minnesskydd processer emellan, så att inget enskilt program kan
     få hela systemet att gå ner.

  ·  demand loads executables: Linux läser bara från disken de delar av
     ett program som faktiskt används.

  ·  gemensamma (shared) copy-on-write sidor (pages) mellan exekverbara
     filer.  Detta betyder att multipla processer kan använda samma
     minne för att köra i.  När någon försöker skriva till minnet kommer
     den aktuella sidan (4KB-del av minne) bli kopierad till något annat
     ställe.  Copy-on-write har två fördelar: ökad hastighet och minskad
     minnesanvändning.

  ·  viruellt minne genom sidindelat minne (som inte swappar (byter)
     hela processer) till disk: till en separat partition eller en fil i
     filsystemet, eller båda, med möjlighet att lägga till fler
     swappingareor under körning (ja, de kallas fortfarande ``swapping
     areas'').  Totalt kan 16 sådana 128 MB swappingareor användas
     samtidigt, vilket teoretiskt ger totalt 2 GB användbart
     swaputrymme.  Om det är nödvändigt är det enkelt att öka detta
     genom att ändra ett par rader i källkoden.

  ·  en samlad minnespool för användarprogram och disk-cache, så att
     allt fritt minne kan användas för caching, och cachen kan reduceras
     vid körning av stora program.  (cache = fickminne)

  ·  dynamiskt länkade gemensamma (shared) bibliotek (DLL:er) och
     förstås också statiska bibliotek.

  ·  gör minnesdumpningar (core dumps), vilket tillåter användning av en
     debugger på program både när de körs och efter de har kraschat.

  ·  i huvudsak kompatibelt med POSIX, System V och BSD på källkodsnivå.

  ·  med en emuleringsmodul som följer iBCS2, även mestadels kompatibel
     med SCO, SVR3 och SVR4 på binärnivå.

  ·  all källkod är tillgänglig, inklusive hela kärnan och alla
     drivrutiner, utvecklingsverktygen och alla användarprogram;
     dessutom är allt fritt att distribuera.  Många kommersiella program
     för Linux levereras utan källkod, men allt som har varit fritt,
     inklusive hela basen till operativsystemet, är fortfarande fritt.

  ·  POSIX job control.

  ·  pseudoterminaler (pty:er).

  ·  387-emulering i kärnan innebär att program inte behöver sköta
     matte-emulering själva.  Alla datorer som kör Linux ser ut som om
     de har en matte-coprocessor.  Om din dator redan innehåller en FPU
     kommer förstås den användas istället för emulering, du kan även
     kompilera din egen kärna utan matte-emulering för att spara lite
     minne.

  ·  stöd för många nationella eller specialgjorda tangentbord, och det
     är tämligen enkelt att lägga till egna dynamiskt.

  ·  multipla virtuella konsoller: mer än en oberoende login-session
     genom konsollet, du kan byta genom att trycka en speciell
     tangentkombination (oberoende av video-hårdvara).  Dessa är
     dynamiskt allokerade; du kan använda upp till 64 stycken.

  ·  stödjer många vanliga filsystem, inklusive Minix-1, Xenix och alla
     de vanliga filsystemen i System V, och har ett eget avancerat
     filsystem som klarar upp till 4 TB stora filsystem och namn upp
     till 255 tecken långa.

  ·  transparent access till MS-DOS-partioner (eller partioner i OS/2
     FAT) via speciella filsystem: du behöver inga speciella kommandon
     för att använda din MS-DOS-partion, den ser ut precis som ett
     vanligt Unix-filsystem (förutom konstiga restriktioner på filnamn,
     flaggor och så vidare).  MS-DOS 6' komprimerade partioner fungerar
     inte just nu utan en patch (dmsdosfs).  Stöd för VFAT (WNT, Windows
     95) finns i 2.0.

  ·  ett speciellt filsystem kallat UMSDOS som låter Linux installeras
     på ett DOS-filsystem.

  ·  stöd för att läsa HPFS-2 (OS/2 2.1)

  ·  stöd för filsystemet HFS (Macintosh) finns så som en separat modul.

  ·  CD-ROM-filsystem som läser alla standard CD-ROM-format.

  ·  TCP/IP-nätverk, inklusive FTP, telnet, NFS, etc.

  ·  server för Appletalk.

  ·  klient och server för Netware.

  ·  klient och server för Lan Manager (SMB).

  ·  Många nätverksprotokoll: basprotokoll i de senaste
     utvecklingskärnorna är TCP, IPv4, IPv6, AX.25, X.25, IPX, DDP
     (Appletalk), NetBEUI, Netrom och andra.  Stabila nätverksprotokoll
     i de stabila kärnorna inkluderar ICP, IPv4, IPX, DDP och AX.25.

  3.  Hårdvaruaspekter

  3.1.  Minimal konfiguration

  Följande är förmodligen den minsta möjliga konfigurationen som Linux
  kan fungera under: 386SX/16, 1 MB RAM, 1.44 MB eller 1.2 MB floppy,
  något understött videokort (+ tangentbord, bildskärm och så vidare
  förstås).  Detta borde låta dig boota och testa om det fungerar över
  huvud taget på maskinen, men du kommer inte kunna göra något vettigt.
  Se
   <http://rsphy1.anu.edu.au/~gpg109/mem.html> för minimala Linux-
  konfigurationer.

  För att kunna göra något vettigt kommer du att vilja ha lite utrymme
  på hårddisken också, 5 till 10 MB borde räcka för en minimal
  uppsättning (med de allra viktigaste kommandona och kanske en eller
  två små applikationer installerade, så som t.ex ett terminalprogram).
  Detta är fortfarande väldigt, väldigt begränsat och obekvämt i och med
  att det inte lämnar tillräckligt med plats för att egentligen göra
  någonting, såvida inte dina applikationer är ganska begränsade.  Det
  är generellt sett inte att rekommendera för någonting annat än att
  testa om saker och ting fungerar, samt naturligtvis för att kunna
  skryta om små krav på maskinvara.

  3.2.  Användbar konfiguration

  Om du skall köra processorintensiva program, så som gcc, X och TeX, så
  vill du förmodligen ha en snabbare processor än en 386SX/16, men även
  den borde räcka om du är tålmodig.

  I praktiken så vill du ha minst 4 MB RAM om du inte kör X, annars 8
  MB.  Dessutom, om vill ha flera användare samtidigt, eller köra flera
  stora program (kompileringar till exempel) samtidigt, vill du
  förmodligen ha mer än 4 MB minne.  Det kommer fortfarande att fungera
  med mindre minne (borde även fungera med bara 2 MB), men virtuellt
  minne kommer att användas (med hårddisken som långsamt minne) och det
  kommer att vara för långsamt för att vara användbart.  Om du använder
  många program på en gång, så kommer 16 MB att minska användandet av
  swap avsevärt.  Om du vill minska användandet av swap till ett minimum
  så torde 32 MB räcka.  Fast om du kör många minneshungriga
  applikationer så vill förmodligen ha ännu mer.
  Hur mycket hårddisk du behöver beror på vilken mjukvara du vill
  installera.  Den normala uppsättningen grundläggande Unix-verktyg,
  skal och administrativa program borde klara sig med mindre än 10 MB,
  med en smula plats kvar för användarnas filer.  För ett mer komplett
  system, skaffa Red Hat, Debian, Slackware eller någon annan
  distribution och räkna med att du kommer behöva mellan 60 och 300 MB,
  beroende på vad du väljer att installera och vilken distribution som
  du skaffar.  Lägg till plats som du vill reservera för användarnas
  filer till slutsumman.  Med dagens priser på hårddiskar, om du köper
  ett nytt system, så finns det ingen anledning att köpa en disk som är
  för liten.  Skaffa minst 500 MB, helst 1 GB eller mer, och du kommer
  inte att ångra dig.

  Lägg till mer minne, mer hårddisk, en snabbare processor eller andra
  prylar beroende på dina behov, önskningar och budget för att göra ditt
  system mer körbart.  En i allmänhet stor skillnad mellan DOS och Linux
  är att mer minne gör en stor skillnad med Linux, emedan skillnaden är
  mindre med DOS.  Detta har förstås någonting att göra med DOS' 640KB-
  spärr vilken inte existerar under Linux.

  3.3.  Understödd hårdvara

     CPU:
        Allt som kan köra program i 386 skyddat läge (protected mode)
        (alla modeller av 386, 486, 586 och 686 borde fungera). 286:or
        och äldre processorer kommer kanske att kunna användas någon
        gång i framtiden på en mindre kärna kallad ELKS (Embeddable
        Linux Kernel Subset), men förvänta dig inte samma
        funktionalitet.  Dessutom utvecklas det en version för 680x0
        CPU:n (där x = 2 med extern MMU, 3, 4 och 6) som kör under Amiga
        och Atari.  Den kan hittas vid tsx-11.mit.edu i katalog
        (directory) 680x0.  Många DEC Alpha stödjs också.  Det finns
        numera stöd för vissa Sparc.  Portningar till PowerPC-, ARM- och
        MIPS- arkitekturer är också på väg.  Se annorstädes för mer
        information.

     Arkitektur:
        ISA- eller EISA-buss.  Stöd för MCA (mestadels ``true blue''
        PS/2:or) är inte komplett men på bättring (se ovan).  Local bus
        (VLB och PCI) fungerar.  Linux ställer högre krav på hårdvara än
        DOS, Windows och faktiskt de flesta andra operativsystem.  Detta
        betyder att marginell hårdvara som inte har problem med mindre
        krävande operativsystem kan åstadkomma fel under Linux.  Linux
        är en utmärkt minnestestare...

     RAM:
        Teoretiskt upp till 1 GB; mer på 64-bitars plattformar.  Vissa
        (inklusive Linus) har noterat att om man lägger till mer RAM
        utan att lägga till mer cache samtidigt kan det göra deras
        maskiner extremt mycket långsammare, så om du lägger till mer
        minne och upptäcker att din maskin blir långsammare, försök med
        att lägga till mer cache.  Vissa maskiner kan bara utnyttja
        cache för begränsade delar av minnet oavsett hur mycket RAM som
        är installerat (64 MB är det mesta ett visst populärt chipsets
        cache kan hantera).  Över 64 MB kräver en parameter vid
        bootning, då BIOS:et inte kan rapportera mer än 64 MB, därför
        att det är ``broken as designed''.

     Lagringsmedia:
        Vanliga AT-diskar (EIDE, IDE, 16-bitars HD controllers med MFM
        eller RLL, eller ESDI) stödjs, så också SCSI-hårddiskar och CD-
        ROM, med en understödd SCSI-adapter.  Vanliga XT-controllers
        (8-bitars controllers med MFM eller RLL) stödjs också.
        Understödda SCSI-apdaptrar: Advansys, Adaptec 1542, 1522, 1740,
        27xx- och 29xx-serien (med vissa undantag), Buslogic
        MultiMaster-controllers (stöd för Flashpoint ligger i beta-
        test), NCR53c810-baserade controllers, DPT-controllers, Qlogic
        ISP- och FAS-controllers, Seagate ST-01 och ST-02, Future Domain
        TMC-88x-serien (eller kort baserade på TMC950-kretsen) och
        TMC1660/1680, Ultrastor 14F, 24F och 34F, Western Digital wd7000
        och andra.  SCSI, QIC-02 och vissa QIC-80 band stödjs också.
        Många CD-ROM-enheter stödjs också, inklusive
        Matsushita/Panasonic, Mitsumi, Sony, Soundblaster, Toshiba,
        ATAPI (EIDE), SCSI och andra.  För exakta modeller, se Hardware-
        HOWTO.

     Video:
        VGA, EGA, CGA eller Hercules (och kompatibler) fungerar i text-
        mod.  För grafik och X finns det stöd för (åtminstone) normal
        VGA, vissa SuperVGA-kort (de flesta av korten baserade på
        ET3000, ET4000, Paradise och vissa Trident-chipsets), S3,
        8514/A, ATI MACH8, ATI MACH32 och Hercules.  (Linux använder
        XFree86 X-servern, så det är den som avgör vilka kort som
        stödjs.  En komplett lista på enbart understödda chipset är över
        en sida lång.)

     Nätverk:
        Stödet för Ethernet inkluderar 3COM 503/509/579/589 (501/505/507
        stöds men rekommenderas inte), AT&T GIS (f.d. NCR) WaveLAN, de
        flesta WD8390-baserade kort, de flesta WD80x3-baserade kort,
        NE1000/2000 och de flesta kopior sådana kopior, AC3200, Apricot
        82596, AT1700, ATP, DE425/434/435/500, D-Link DE-600/620, DEPCA,
        DE100/101, DE200/201/202 Turbo, DE210, DE422, Cabletron E2100
        (ej rekommenderat), Intel EtherExpress (ej rekommenderat), DEC
        EtherWORKS 3, HP LAN, HP PCLAN/plus, de flesta AMD LANCE-
        baserade kort, NI5210, ni6510, SMC Ultra, DEC 21040 (tulip),
        Zenith Z-Note ethernet, alla Zircom-kort och alla Cabletron-kort
        förutom E2100 stöds, på grund av tillverkarens ovilja att släppa
        information om programmeringen fritt.

        Stöd för FDDI omfattar för tillfället DEFxx-kort från DEC.

        Stöd för Point-to-Point-nätverk omfattar PPP, SLIP, CSLIP och
        PLIP.

     Seriellt:
        De flesta 16450 och 16550 UART-baserade korten, inklusive AST
        Fourport, Usenet Serial Card II och andra.  Understödda
        intelligenta kort inkluderar Cyclades Cyclom-serien (med stöd
        från tillverkaren), Comtrol Rocketport-serien (med stöd från
        tillverkaren), Stallion (de flesta korten; med stöd från
        tillverkaren) och Digi (vissa kort, ej med stöd från
        tillverkaren).  Viss ISDN, frame relay och hårdvara för leasade
        linjer stödjs.

     Annan hårdvara:
        Soundblaster, ProAudio Spectrum 16, Gravis Ultrasound, de flesta
        andra ljudkort, de flesta (alla?)  sorters bussmöss (Microsoft,
        Logitech, PS/2), etc.

  4.  En icke komplett lista av portade program och annan mjukvara

  De flesta vanliga Unix-verktyg och program har portats till Linux,
  inklusive nästan all GNU och många X-klienter från olika källor.
  Faktum med, ``portats'' är ofta ett för starkt ord då många program
  kompilerar ``out of the box'', som de kommer utan modifikation, eller
  med bara väldigt små modifikationer, då Linux följer POSIX ganska
  noggrant.  Tyvärr finns det inte så många slutanvändar-applikationer
  för tillfället, men nyligen började detta ändras.  Här är en icke
  komplett lista av känd mjukvara som skall fungera under Linux.

     Grundläggande Unix-kommandon:
        ls, tr, sed, awk och så vidare (vad du än söker så har Linux
        förmodligen det).

     Utvecklingsverktyg:
        gcc, gdb, make, bison, flex, perl, rcs, cvs, prof.

     Språk och utvecklingsmiljöer:
        C, C++, Objective C, Java, Modula-3, Modula-2, Oberon, Ada95,
        Pascal, Fortran, ML, Scheme, Tcl/tk, Perl, Python, Common LISP
        och många fler.

     Grafiska miljöer:
        X11R5 (XFree86 2.x), X11R6 (XFree86 3.x), MGR.

     Editorer:
        GNU Emacs, XEmacs, MicroEmacs, jove, ez, epoch, elvis, vim,
        vile, joe, pico, jed och andra.

     Skal:
        bash (POSIX sh-kompatibel), zsh (inkluderar ett ksh
        kompatibilitets-mod), pdksh, tcsh, csh, rc, es, ash (mestadels
        sh-kompatibelt skal som används som /bin/sh under BSD), och
        många fler.

     Telekommunikation:
        Taylor (BNU-kompatibel) UUCP, SLIP, CSLIP, PPP, kermit, szrz,
        minicom, pcomm, xcomm, term (kör multipla skal, omdirigerar
        nätverkstrafik och tillåter X-uppkoppling, allt över en enkel
        modemlinje), Seyon (populärt kommunikationsprogram under X
        Windows) och ett flertal fax- och röstbrevlådepaket (med ZyXEL
        och andra modem) finns tillgängliga.  Naturligtvis är seriella
        inloggningar också möjligt.

     News och e-post:
        C-news, innd, trn, nn, tin, smail, elm, mh, pine, etc.

     Textbehandling:
        TeX, groff, doc, ez, Linuxdoc-SGML och andra.

     Spel:
        Nethack, ett flertal Mud och X-spel, och många fler.  Ett av
        spelen är att titta igenom alla spel tillgängliga vid tsx-11 och
        sunsite.

     Sviter:
        AUIS, Andrew User Interface System.  ez är en del av denna svit.

  Alla dessa program (och det är inte ens en hundradel av vad som finns)
  är fritt tillgängliga.  Kommersiell mjukvara har börjat bli allmänt
  tillgänglig; fråga tillverkaren av ditt favoritpaket om de stödjer
  Linux.

  5.  Vem använder Linux?

  Linux är fritt tillgängligt och ingen är tvingad att registrera sina
  kopior till någon central myndighet eller något företag, så det är
  svårt att veta hur många som använder Linux.  Ett flertal företag
  överlever nu för tiden enbart på att sälja och ge stöd för Linux, och
  nyhetsgrupperna om Linux är bland de mest lästa grupperna på Internet,
  så antalet är förmodligen i området hundratusentals, men det är svårt
  att räkna svåra tal.  Det finns dock en modig man, Harald T.
  Alvestrand, som har bestämt sig för att försöka, och han ber dig att
  om du använder Linux skicka ett meddelande till linux-
  counter@uninett.no med ett av följande ``Subject'': ``I use Linux at
  work'' (jag använder Linux hemma), ``I use Linux at work'' (jag
  använder Linux på jobbet) eller ``I use Linux at home and at work''
  (jag använder Linux både hemma och på jobbet).  Han räknar också ``I
  don't use Linux'' (jag använder inte Linux) av någon anledning.  Han
  postar sina uträkningar till comp.os.linux.misc.

  6.  Att skaffa Linux

  6.1.  Anonymous FTP

  Matt Welsh har släppt en ny version av sin Installation and Getting
  Started guide, version 2.1.1.  Vidare har Linux Documentation Project
  (LDP) släppt flera andra böcker, mer eller mindre slutförda, och dessa
  finns att hämta vid sunsite.unc.edu:/pub/Linux/docs/LDP.  Läs
  comp.os.linux.announce för senaste nytt.  Hemsidan för Linux
  Documentation Project finns vid
   <http://sunsite.unc.edu/LDP>.

  Åtminstone följande ställen med anonymous FTP tillhandahåller Linux.

  Text-namn                      Numerisk adress  Linux-bibliotek
  =============================  ===============  ===============
  tsx-11.mit.edu                 18.172.1.2       /pub/linux
  sunsite.unc.edu                152.2.22.81      /pub/Linux
  ftp.funet.fi                   128.214.248.6    /pub/OS/Linux
  net.tamu.edu                   128.194.177.1    /pub/linux
  ftp.mcc.ac.uk                  130.88.203.12    /pub/linux
  src.doc.ic.ac.uk               146.169.2.1      /packages/linux
  fgb1.fgb.mw.tu-muenchen.de     129.187.200.1    /pub/linux
  ftp.informatik.tu-muenchen.de  131.159.0.110    /pub/comp/os/linux
  ftp.dfv.rwth-aachen.de         137.226.4.111    /pub/linux
  ftp.informatik.rwth-aachen.de  137.226.225.3    /pub/Linux
  ftp.Germany.EU.net             192.76.144.75    /pub/os/Linux
  ftp.ibp.fr                     132.227.60.2     /pub/linux
  ftp.uu.net                     137.39.1.9       /systems/unix/linux
  wuarchive.wustl.edu            128.252.135.4    mirrors/linux
  ftp.win.tue.nl                 131.155.70.100   /pub/linux
  ftp.stack.urc.tue.nl           131.155.2.71     /pub/linux
  srawgw.sra.co.jp               133.137.4.3      /pub/os/linux
  cair.kaist.ac.kr                                /pub/Linux
  ftp.denet.dk                   129.142.6.74     /pub/OS/linux
  NCTUCCCA.edu.tw                140.111.1.10     /Operating-Systems/Linux
  nic.switch.ch                  130.59.1.40      /mirror/linux
  cnuce_arch.cnr.it              131.114.1.10     /pub/Linux
  ftp.monash.edu.au              130.194.11.8     /pub/linux
  ftp.dstc.edu.au                130.102.181.31   /pub/linux
  ftp.sydutech.usyd.edu.au       129.78.192.2     /pub/linux

  tsx-11.mit.edu och fgb1.fgb.mw.tu-muenchen.de är de officiella
  platserna för Linux' GCC.  Vissa ställen speglar andra ställen.  Var
  vänlig använd det närmaste stället (sett ur nätverksperspektiv) när
  det är möjligt.

  Åtminstone sunsite.unc.edu och ftp.informatik.tu-muenchen.de erbjuder
  ftpmail-tjänster.  Skicka e-post till ftpmail@sunsite.unc.edu eller
  ftp@informatik.tu-muenchen.de för hjälp.

  Om du är vilse, försök med att titta i
  sunsite.unc.edu:/pub/Linux/distributions/, där många av
  distributionerna erbjuds.  Red Hat Linux, Debian och Slackware verkar
  vara de mest populära distributionerna för tillfället.

  6.2.  CD-ROM

  De flesta installerar nuförtiden Linux från CD-ROM.  Distributionerna
  har växt till hundratals MB av mjukvara för Linux och att ladda ner
  detta även över ett 28.8-modem tar lång tid.

  Det finns i huvudsak två sätt att köpa en Linux-distribution på CD-
  ROM: så som en del av ett FTP-arkiv, eller direkt från tillverkaren.
  Om du köper ett arkiv så får du nästan alltid flera olika
  distributioner att välja mellan, men kundsupport inkluderas normalt
  inte.  Om du köper en distribution direkt från tillverkaren så får du
  normalt bara en distribution men vanligtvis också något slag av
  kundsupport, oftast hjälp med installationen.

  6.3.  Andra sätt att skaffa Linux

  Det finns många BBS:er som har Linux-filer.  En lista över dessa
  postas då och då i comp.os.linux.announce.  Fråga vänner och
  användargrupper eller beställ någon av de kommersiella
  distributionerna.  En lista över dessa är inkluderad i Linux
  Distribution HOWTO, tillgänglig som
  sunsite.unc.edu:/pub/Linux/docs/HOWTO/Distribution-HOWTO och postas
  med jämna mellanrum i nyhetsgruppen comp.os.linux.announce.

  7.  Att komma igång

  Så som nämndes i början så är Linux inte centralt administrerat.  På
  grund av detta så finns det inget ``officiellt'' release som man kan
  peka på och säga ``Det där är Linux''.  Istället finns det ett antal
  ``distributioner'', vilka är mer eller mindre kompletta kollektioner
  av mjukvara konfigurerade och paketerade så att de kan användas för
  att installera ett Linux-system.

  Det första du bör göra är att skaffa och läsa listan av Frequently
  Asked Questions (FAQ) från någon av de stora FTP-värdarna eller genom
  de normala Usenet FAQ-arkiven (t.ex rtfm.mit.edu).  Detta dokument
  innehåller gott om instruktioner för hur du kommer igång, vilka filer
  du behöver och hur du löser de vanligast förekommande problemen (både
  under installation och andra tillfällen).

  8.  Upphovsrätt till Linux

  Även om Linux kommer komplett med källkod så är det mjukvara som lyder
  under copyright, ej public domain.  Emellertid är det fritt
  tillgängligt i enlighet med GNU General Public License, ibland kallat
  för ``copyleft''.  Se GPL för mer information.  Varje program som kör
  under Linux har sin egen copyright, även om många av dem också
  använder sig av GPL.  X använder sig av MIT X copyright, och andra
  verktyg lyder under BSD copyright.  I vilket fall som helst, all
  mjukvara tillgänglig via FTP är fri för vidaredistribution (annars
  borde den inte vara där).

  9.  Nyheter om Linux

  En tidning som kommer ut en gång i månaden, kallad Linux Journal,
  lanserades för över två år sedan.  Den inkluderar artiklar för de
  flesta svårighetsnivåer och avser att vara till hjälp för alla Linux-
  användare.  En helårsprenumeration kostar $22 i USA, $27 i Canada och
  Mexico och $32 i resten av världen och betalas i USD.  Frågor om
  prenumeration kan ställas genom att skicka e-post till subs@ssc.com
  eller faxa +1-206-782-7191 eller ringa +1-206-782-7733 eller skicka
  brev till Linux Journal, PO Box 85867, Seattle, WA 98145-1867, USA.
  SSC har en publik PGP-nyckel tillgänglig för att kryptera dina brev
  och skydda ditt kreditkortsnummer; gör en finger mot info@ssc.com för
  att få nyckeln.

  Det finns en mängd nyhetsgrupper på Usenet för diskussion om Linux
  samt en mängd mailinglistor.  Se Linux FAQ för mer information om
  mailinglistorna (du torde hitta Linux FAQ antingen i en nyhetsgrupp
  eller via FTP).

  Nyhetsgruppen comp.os.linux.announce är en modererad nyhetsgrupp för
  kungörelser om Linux (nya program, bugg-fixar, etc).

  Nyhetsgruppen comp.os.linux.answers är en modererad nyhetsgrupp i
  vilken Linux FAQ, HOWTO-dokumenten och annan dokumentation postas.

  Nyhetsgruppen comp.os.linux.admin är en omodererad nyhetsgrupp för
  diskussion om administrering av Linux-system.

  Nyhetsgruppen comp.os.linux.development.system är en omodererad
  nyhetsgrupp specifikt för diskussion om utvecklingen av Linux-kärnan.
  De enda frågorna angående utveckling av applikationer som kan
  diskuteras här, är de som är intimt knutna till kärnan.  Alla andra
  frågor rörande utveckling är förmodligen allmänna Unix-
  utvecklingsfrågor och bör ställas till någon comp.unix-grupp istället,
  såvida de inte är väldigt Linux-specifika frågor rörande
  applikationer, då de bör ställas till comp.os.linux.development.apps.

  Nyhetsgruppen comp.os.linux.development.apps är en omodererad
  nyhetsgrupp specifikt för diskussion om Linux-relaterad utveckling av
  applikationer.  Den är inte avsedd för diskussion om var man hittar
  applikationer för Linux, och inte heller är det ett forum för
  diskussion om vilka applikationer man vill har för Linux.

  Nyhetsgruppen comp.os.linux.hardware är till för Linux-specifika
  frågor om hårdvara.

  Nyhetsgruppen comp.os.linux.networking är till för Linux-specifika
  frågor om utveckling och installering av nätverk.

  Nyhetsgruppen comp.os.linux.x är till för Linux-specifika frågor
  rörande X Windows.

  Nyhetsgruppen comp.os.linux.misc är en ersättare för comp.os.linux och
  är avsedd för alla diskussioner som inte hör hemma någon annanstans.

  Generellt kan sägas att du inte skall posta samma inlägg i fler än en
  Linux-grupp samtidigt (s.k. crossposting).  Det enda tillfället då
  detta kan vara lämpligt, är mellan en omodererad grupp och
  comp.os.linux.announce.  Hela vitsen med att dela comp.os.linux i
  flera grupper är att begränsa trafiken i de enskilda grupperna.  De
  som inte följer reglerna kommer att få smaka på flammorna utan nåd...

  (Översättarens anmärkning: i alla dessa nyhetsgrupper sker
  diskussionerna på engelska.)

  Linux finns på Weben (World Wide Web, WWW, W3, etc).  URL:en är
   <http://sunsite.unc.edu/LDP>.

  10.  Framtiden

  Efter att Linux 1.0 släpptes har det arbetats på flera förbättringar.
  Uppsnabbning av diskaccess, TTY-förbättringar och många andra saker
  kom med Linux 1.2.  Linux 1.2 hade många nya förbättringar, inklusive
  förbättringar av virtuellt minne, stöd för multipla plattformar, quota
  och många andra funktioner.  Linux 2.0 har nu släppts, nu med ännu
  fler förbättringar, inklusive många förbättringar för högre prestanda,
  flera ny nätverksprotokoll, en av de snabbaste TCP/IP-
  implementationerna i världen och mycket, mycket mer.

  Även om kärnan innehåller mer än 3/4 miljoner rader kod så finns det
  mycket kod kvar att skriva och än mer dokumentation.  Om du önskar
  bidraga till dokumentationen så är du välkommen att gå med i
  mailinglistan linux-doc@vger.rutgers.edu.  Skicka e-post till
  majordomo@vger.rutgers.edu med en enkel rad ``help'' i dess ``body''
  (ej dess ``subject'').

  11.  Detta dokument

  Detta dokument upprätthålls av Michael K. Johnson,
  johnsonm@redhat.com.  Jag uppskattar om du skickar mig synpunkter,
  oavsett hur små.  Jag kan inte göra ett gott arbete med att underhålla
  detta dokument utan din hjälp.  Man kan alltid hitta en mer eller
  mindre aktuell (engelsk) kopia av detta dokument vid
   <http://sunsite.unc.edu/LDP>.  (För synpunkter beträffande den
  svenska översättningen, var vänlig skicka e-post till
  ukh@marijne.df.lth.se.)

  12.  Rättsligt

  Varumärken tillhör sina ägare.  Det finns ingen garanti för
  informationen i detta dokument.  Användning och distribution sker på
  egen risk.  Innehållet i detta dokument är i public domain, men var
  hygglig och ge referenser till citat.