01 Lesson 1 Welcome

LESSON 1 - Welcome!

It's no longer uncommon for households to have more than computer. The goal
of this course is to network these PCs, share files between them and to
enable them to all connect to the internet.

This mailing list serves as the classroom. I'll publish the lessons to the
list, and you reply with any problems or questions. Just make sure all
correspondence contains the expression [Networking] in the subject line. You
can also use the linuxchix IRC server as a meeting point to discuss issues.
If you're looking for me, provided I'm online you'll find me in the channel
#tech.

Throughout this course we'll be using the command line. I'm sure I just
heard groans of dismay and the clicking of delete buttons. There are very
good reasons for using something perceived as being difficult to learn and
archaic.

1. In the first place, it's not hard to learn, it's certainly not old
fashioned, and if you think you can use the excuse of 'being a poor typist',
even that argument is invalid!

2. It's uniform across every linux distro. If I were to teach this course by
relying on a GUI, I'd have to include separate instructions for each distro!
To make matters worse, it's possible for the same GUI on the same version of
the same distro to look completely different.


## Becoming Root ##

When administering a linux system, 99% of the time you need to be the user
root. The common way to become root is to use the programme "su". Using
plain old "su" does however have one drawback, and any instructions I
provide assume that you became root by typing "su -" (thats su and then a
dash).

In future lessons when I use the phrase "become root and do foo", you are to
interpret this as meaning: "at the command prompt, execute "su -" to become
root and then execute the programme "foo".


## Editing Files ##

We'll spend a fair amount of time editing and tweaking config files. To do
this you need a text editor. The larger word processing programmes (Such as
Star Office, KOffice) are not suitable for our purposes. When you use a word
processor to save a file, it includes hidden text alongside what you wrote.
This hidden text is used by the word processor to indicate things like
indenting, underlines, margin widths etc. Great for documents meant to be
read by humans, but capable of really, really ruining your day when you want
the computer to read it. There are a few plain text editors available, the
two most popular ones being Emacs and vi. If you're already familiar with
either of these two, great - keep on using them. If you don't already have a
preferred editor, then I suggest you download and install a programme called
nano. Its download page has tarballs, deb packages and rpm packages (the
page says the rpm is for RedHat 8, but it also works perfectly with Mandrake
9) <http://www.nano-editor.org/download.html>

Because I don't want to force anyone to use any one particular editor, in
subsequent lessons I'll simply say "edit foo". This means: "using your
editor of choice, open the file foo, make the indicated changes, save and
exit".

Tip: If you're not 100% confident in editing config files, make a backup
copy first. That way if things go pear shaped you can just delete the messed
up file and start again. For example:

I tell you to edit the file /etc/foo.conf

1. Create a backup copy by

cp /etc/foo.conf /etc/foo.conf.bak

2. edit the file /etc/foo.conf

If something goes wrong, all you need to do is:

cp /etc/foo.conf.bak /etc/foo/conf

and you can start all over again.


## Homework ##

1. If you don't understand the difference between "su" and "su -", have a
read of the manpage for su (man su) and write to the list asking about
things in the manpage you don't understand.

2. Decide on a text editor, and make sure you can open a file, edit it and
save it.

3. If you're mystified by the command line, write to the list and say so.
I'm happy to go through some command line basics, but only if people need
it!