Download Linux+ Guide to Linux Certification Chapter One Introduction to Linux

Document related concepts

Spring (operating system) wikipedia , lookup

Maemo wikipedia , lookup

Unix wikipedia , lookup

Berkeley Software Distribution wikipedia , lookup

CP/M wikipedia , lookup

Plan 9 from Bell Labs wikipedia , lookup

Mobile operating system wikipedia , lookup

Unix security wikipedia , lookup

Linux kernel wikipedia , lookup

Linux wikipedia , lookup

Caldera OpenLinux wikipedia , lookup

Linux adoption wikipedia , lookup

Smallfoot wikipedia , lookup

Security-focused operating system wikipedia , lookup

Transcript
Linux+ Guide to Linux Certification
Chapter One
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
today
Operating Systems
• Every computer has two fundamental types of
components:
– Hardware
• Physical components inside a computer
– Software
• Set of instructions or programs that understand how
to use the hardware of the computer in a meaningful
way
– Once a program is executed on your computer’s hardware,
that program is referred to as a process
Operating Systems
• Hardware components include:
–
–
–
–
–
Processor (CPU)
Physical memory (RAM)
Hard disk, floppy disk, and CD-ROM drives
Sound and video cards
Circuit boards
Operating Systems
• There are two
different types or
programs
executed on a
computer:
– Applications
– Operating
system (OS)
software
Figure 1-1: The role of operating system software
Operating System
• Device driver
– Software containing instructions the kernel of the OS uses to
control and interact with a specific type of computer hardware
• User interface
– What the user sees and uses to interact with OS and application
programs
• Graphical user interface (GUI)
– Component of an operating system that provides a user-friendly
interface comprising graphics or icons to represent desired
tasks
Operating System
Figure 1-2: A Linux graphical user interface
• System
services
– Applications
that handle
systemrelated tasks
such as
printing,
scheduling
programs,
and network
access
The Linux Operating System
• Linux
– Operating system used today to run a variety of
applications on a variety of different hardware
– Has the ability to manage thousands of tasks at
the same time, including allowing multiple users
to access the system simultaneously
• Hence we refer to Linux as a multiuser and
multitasking OS
Versions of the Linux Operating
System
• The core component of the Linux OS is called
the Linux kernel
• The Linux kernel and supporting function
libraries are written almost entirely in the C
programming language
• Though a variety of different software can be
used to modify the appearance of Linux, the
underlying kernel is common to all Linux
Identifying Kernel Versions
• Linux kernel versions are comprised of:
– Major number
– Minor number
• If odd, referred to as a developmental kernel
• If even, referred to as a production kernel
– Revision number
Identifying Kernel Versions
Table 1-1: Latest revisions of common Linux kernels
Licensing Linux
• Open Source Software (OSS)
– Programs distributed and licensed so that the
source code making up the program is freely
available to anyone who wants to examine, utilize
or improve upon it
– The format and structure of source code follows
certain rules defined by the programming
language
Licensing Linux
• Some implications of OSS are:
– Software is developed very rapidly through
widespread collaboration
– Software bugs are promptly noted and fixed
– Software features evolve very quickly based on
users’ needs
– The perceived value of the software increases, as
it is based on usefulness and not price
Licensing Linux
Table 1-2: Software types
Types of Open Source Licenses
• GNU Public License (GPL)
– Ensures that source code for any OSS will remain freely
available to anyone
• Free Software Foundation (FSF)
– Promotes and encourages the collaboration of software
developers worldwide
• Artistic license
– Open Source license that allows source code to be
distributed freely, but changed only at discretion of
original author
Types of Closed Source Licenses
• Freeware
– Distributed free of charge
– Source code is not available
• Shareware
– Initially free but require payment after a period of
time or usage
Linux Advantages: Risk Reduction
• Companies invest in software to perform many
mission-critical tasks
• Changes in the market and customer needs may
cause companies to change software frequently
• This can be very costly and time consuming
• An OSS product offers a company the opportunity to
maintain and change the source code
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 Advantages:
Stability and Security
• Customers using closed source operating systems
must rely on the operating system vendor to fix any
bugs
• Waiting for a hot fix may take weeks or months
• Bugs in OSS programs can be identified and fixed
very quickly
• As Linux source code is freely available and
scrutinized, security loopholes are also quickly
identified and fixed
Linux Advantages: Flexibility for
Different Hardware Platforms
• Partial list of hardware platforms on which
Linux can run:
–
–
–
–
–
–
Intel
Itanium
Mainframe (S/390)
Cirrus Logic ARM
DEC Alpha
MIPS
Linux Advantages: Flexibility for
Different Hardware Platforms
• Partial list of hardware platforms on which
Linux can run (cont.):
–
–
–
–
–
M68K
PA-RISC
SPARC
Ultra-SPARC
PowerPC (Macintosh)
Linux Advantages:
Ease of Customization
• The ability to control the inner workings of an
operating system is another attractive feature
of Linux
• For example, if you desire to use Linux as an
Internet Web server, simply compile the
Linux kernel to include only the support
needed to be an Internet Web server
– This will result in a much smaller and faster
kernel
Linux Advantages: Ease of
Obtaining Support
• The Internet offers a world of Linux
documentation
– Frequently Asked Questions (FAQs)
– HOWTO documents
• Linux User Group (LUG)
– Open forum of Linux users who discuss and assist
each other in using and modifying the Linux OS
Linux Advantages: Cost Reduction
Table 1-3: Calculating the Total Cost of Ownership (TCO)
The History of Linux
Figure 1-4: Timeline of UNIX and Linux development
UNIX
• Multiplexed Information and Computing
Service (MULTICS)
– Prototype time-sharing OS developed in the late
1960s
• UNIX
– The first true multitasking, multiuser OS
– OS from which Linux originated
UNIX
• BSD (Berkeley Software Distribution)
– Version of the original UNIX source code
• Given away free by AT&T to the University
of California at Berkeley
• Common flavors of UNIX today include:
– Sun Microsystems’s Solaris
– Hewlett-Packard’s HP-UX
– IBM’s AIX UNIX
The Hacker Culture
• Hacker
– Refers to someone with the intent of expanding their
knowledge of computing through experimentation
• Cracker
– Specifies someone who illegally uses computers for
personal benefit or to cause damage
• GNU Project
– Free operating system project started by Richard
Stallman
Linux
• Finnish student Linus Torvalds first developed
Linux in 1991 when he was experimenting with
improving MINIX for the Intel x86 platform
• During the early and mid 1990s, Linux development
was radical
• Also during this time, several distributions of
Linux appeared, including:
– Red Hat
– Caldera
– SuSE
Linux Distributions
• Linux distribution that ship with many
specialized tools may not contain a GUI
– An example of this would be a Linux distribution
that fits on a floppy and can be used as a router
• Most distribution do ship with a GUI that can
be further customized to suit needs of the user
– The core component of the GUI in Linux is
referred to as X Windows
Linux Distributions
• X Windows in combination with a window
manager and desktop environment is referred to
as a GUI environment
• There are two competing GUI environments in
Linux:
– GNU Object Model Environment (GNOME)
– Kommon Desktop Environment (KDE)
Linux Distributions
Figure 1-5:
The GNOME
Desktop
Linux Distributions
Figure 1-6:
The KDE
Desktop
Linux Distributions
• Package manager
– Software used to install, maintain, and remove
other software programs by storing all relevant
information in a central software database on the
computer
• Tarball
– Compressed archive of files that contain scripts
that install Linux software to the correct locations
on the computer system
Linux Distributions
Table 1-4: Common Linux distributions
Linux Distributions
Table 1-4 (continued): Common Linux distributions
Linux Distributions
Table 1-4 (continued): Common Linux distributions
Common Uses of Linux
• Linux services may be used on the local
computer workstation or they may be
configured to allow other computers to connect
to it across a network
• Services used on a local computer are referred to
as workstation services
• Services made available for other computers
across a network are known as server services
Internet Servers: Mail Services
• Mail transfer agents (MTAs)
– An e-mail server
• 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
Internet Servers:
Routing and FTP Services
• Routing
– Core service that is 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
Internet Servers:
Firewalls and Proxy Services
• Firewalls protect companies from outside
intruders on the Internet
• Linux has firewall support directly built into
the kernel
• A proxy service requests Internet resources
such as Web sites and FTP sites on behalf of
the computer inside the company
Internet Servers:
Web Services and New Services
• Web services
– Many Internet tools and services are available, the most
popular is the Internet browser
• New services
– Web servers host valuable information but most do not
provide any means for users to communicate with each
other
– This functionality is provided by a news server, which
allows users to post messages in forums called
newsgroups
Internet Servers: DNS Services
• Computers communicating on a network need
to be uniquely identified
– This is accomplished by assigning each computer
a number called an Internet Protocol (IP)
address
– An IP addresses is a long string of numbers
– IP addresses are masked by strings of userfriendly names, referred to as a Fully Qualified
Domain Name (FQDN)
File and Print Servers
• Networks were created to share resources,
primarily printers and information
• Linux is well-suited to the task of centrally
sharing resources
– It is inherently a fast, light operating system, and
a distribution specific to a certain task can be
installed on the central server
Application Servers
• Application server
– Server running a program that acts as an
intermediary between a client computer and
information, normally stored in a database
• Database Management Systems (DBMS)
– Collection of programs and tools designed to
allow for the creation, modification,
manipulation, maintenance, and access of
information from databases
Supercomputers
• Cluster
– Several smaller computers acting as one large
supercomputer
• Clustering
– Act of making a cluster
– Most common Linux method of clustering is known as
Beowulf clustering
• Scalability
– Ability of computers to increase workload as the number
of processors increases
Scientific/Engineering
Workstations
• There are many OSS programs available in many
different scientific and engineering fields, including:
–
–
–
–
–
–
–
Physics, astrophysics, and biophysics
Fluid dynamics and geophysics
Biocomputation
Materials and polymer chemistry
General mathematics and optimization
Data mining
Number theory
Scientific/Engineering
Workstations
• There are many OSS programs available in many
different scientific and engineering fields,
including (cont.):
–
–
–
–
–
–
Computer/linear/array algebra
Mathematical visualization and modeling
Statistics and regression analysis
Data plotting and processing
Computer graphics generation
Computer modeling
Scientific/Engineering
Workstations
• There are many OSS programs available in many
different scientific and engineering fields,
including (cont.):
–
–
–
–
–
–
Paleontology
Molecular modeling
Electrical engineering
Artificial intelligence
Geographic modeling and earth sciences
Oceanography
Office Workstations:
Text Editors and Word Processors
• Text editor
– Program that can create and edit text files
• Word processors
– Allow the creation and manipulation of text files
– Typically GUI-based
Office Workstations: Graphics Editing
and Desktop Publishing Software
• Graphics editing software
– Includes applications designed to create and
manipulate graphical images
• Desktop publishing software
– Combines text and graphics editing software
together and adds features that allow one to
control format and layout
Office Workstations: Financial Software
and Office Productivity Suites
• Financial software
– Describes a family of applications designed to:
• Track financial transactions
• Perform bookkeeping and accounting procedures
• Office productivity suites
– Collection of applications offered in combination
to meet a variety of needs seen in business or the
home
Chapter Summary
• Linux is an operating system (OS) whose kernel
and many additional software packages are
freely developed and improved upon by a large
community of software developers in
collaboration
• Since Linux is published under GNU Public
License, it is referred to as Open source Software
• Companies find Linux a stable, low-risk, and
flexible alternative to other operating systems
Chapter Summary
• Linux is available in different distributions
• There exists a wide variety of documentations
and resources for Linux in the form of
Internet Web sites, HOWTOs, FAQs,
newsgroups, and LUGs
• Linux is an extremely versatile OS that can
provide a wide range of workstations and
server services to meet computing needs of
companies and individuals