Linux is an Unix-like operating system written by Linus Torvalds with contributions of developers across the Internet. It is often considered as an excellent and low-cost alternative to other more expensive operating systems.
Linux is created in 1991 as a hobby by a young student, Linus Torvalds, at the University of Helsinki in Finland. He had an interest in Minix, a small UNIX system, and decided to develop a system that exceeded the Minix standards. The first version (ver 1.0) of the Linux Kernel developed by Linus was released in 1994.
But with only a kernel, it does not work without applications. There are a lot of other utilities and programs that combined together to make up the capabilities of current Linux distributions, including those from Free Software Foundation's (FSF) and GNU (GNU stands for GNU's Not Unix). While the Linux kernel is maintained by a core team led by Linus, the utilities are maintained by their respective authors.
Linus has placed the copyright under the GNU General Public License, which basically means that one may freely copy, change and distribute it, but may not impose any restrictions on further distribution, and the source code must be available for free access/use. However, the licences of the utilities and programs, which come with the Linux distributions, do vary.
The use of Linux was more on the educational side a couple of years before. But it is becoming very popular and is used in many Internet servers. The Graphical User Interface of Linux is XFree86, which is a free implementation of X Windows, the standard graphical systems on many other UNIX systems. The two common graphical user interfaces are GNOME (GNU Network Object Modelling Environment) and KDE (K Desktop Environment).
The more appropriate name for Linux should be GNU OS on Linux or GNU/Linux. But GNU is often left out as people tend to more focus on the name Linux as GNU tools are available on almost all platforms in addition to Linux.
The kernel and most of the utilities in the Linux distributions are developed under the GNU General Public License, and the respective source code is freely available to everyone. This however, doesn't mean that all Linux distributions are free -- companies and developers may charge the user a certain amount of money provided that the source code remains available. Linux may be used for a wide variety of purposes including networking, software development, and as an end-user platform. Linux is often considered an excellent, low-cost alternative to other more expensive operating systems - Microsoft Windows.
It has become quite popular worldwide and a vast number of software programmers have taken Linux's source code and adapted it to meet their individual needs.
What is its current status ?
Linux kernel version 2.4 is released in January 2001 as an major upgrade to its previous stable kernel version 2.2 since July 1999. Refer to Linux HeadQuarter Web site at http://www.linuxhq.com/kernel/v2.4 for more information on what are the changes in Linux kernel 2.4. Many vendors have supported or announced the support to Linux on their desktop PCs and servers.
Chinese language is supported by some distributions or by adding language extensions.
Although Chinese processing support is built in some Linux distributions, the support of Chinese processing on its applications is still limited.
How about its hardware support ?
Linux can support most common PC hardware. It has gained support by hardware vendors that some will provide a Linux version of their hardware drivers as well as Microsoft Windows. Universal Serial Bus (USB) support is available. Linux supports a wide range of graphics cards, and most current graphics cards are supported.
Is installing Linux as easy as installing Windows ?
Well, yes and no. With the right hardware, it can be a rather easy job, but it becomes tricky and need expertise to configure the hardware when the hardware is not working with the Linux drivers provided.
The graphical system (XFree86) does not come with a comprehensive and easy configuration program. When there is a problem, an average user may not be able to get a working GUI without assistance.
Is using Linux as easy as using Windows ?
Another yes and no. The working style of the graphics interface of Linux and Windows are very similar, there are a lot of applications, and some major software companies are committed to support the platform, e.g. Sun Microsystems, Corel, IBM, Oracle.
There are some MS Office like application suites available. Some of them are even free, e.g. Sun Microsystems StarOffice.
So, is Linux suitable for you ?
It depends. You can have a dual OS on your hard disk, but new commands (e.g. mount) have to be acquainted with. If you have the skills, you may find Linux useful as an operating system platform, especially in server side. Finally, make sure your hardware (e.g. sound card, display card) is compatible with Linux before installing it.
About TUX
Larry Ewing is the creator of "Tux the Penguin" logo of Linux, he got the idea from discussions on the linux-kernel mailing list, and an initial suggestion by Alan Cox (one of the core Linux kernel developers).
All of the penguin pictures were created entirely within The GIMP (version 0.54). The majority of the drawing was done on a 486 DX2/50 running linux. He used nothing but a mouse and a lot of patience. The final smoothing was done on an SGI
Quotes of Linus :
Somebody had a logo competition announcement, maybe people can send their ideas to a web-site..
Anyway, this one looks like the poor penguin is not really strong enough to hold up the world, and it's going to get squashed. Not a good, positive logo, in that respect..
Now, when you think about penguins, first take a deep calming breath, and then think "cuddly". Take another breath, and think "cute". Go back to "cuddly" for a while (and go on breathing), then think "contented".
With me so far? Good..
Now, with penguins, (cuddly such), "contented" means it has either just gotten laid, or it's stuffed on herring. Take it from me, I'm an expert on penguins, those are really the only two options.
Now, working on that angle, we don't really want to be associated with a randy penguin (well, we do, but it's not politic, so we won't), so we should be looking at the "stuffed to its brim with herring" angle here.
So when you think "penguin", you should be imagining a slightly overweight penguin (*), sitting down after having gorged itself, and having just burped. It's sitting there with a beatific smile - the world is a good place to be when you have just eaten a few gallons of raw fish and you can feel another "burp" coming.
(*) Not FAT, but you should be able to see that it's sitting down because it's really too stuffed to stand up. Think "bean bag" here.
Now, if you have problems associating yourself with something that gets off by eating raw fish, think "chocolate" or something, but you get the idea.
Ok, so we should be thinking of a lovable, cuddly, stuffed penguin sitting down after having gorged itself on herring. Still with me?
NOW comes the hard part. With this image firmly etched on your eyeballs, you then sketch a stylized version of it. Not a lot of detail - just a black brush-type outline (you know the effect you get with a brush where the thickness of the line varies). THAT requires talent. Give people the outline, and they should say [ sickly sweet voice, babytalk almost ]"Ooh, what a cuddly penguin, I bet he is just _stuffed_ with herring", and small children will jump up and down and scream "mommy mommy, can I have one too?".
Then we can do a larger version with some more detail (maybe leaning against a globe of the world, but I don't think we really want to give any "macho penguin" image here about Atlas or anything). That more detailed version can spank billy-boy to tears for all I care, or play ice-hockey with the FreeBSD demon. But the simple, single penguin would be the logo, and the others would just be that cuddly penguin being used as an actor in some tableau.
Linus
Glossary
Chinese 2000 Linux
It is a desktop Linux operating system developed by Culturecom. It bundles an office suite software called "Hancom Office".
Linux
Linux is a Unix-like operating system created with the assistance of software developers around the world. The source code for Linux is publicly available free of charge, that is, it is an open source product. A Linux-based product is sometimes called a Linux distribution.
Mandrake Linux
It is a Linux operating system developed by MandrakeSoft. It can be used on both a desktop and a server. It bundles applications such as Web server, database server and simple word processor. It can be freely downloaded from the Internet.
Office Automation tools
Office Automation tools include software like word processing, spreadsheet and presentation software, etc.
OpenOffice
An open source office product that supports word processing, spreadsheet calculation, presentation and drawing functions. It can be downloaded from the Internet free of charge. An office product may be developed with open source software but not necessarily based on OpenOffice software.
Open source software
Open source software refers to software in which the source code is made publicly available. The full definition of Open Source can be found at http://www.opensource.org/docs/definition.html.
Operating system
An operating system (sometimes abbreviated as "OS") is the base software in a computer that manages all the other programs that execute on that computer. Linux and Windows XP are examples of operating systems.
Office suite software
A suite of software products that support word processing, spreadsheet calculation and presentation functions. Some office suite also includes drawings and database tools.
Redflag Linux Desktop
It is a desktop Linux operating system developed by Redflag Software. It bundles desktop applications such as Internet browser and simple word processor. It can be freely downloaded from the Internet.
Red Hat Linux
It is a Linux operating system developed by Red Hat. It can be used on both a desktop and a server. It bundles applications such as Web server, database server and simple word processor. It can be freely downloaded from the Internet.
StarOffice / StarSuite
An office product suite developed by Sun Microsystems and is based on OpenOffice.
Thiz Linux Desktop
It is a desktop Linux operating system developed by ThizLinuz Laboratory. It bundles desktop applications such as Internet browser and simple word processor.
It is a desktop Linux operating system developed by Turbolinux. It bundles desktop applications such as Internet browser and simple word processor. It can be freely downloaded from the Internet.
Popular Distributions
Summary of product information of popular distributions: Chinese 2000 Linux 1.0, Red Hat Linux 7.3, ThizLinux Desktop 6.0 and Turbolinux 7.0. Information of other popular Linux distributions can be found in http://www.linux.org
If you've used a graphical user interface (GUI) before, you'll be familiar with this process. If not, simply use your mouse to navigate the screens, "click" buttons or enter text fields. You can also navigate through the installation using the Tab and Enter keys.
Please Note
If you do not wish to use the GUI installation program, the text mode installation program is also available. To enter text mode, enter the following boot command:
boot: text
For text mode installation instructions, please refer to the Official Red Hat Linux Reference Guide.
Booting without diskettes
The Red Hat Linux/Intel CD-ROM can also be booted by computers that support bootable CD-ROMs. Not all computers support this feature, so if yours can't boot from the CD-ROM, there is one other way to start the installation without using a boot disk. The following method is specific to Intel-based computers only.
If you have MS-DOS installed on your system, you can boot directly from the CD-ROM drive without using a boot disk.
To do this (assuming your CD-ROM is drive d:), use the following commands:
C:\> d:
D:\> cd \dosutils
D:\dosutils> autoboot.bat
This method will not work if run in a DOS window -- the autoboot.bat file must be executed with DOS as the only operating system. In other words, Windows cannot be running.
If your computer can't boot directly from CD-ROM (and you can't use a DOS-based autoboot), you'll have to use a boot diskette to get things started.
Installing from CD-ROM
To install Red Hat Linux from CD-ROM, choose "CD-ROM" and select OK. When prompted, insert the Red Hat Linux CD into your CD-ROM drive (if you did not boot from the CD-ROM). Once done, select OK, and press Enter.
The installation program will then probe your system and attempt to identify your CD-ROM drive. It will start by looking for an IDE (also known as ATAPI) CD-ROM drive. If found, you will continue to the next stage of the installation process (see the section called Language Selection).
What If the IDE CD-ROM Was Not Found?
If the installation program fails to find your IDE (ATAPI) CD-ROM (it asks you what type of CD-ROM drive you have), restart the installation, and at the boot: prompt enter linux hdX=cdrom. Replace the X with one of the following letters, depending on the interface the unit is connected to, and whether it is configured as master or slave:
a - First IDE controller, master
b - First IDE controller, slave
c - Second IDE controller, master
d - Second IDE controller, slave
(If you have a third and/or fourth controller, simply continue assigning letters in alphabetical order, going from controller to controller, and master to slave.)
Once identified, you will be asked to insert the Red Hat Linux CD into your CD-ROM drive. Select OK when you have done so. After a short delay, the next dialog box will appear.
After booting, the installation program begins by displaying the language screen.
Flow of installation:
First of all, it will prompt to choose language, keyboard type and the mouse type. Then it will enter the “Install options” section. The options are described previously (in page 2). In the top right-hand corner of the Install Type screen there is a box you may select if you wish to partition using fdisk. Note that fdisk is not as intuitive to use as Disk Druid and is not selected by default. If you have not used fdisk before, you should read about both fdisk and Disk Druid to determine which will best suit your needs.
Partitioning with fdisk
Unless you have previously used fdisk and understand how it works, we do not recommend that you use it. Disk Druid is an easier and friendlier partitioning tool for those new to partitioning their system. To exit fdisk click Back to return to the previous screen, deselect fdisk, and then click Next.
This section applies only if you chose to use fdisk to partition your system.
Once you have chosen which drive to partition, you will be presented with the fdisk command screen. If you are unsure as to what command you should use, type m at the prompt for help. Please refer to the Official Red Hat Linux Reference Guide for an overview of fdisk. When you've finished making partitions, type w to save your changes and quit. You will be taken back to the original fdisk screen where you can choose to partition another drive or continue with your installation.
After you have partitioned your drive(s), click Next. You will then use Disk Druid to assign mount points to your partitions.
You will not be able to add new partitions using Disk Druid, but you will be able to edit those you have already created.
Partition Fields
Each line in the "Partitions" section represents a disk partition. Each line in this section has five different fields:
Mount Point:
A mount point is the location within the directory hierarchy at which a volume exists. The volume is said to be mounted at this location. This field indicates where the partition will be mounted. If a partition exists, but is "not set" you need to define its mount point. Double-click on the partition or use the Edit key.
Unless you have a reason for doing otherwise, we recommend that you create the following partitions:
A swap partition (at least 16MB) -- Swap partitions are used to support virtual memory. In other words, data is written to a swap partition when there is not enough RAM to store the data your system is processing. If your computer has 16MB of RAM or less, you must create a swap partition. Even if you have more memory, a swap partition is still recommended. The minimum size of your swap partition should be equal to your computer's RAM, or 16MB (whichever is larger).
A /boot partition (16MB, maximum) -- The partition mounted on /boot contains the operating system kernel (which allows your system to boot Red Hat Linux), along with files used during the bootstrap process. Due to the limitations of most PC BIOSes, creating a small partition to hold these files is a good idea. This partition should be no larger than 16MB.
A root partition (850MB-1.7GB) -- This is where "/" (the root directory) resides. In this setup, all files (except those stored in /boot) reside on the root partition. A 850MB root partition will permit the equivalent of a workstation-class installation (with very little free space), while a 1.7GB root partition will let you install every package.
Device:
This field displays the partition's device name.
Requested:
This field shows the partition's original size. To re-define the size, you must delete the current partition and recreate it using the Add button.
Actual:
This field shows the space currently allocated to the partition.
Type:
This field shows the partition's type (such as Linux Native or DOS).
Choose Partitions to Format
Choose the partitions that you would like to format. All newly created partitions should be formatted. In addition, any existing partitions that contain data you no longer need should be formatted.
If you wish to check for bad blocks while formatting each filesystem, please make sure to select the check for bad blocks option.
Checking for bad blocks can help prevent data loss by locating the bad blocks on a drive and making a list of them to prevent using them in the future.
Installing LILO
In order to be able to boot your Red Hat Linux system, you usually need to install LILO (the LInux LOader). You may install LILO in one of two places:
The master boot record (MBR)
The recommended place to install LILO, unless the MBR already starts another operating system loader, such System Commander or OS/2's Boot Manager. The master boot record is a special area on your hard drive that is automatically loaded by your computer's BIOS, and is the earliest point at which LILO can take control of the boot process. If you install LILO in the MBR, when your machine boots, LILO will present a boot: prompt. You can then boot Red Hat Linux or any other operating system you configure LILO to boot.
The first sector of your root partition
Recommended if you are already using another boot loader on your system (such as OS/2's Boot Manager). In this case, your other boot loader will take control first. You can then configure that boot loader to start LILO (which will then boot Red Hat Linux).
If you choose to install LILO, please select where you would like LILO to be installed on your system (see Figure 4-9). If your system will use only Red Hat Linux you should choose the master boot record (MBR). For systems with Win95/98, you also should install LILO to the MBR so that LILO can boot both operating systems.
If you have Windows NT (and you want to install LILO) you should choose to install LILO on the first sector of the root partition, not the MBR. Please be sure to create a boot disk. In a case such as this, you will either need to use the boot disk, or configure the NT system loader to boot LILO from the first sector of the root partition.
3 Linux Basic Commands
System commands:
cat:
To list out the content of the file.
e.g. >cat abc.txt cd:
To change the current directory path.
e.g. >cd /usr/local chgrp:
To change the group ownership of a file or directory.
e.g. >chgrp users /home/andy/share
chmod: [see below for detail]
To change the access right of a file or directory.
e.g. >chmod 644 /home/andy/share
chown:
To change the ownership of a file or directory.
e.g. >chown billy /home/andy/share
clear:
To clear the screen.
cp:
To copy files to destination.
e.g. >cp
To control the scheduled execution time of programs or command for each user.
e.g. >crontab –u andy
The configuration is:
Min Hours Day month week day command
vi:
To edit a file content.
e.g. >vi abc.txt
There is a list of operation keystokes.
In this application, there are two modes. One is command mode, the other is insert mode. Insert mode allows users to edit the content of a document, while command mode is only give instruction to the application.
To trigger the insert mode, press the “i” in the keyboard. To trigger the command mode, press “Esc” in the keyboard.
The command list in the command mode are:
x delete the character at the cursor.
dd delete the row at the cursor.
u undo the previous change.
h move the cursor to the left.
j move the cursor to the next row.
k move the cursor to the previous row.
l move the cursor to the right.
:q! exit the editor.
:w save the changes to the file.
:wq save the changes and exit the editor.
ls:
To list out the directory files.
e.g. >ls –la
man:
To display the online help of a command.
e.g. >man ls
mkdir:
To make a new directory.
e.g. >mkdir mydocs
mv:
To rename a file.
e.g. >mv
To set password for a user.
e.g. >passwd pwd:
To display the current directory path.
e.g. pwd
rm:
To remove a file.
e.g. >rm /home/andy/share/test.txt
rmdir:
To remove a directory.
e.g. >rmdir /home/andy/share
su:
To change the user identity to supper user.
e.g. >su
tar:
To backup and restore files into a package.
e.g. >tar czvf backup.tar.gz *.txt for backup.
>tar xzvf backup.tar.gz /home/andy for restoring.
mount/umount:
To load a file system mount
To unload a file system umount
e.g. >mount /dev/cdrom /mnt/cdrom
>umount /dev/cdrom
What is a kernel?
It is that part of the system which manages the resources of whatever computer system it lives on, to keep track of the disks, tapes, printers, terminals, communication lines, and any other devices.
What is a Shell?
It is the command interpreter. Although the Shell is just a utility program, and is not properly a part of the system, it is the part that the user sees. The Shell listens to your terminal, and translates your requests into actions on the part of the kernel and the many utility programs.
Ownership and Protection
For every file and every directory in the file system, there are three classes of users who may have access:
e.g. ‘read-only mode’ file has these permissions: r - - r - - r - -
Changing Permissions with chmod
Just using the binary arithmetic, each permission in the group of nine is represented by a one, each protection (lack of permission) is represented by a zero.
So ‘ r w - r - - r - - ’ translates to ‘110100100’, or ‘644’ in octal notation.
Users not familiar with binary notation can use the translation diagram shown below. To translate the mode you require to a number, simply add up the numbers corresponding to the individual permissions you want.
i.e. r w x r w x r w x
400 40 4
200 20 2
100 10 1
The addition is 400+200+40+4=644
A few of the more common Permissions are
644 r w - r - - r - -