Linux+ Guide to Linux
Certification, Third Edition
Chapter 1
Introduction to Linux
Objectives
Understand the purpose of an operating system
Outline the key features of the Linux operating
system
Describe the origins of the Linux operating system
Identify the characteristics of various Linux
distributions and where to find them
Explain the common uses of Linux in industry
Linux+ Guide to Linux Certification, 3e
Operating Systems
Computers have two fundamental components:
Hardware: physical components inside a computer
Software: set of instructions or programs that allow
hardware components to manipulate data
Linux+ Guide to Linux Certification, 3e
Operating Systems (continued)
Hardware components include:
Processor (CPU)
Physical memory (RAM)
Hard disk drives
Sound cards
Video cards
Circuit boards
Linux+ Guide to Linux Certification, 3e
Operating Systems (continued)
Two different types of programs are executed on a
computer:
Applications: programs designed for a specific use
and with which a user interacts
Operating system (OS) software: software
components used to control the hardware of the
computer
Linux+ Guide to Linux Certification, 3e
Operating Systems (continued)
Device Driver: software containing instructions that
the OS uses to control and interact with a specific
type of computer hardware
User Interface: an application program that allows
the user to interact with the OS and other
application programs
Can be a command line prompt or a graphical user
interface (GUI)
Linux+ Guide to Linux Certification, 3e
Operating Systems (continued)
Figure 1-1: The role of operating system software
Linux+ Guide to Linux Certification, 3e
Operating Systems (continued)
Graphical user interface (GUI): component of an
OS that the user can interact with using the
keyboard or the mouse
System services: applications that handle systemrelated tasks
Printing
Scheduling programs
Gaining network access
Linux+ Guide to Linux Certification, 3e
Operating Systems (continued)
Figure 1-2: A Linux graphical user interface
Linux+ Guide to Linux Certification, 3e
10
The Linux Operating System
OS used to run a variety of applications on a
variety of different hardware components
Multiuser and multitasking OS
Has the ability to manage thousands of tasks at the
same time
Allows multiple users to access the system
simultaneously
Linux+ Guide to Linux Certification, 3e
11
Versions of the
Linux Operating System
Core component is called the Linux kernel
Written almost entirely in the C programming
language
Software can be used to modify appearance of
Linux, but the kernel is common to all Linux
Important to understand Linux kernel version
numbers to decide which version is appropriate for
user needs
Good understanding of system hardware is
important in deciding which kernel version to use
Linux+ Guide to Linux Certification, 3e
12
Identifying Kernel Versions
Linux kernel versions are composed of:
Major number
Minor number
If odd, referred to as a developmental kernel: a kernel
which is not fully tested and with implied instability
If even, referred to as a production kernel: a kernel
that has been thoroughly tested and is declared to be
stable
Revision number
Linux+ Guide to Linux Certification, 3e
13
Table 1-1: Latest revisions of common Linux kernels
Linux+ Guide to Linux Certification, 3e
14
Licensing Linux
Open Source Software (OSS): programs
distributed and licensed so that the source code is
available, free of charge, to anyone who wants to
examine, utilize, or improve upon it
Format and structure of source code follows rules
defined by the programming language in which it
was written
Linux+ Guide to Linux Certification, 3e
15
Licensing Linux (continued)
Implications of OSS:
Developed very rapidly through widespread
collaboration
Bugs (errors) are noted and promptly fixed
Features evolve quickly based on users needs
Perceived value of the software increases because it
is based on usefulness, not on price
Linux+ Guide to Linux Certification, 3e
16
Licensing Linux (continued)
Table 1-2: Software types
Linux+ Guide to Linux Certification, 3e
17
Types of Open Source Licenses
GNU Public License (GPL):
Stipulates that the source code of any software
published under its license must be freely available
Users who modify the source code must also
redistribute the modified code freely
Artistic license: OSS license allowing source code
to be distributed freely, changed only at discretion
of original author
Linux+ Guide to Linux Certification, 3e
18
Types of Closed Source Licenses
Most closed source software is sold commercially
Usually bears label of manufacturer, such as
Microsoft or Electronic Arts software
Freeware: distributed free of charge; source code
is not available
Shareware: initially free, but requires payment after
a period of time or for use of certain features
Linux+ Guide to Linux Certification, 3e
19
Linux Advantages:
Risk Reduction
Changes in the market or customer needs may
cause companies to change software frequently
Can be costly and time-consuming
Support for closed source software may end
Vendor may go out of business
Software version may be retired
OSS products offer the opportunity to maintain and
change the source code
Linux+ Guide to Linux Certification, 3e
20
Linux Advantages:
Meeting Business Needs
Common software available for Linux includes:
Scientific and engineering software
Software emulators
Web servers, Web browsers, and e-commerce
suites
Desktop productivity software
Graphics manipulation software
Database software
Security software
Linux+ Guide to Linux Certification, 3e
21
Linux Advantages:
Stability and Security
Customers using a closed source OS must rely on
the OS vendor to fix any bugs
Waiting for a hot fix may take weeks or months
Bugs and security loopholes in OSS programs can
be identified and fixed quickly
Code is freely available and scrutinized by many
developers
Linux+ Guide to Linux Certification, 3e
22
Linux Advantages: Flexibility for
Different Hardware Platforms
Partial list of hardware platforms on which Linux
can run:
Intel
Itanium
Mainframe (S/390)
ARM
Alpha
MIPS
M68K
PA-RISC
SPARC
Ultra-SPARC
PowerPC
Can be customized to work on mobile and
embedded devices
Linux+ Guide to Linux Certification, 3e
23
Linux Advantages:
Ease of Customization
Ability to control the inner workings of the OS
To use Linux as an Internet Web server, compile the
kernel to include only the support needed to be an
Internet Web server
Results in a much smaller and faster kernel
Can choose to install only software packages
needed to perform required tasks
Can use shell and PERL scripts to customize or
automate tasks
Linux+ Guide to Linux Certification, 3e
24
Linux Advantages:
Ease of Obtaining Support
Linux documentation can be found on the Internet
Frequently asked questions (FAQs)
HOWTO documents
Linux newsgroups
Linux User Group (LUG): Open forum of Linux
users who discuss and assist each other in using
and modifying the Linux OS
Linux+ Guide to Linux Certification, 3e
25
Linux Advantages:
Cost Reduction
Table 1-3: Calculating the total cost of ownership
Linux+ Guide to Linux Certification, 3e
26
The History of Linux
Figure 1-4: Timeline of UNIX and Linux development
Linux+ Guide to Linux Certification, 3e
27
UNIX
Evolved from Multiplexed Information and
Computing Service (MULTICS)
The first true multitasking, multiuser OS
Written in the C programming language
Portable OS
OS from which Linux originated
Linux+ Guide to Linux Certification, 3e
28
UNIX (continued)
Berkeley Software Distribution (BSD)
Version of the original UNIX source code
Common flavors of UNIX today include:
Sun Microsystemss Solaris UNIX
Hewlett-Packards HP-UX
IBMs AIX UNIX
Linux+ Guide to Linux Certification, 3e
29
The Hacker Culture
Hacker: someone attempting to expand their
computing knowledge through experimentation
Idea of sharing knowledge is fundamental to hackers
Hacker culture set the stage for the development of
Linux
Cracker: someone who illegally uses computers for
personal benefit or to cause damage
GNU project: free OS project started by Richard
Stallman
Led to publication of GNU Public License (GPL)
Linux+ Guide to Linux Certification, 3e
30
Linux
First developed by Linus Torvalds in 1991
Published under the GNU license
Linux kernel developed collaboratively and
centrally managed
Hackers developed Linux add-on packages and
distributions
Linux is simply a by-product of OSS development
Linux+ Guide to Linux Certification, 3e
31
Linux Distributions
Distribution: a collection of software containing the
Linux kernel and libraries, combined with add-on
software specific to a certain use.
Red Hat and SuSE
Distributions may appear different on the surface,
but run the same kernel
Most distributions include a GUI that can be further
customized to suit the needs of the user
Core component of this GUI is X Windows
Linux+ Guide to Linux Certification, 3e
32
Linux Distributions (continued)
GUI environment: X Windows in combination with a
window manager and desktop environment
affects the look and feel of the Linux GUI
Two competing GUI environments in Linux:
GNU Object Model Environment (GNOME)
K Desktop Environment (KDE)
Some Linux distributions include specific language
support
Linux+ Guide to Linux Certification, 3e
33
Linux Distributions (continued)
Figure 1-5: The GNOME Desktop
Linux+ Guide to Linux Certification, 3e
34
Linux Distributions (continued)
Package manager: software system that installs
and maintains software
Red Hat package manager standard on many Linux
distributions
Tarball: compressed archive of files containing
scripts that install software to the correct location
on the system
Difficult to manage, upgrade or remove from system
Linux+ Guide to Linux Certification, 3e
35
Linux Distributions (continued)
Table 1-4: Common Linux distributions
Linux+ Guide to Linux Certification, 3e
36
Linux Distributions (continued)
Table 1-4 (continued): Common Linux distributions
Linux+ Guide to Linux Certification, 3e
37
Common Uses of Linux
May be customized to provide services for a variety
of companies in a variety of situations
Workstation services: services used on a local
computer
Server services: services made available for other
computers across a network
Linux+ Guide to Linux Certification, 3e
38
Internet Servers: Mail Services
Mail transfer agent (MTA): an e-mail server used to
distribute email
Mail delivery agent (MDA): service that downloads
e-mail from an MTA
Mail user agent (MUA): program that allows e-mail
to be read by a user
Linux+ Guide to Linux Certification, 3e
39
Internet Servers:
Routing and FTP Services
Routing: provides interconnection between
separate networks
Core service necessary for Internet to function
Linux provides support for routing and is easily
customizable
File Transfer Protocol (FTP) Services: most
common and efficient method for transferring files
over the Internet
Linux+ Guide to Linux Certification, 3e
40
Internet Servers:
Firewalls and Proxy Services
Firewall: Protects companies from outside intruders
on the Internet
Linux has firewall support built into the kernel
Proxy server: requests Internet resources such as
Web sites and FTP sites on behalf of the computer
inside the company
Common proxy server used on Linux is Squid
Linux+ Guide to Linux Certification, 3e
41
Internet Servers:
Web Services and News Services
Web services: Web servers host information
Can process programs known as Common Gateway
Interface (CGI) scripts that enable connection to a
resource on the network which is not connected to
the Internet
Can use Single Socket Layer (SSL) to provide
secure connections
News services: News servers allow users to post
messages in forums called newsgroups
Most Web servers do not provide means for users to
communicate
Linux+ Guide to Linux Certification, 3e
42
Internet Servers: DNS Services
Computers communicating on a network need to
be uniquely identified
Each computer is assigned an Internet Protocol (IP)
address
Long string of numbers
Allows computers to identify and reference each other
Fully Qualified Domain Name (FQDN): masks IP
addresses with user-friendly names
DNS server: maintains a list of proper FQDN to IP
mappings
Linux+ Guide to Linux Certification, 3e
43
File and Print Servers
Linux is well-suited for centrally sharing resources
More economical to share files and printers over a
network
Inherently fast and light
A distribution specific to a certain task can be
installed on the central server
Can share resources with a computer running
another OS
Linux+ Guide to Linux Certification, 3e
44
Application Servers
Application server: intermediary between a client
computer and a database
Database: organized collection of data that is
arranged into tables of related information
Database Management Systems (DBMS): set of
programs designed to allow for creation,
modification, manipulation, maintenance, and
access of information from databases
Application servers can provide management
functionality
Linux+ Guide to Linux Certification, 3e
45
Supercomputers
Clustering: combining several smaller computers to
act as one large supercomputer
Beowulf clustering: most common Linux method of
clustering
Scalability: the ability for a computer to increase
workload as the number of processors increases
Clustering computers often results in better
scalability than adding processors to a single
computer
Linux+ Guide to Linux Certification, 3e
46
Scientific/Engineering Workstation
Scientific and engineering community often needs
customized programs
OSS programs can be used or modified
OSS software available for physics, astrophysics,
biophysics, biocomputation, data mining, and many
other scientific and engineering fields
Linux+ Guide to Linux Certification, 3e
47
Office/Personal Workstation
Workstation software designed for end users in
office and home environments
OSS packages available for:
Graphics editing software
Desktop publishing software
Media software
Financial software
Office productivity suites
Bittorrent clients
Linux+ Guide to Linux Certification, 3e
48
Summary
Linux is an OS
Kernel and additional software are freely developed
and improved upon by a large community of
software developers
Published under the GPL
Called Open Source Software (OSS)
Companies find Linux a stable, low-risk, and
flexible alternative to other OSs
Linux+ Guide to Linux Certification, 3e
49
Summary (continued)
Comes in different distributions, all having a
common kernel, but packaged with different OSS
applications
Wide variety of documentation and resources exist:
Internet Web sites, HOWTOs, FAQs, newsgroups,
and LUGs
Extremely versatile OS that provides a wide range
of workstation and server services
Linux+ Guide to Linux Certification, 3e
50