* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download 9781418837211_PPT_ch01
Survey
Document related concepts
Transcript
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 2 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 3 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 4 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 5 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 6 Operating Systems (continued) Figure 1-1: The role of operating system software Linux+ Guide to Linux Certification, 3e 7 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 8 Operating Systems (continued) Figure 1-2: A Linux graphical user interface Linux+ Guide to Linux Certification, 3e 9 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 10 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 11 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 12 Table 1-1: Latest revisions of common Linux kernels Linux+ Guide to Linux Certification, 3e 13 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 14 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 15 Licensing Linux (continued) Table 1-2: Software types Linux+ Guide to Linux Certification, 3e 16 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 17 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 18 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 19 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 20 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 21 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 22 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 23 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 24 Linux Advantages: Cost Reduction Table 1-3: Calculating the total cost of ownership Linux+ Guide to Linux Certification, 3e 25 The History of Linux Figure 1-4: Timeline of UNIX and Linux development Linux+ Guide to Linux Certification, 3e 26 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 27 UNIX (continued) • Berkeley Software Distribution (BSD) – Version of the original UNIX source code • Common flavors of UNIX today include: – Sun Microsystems’s Solaris UNIX – Hewlett-Packard’s HP-UX – IBM’s AIX UNIX Linux+ Guide to Linux Certification, 3e 28 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 29 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 30 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 31 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 32 Linux Distributions (continued) Figure 1-5: The GNOME Desktop Linux+ Guide to Linux Certification, 3e 33 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 34 Linux Distributions (continued) Table 1-4: Common Linux distributions Linux+ Guide to Linux Certification, 3e 35 Linux Distributions (continued) Table 1-4 (continued): Common Linux distributions Linux+ Guide to Linux Certification, 3e 36 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 37 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 38 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 39 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 40 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 41 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 42 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 43 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 44 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 45 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 46 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 47 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 48 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 49