[Home]  [Links]  [grouch] 

Notes and tips for beginning in Linux

[Your mileage may vary!]

This is not a HOWTO. I do not know the inner workings of any part of Linux or any GNU tools well enough to presume to write such a document. It is, instead, just some caveats, advice, and tips taken from my experience with Linux.

* Read. You have a huge collection of tools with any Linux distribution or installation. I don't care how good the GUI gets, it is unreasonable and illogical to believe you can understand the functions, configurations, and proper usage of those tools without reading.

* Chat rooms are not a substitute for reading.

* If you do seek help in a chatroom, read. Don't bombard the chat with screams of help. Just ask. The amount of help you receive will most likely be inversely proportional to your patience and courtesy. You'll still be on your own in separating the garbage from the good.

* If you intend to set up a dual-boot or multi-boot system, learn about partitions first. You don't want to find out the hard way. Read a little and you won't run out and buy some "magical" program to do your partitioning. You'll find all the tools you need with your distribution of Linux.

* Unless you are installing onto a hard drive of less than about 4 G, don't dump your entire Linux installation into a root partition (not to be confused with the root directory) and a swap partition. You will create frustration for yourself later. Make a separate partition for /home at least. If you are putting Linux on a drive that already holds some other operating system, you may need to create a small partition for your /boot directory just to make sure it is contained within that magical 1024 cylinder limit of BIOS. Proceed cautiously concerning partitions! Visit The Linux Documentation Project and read the online HOWTOs.

Many of the auto-install programs of Linux distributions create only a "native" and a swap partition. There is nothing inherently wrong with this except for the inconvenience noted above. An advantage to having one partition that holds all of your system is that you won't run out of room in, for example, /var when /home or /usr have lots of space remaining.

Here are some usable, roomy sizes that allow for growth and beginning experimentation (unless you're doing some serious serving, in which case you need a lot more information than you will get here!):

The size shown in [ ] is a *reasonable* maximum, not a system limitation.
If you find you've short-changed some directory, you can add another hard
drive and do some symlinks. Gigabytes are cheap.

Mountpoint   [Up to]     Description

  /boot        5 MB   May not be able to set it this small, 
            [ 15 MB]  depending on geometry.
                      May not be needed, with newer versions of LILO.
  /          128 MB   The / directory holds everything, but the partition
            [ 1 G ]   that holds the / directory does *not* have to contain
  /var       256 MB   This could be larger, depending on services and logs.
            [ 1 G ]   Debian stores downloaded packages in a subdirectory of
		      this, so make this larger if possible.
  /usr       512 MB   Depends on how much software you install!
            [ 4 G ]   This directory is the container of most of the binaries
                      (programs) and their documentation. It will also hold
		      the sources for compiling. 2G will allow for a well-
		      stocked system.
  /home      512 MB   Make this one large if you download a lot or have
            [ how     multiple users on the machine. This one should hold
              much    all of 'your' stuff. By putting it on a separate
              can     partition, you can later change distributions without
              you     disturbing your personal files. Just don't format it
              give    during the next install or upgrade.
              it?  ]  Many distributions default to placing the root for the
		      ftp and http servers in this directory. This is another
		      good reason to expand the partition holding /home.
  swap       128 MB   Use the guidelines given with your distribution.
            [ Generally, swap should be double the amount of RAM installed.
              But systems now seem to have more RAM than is needed for all
              running programs. Most people with 64 MB of RAM or more have 
              little need for more than 128 MB of swap.
              Your mileage may vary. ]

There are lots of ways to set up your drive; read some HOWTOs and apply the information to your situation.

* Throw your windows-only modem away. Even though there are kludges to make it work in Linux, it was a dumb idea to begin with. A real hardware modem is much more efficient.

* Don't think you have to install everything that comes with your distribution. Most come with some sort of package management tools, so it's pretty easy to add extras later. Take the time during installation to pick and choose. Installation is not something you do every day, so don't rush it. Read before you act. Who cares if it takes two hours to install because you read everything, if the system is going to run solidly for years?

* If you have the disk space (and it doesn't take much) install as much documentation as is included with your distribution.

* Examine the files under /usr/share, /usr/doc Remember that with Linux, you have documentation that runs the gamut from cookbook-like HOWTOs all the way to the very source code of the programs you're running.

* Expect frustration. Remember how lost you felt the first time you sat down at a computer keyboard.

* If you're coming from Windows, resist the ingrained habit of rebooting or reinstalling to solve problems. Does your GUI (graphical user interface) appear locked? Wait, it may come to its senses. If not, alt-ctrl-backspace should kill the X server. Some systems trap that key sequence so learn how to switch to a command line virtual console (alt-ctrl-Fn, where Fn is a function key F1 - F6, depending on your system). From the command line you can find out what processes are running using the command ps ax and then kill the process that's become unresponsive. Read about it. The Installation and Getting Started Guide is essential beginning reading.

* Don't restrict yourself to the GUI; learn to make efficient use of your system by learning both the GUI and the CLI (command line interface). Here are some commands to start you on your way:

man <name>    display the manual page for <name>; as in
                    man man
		    man ls
		    man cat
		    man less

cd <name>     change to directory <name>
              your home directory has the special name ~
	            cd ~
	      will always take you home

ls <name>     list files in directory <name> as in:
                    ls /usr/bin
		    ls /usr/local/bin

cat <name>    similar to 'type <filename>' in DOS,
              see the man page for more uses

less <name>   less is more than more - displays a file one
              screenful at a time and allows scrolling with
              arrow keys or pageup pagedown keys

* The more you learn about the system, the more impressed you will be. It's like a whole colony of specialized assistants within your machine. You can direct them. Get used to the idea that it is your machine again. When you give it a command it may not ask you if you're sure, most of the time it will simply do its best to carry out your command as swiftly and efficiently as possible. There is a sort of artificial survival instinct built in, but it does not supercede your commands.