Learning Linux
Introduction
This document provides information and links to resources relating to learning about Linux, starting from the most basic subjects.
Linux Overview
For background information about Linux, read the Wikipedia Linux article.
Linux Basics
Command Line Tools
Text Editors
This section discusses popular text editors that can be run in a standard console window. I.e. they do not require a GUI interface to run. It is very useful to be able to use at least the basic text editing functions of each of these text editors. Invariably, at least one of them will be installed on any Unix system.
Vim and Emacs are extremely powerful editors with functionality to support many different file formats and programming languages. Vi would appear to be more popular than Emacs, probably because Emacs appears more daunting to learn. There are also many more editors, some of which are more suited for some tasks. E.g. For Java development, Eclipse is a good choice.
All three editors can also be used on Windows, Mac OS X, Linux and Unix.
Emacs supports Collaborative Editing.
Nano
Nano seems to have become the default text editor for Debian and Ubuntu. It is completely intuitive to use the basic editing functions, and therefore much easier to use for the first time than Vim or Emacs, but not as powerful.
Vi/Vim
Vi is normally the default text editor under Unix, so it is highly recommended to learn the basic editing commands of this editor. Start with the man pages:
$ man vi
There are many flavours of Vi, one being Vim (An acronym for Vi Improved). The Vim editor has a built-in tutorial which you can execute with the following command:
$ vimtutor
Using the vimtutor is probably the quickest and easiest way to learn vi.
Emacs
GNU Emacs was the original Emacs editor, with a fork of Emacs being publicly released in 1991 and is now known as XEmacs. It is a personal matter which you prefer to use. There seems little to choose between them.
Emacs has a built-in tutorial which can be accessed from the Help menu.
Writing Scripts
Once you have gained experience using Linux and have become familiar with the basic commands and documentation, you should move onto writing simple scripts to ease everyday tasks. Work through the following guides:
System Administration
Linux Filesystem Hierarchy
To understand where the best place to files of various types, read the Linux Filesystem Hierarchy
The Linux System Administrator's Guide
This guide covers most of the activities that are potentially useful to anyone managing a Linux system, whether it be a server, desktop, laptop or hand-held device.
Security
Resources
Related Topics: LinuxHintsAndTips, CygwinHintsAndTips, EmacsTips
-- Frank Dean - 13 Mar 2010