- •About the Author
- •Credits
- •How This Book Is Organized
- •Part I: Linux Basics
- •Part II: Installation
- •Part III: Configuration
- •Part IV: Administration
- •Part V: Maintaining the Linux System
- •How Each Chapter Is Structured
- •How to Use This Book
- •Conventions Used in This Book
- •What is Linux?
- •The origin of UNIX
- •Who started Linux?
- •Understanding Open Source
- •Understanding Closed Source
- •Understanding Artistic License
- •Is Freeware really free?
- •Is Shareware never free?
- •A comparison and contrast of licensing methods
- •The Growth of Linux
- •Linux on a Personal Computer
- •Graphical installation
- •Hardware detection
- •Graphical user interface
- •Linux limitations on the PC
- •Linux succeeds on the PC
- •Linux on workstations
- •Linux on servers
- •Summary
- •Assessment Questions
- •Scenarios
- •Answers to Chapter Questions
- •Assessment Questions
- •Scenarios
- •Linux Kernel
- •Kernel versions
- •Kernel availability
- •Linux Distributions
- •Beehive
- •BlueCat
- •Caldera OpenLinux
- •Debian
- •Corel
- •DragonLinux
- •Elfstone
- •Gentoo
- •Hard Hat Linux
- •KRUD
- •LinuxPPC
- •Mandrake
- •Phat Linux
- •Slackware
- •StormLinux
- •SuSE
- •TurboLinux
- •Yellow Dog Linux
- •Mini and Specialty Distributions
- •Astaro
- •KYZO
- •FlightLinux
- •NetMAX
- •Packages and Packaging Solutions
- •Red Hat Package Manager
- •Debian Package Management System
- •Tarball
- •Linux Resources
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Assessment Questions
- •Scenarios
- •Linux In the Real World
- •Word Processing
- •Spreadsheets and databases
- •Web browsing
- •File transfer
- •More, more, and more applications
- •The Server and DNS
- •A Linux Web server
- •Linux e-mail server
- •File servers
- •Proxy, news, and search servers
- •FTP servers
- •Firewalls
- •Determining Linux Roles and Services
- •Comparing Linux with other operating systems
- •Hardware compatibility
- •Summary
- •Assessment Questions
- •Scenarios
- •Answers to Chapter Questions
- •Assessment Questions
- •Scenarios
- •Installing Linux
- •Final Preparations for Installation
- •Verification
- •Package selection
- •Final hardware verification
- •Pre-installation partitioning planning
- •Installing Linux
- •Text or GUI installation
- •Basic setup of Linux
- •Selecting the machine type
- •Partitioning the hard disk drive
- •Installing a boot manager
- •Creating the Boot Diskette
- •Networking
- •Additional installation information
- •Accounts and passwords
- •Additional packages to install
- •GUI installation
- •Obtaining video card information
- •Configuring the X windows system
- •Selecting the windows manager or desktop environment
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Answers to Assessment Questions
- •Scenarios
- •Alternative to the GUI Installation
- •Command Line installation
- •Install the Linux system
- •Network installations of Linux
- •Review of a Linux Installation
- •Installation media
- •Initial selections
- •Installation type or class
- •Disk partitioning and formatting
- •Installing LILO
- •Network configuration
- •User accounts
- •Authentication methods
- •Package selection and installation
- •A Dual-Boot Installation of Linux
- •Linux with Microsoft Windows
- •Linux with Microsoft Windows NT and 2000
- •Linux and Solaris
- •Linux and other operating systems
- •Installing Additional Software with gzip and tar
- •Installing Additional Software with RPM
- •Removing software with RPM
- •Upgrading software with RPM
- •Query the RPM software
- •Verify the RPM software
- •Verify the package files
- •Upgrading the Kernel
- •Upgrading a Linux Kernel
- •System Log Files
- •The Final Test of the Installation
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •What is the X Window System?
- •The X Window System
- •X Client and Server communications
- •X Window Manager
- •Configuring X Window Systems
- •Custom X Window System Programs
- •Manual Configuration of the X Window System
- •Documentation
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Basic Network Services
- •TCP/IP Protocol Suite
- •Connection protocols needed
- •Other network protocols
- •Configuring Basic Network Services
- •Host name
- •IP addressing
- •DHCP
- •Netmask
- •Hardware resources
- •Routing and gateways
- •PPP, SLIP and PLIP connections
- •Server Tasks with
- •IP aliases for virtual hosts
- •Apache Web Server
- •Samba File Server
- •Home directories
- •Disk shares
- •Configuring Client Services
- •SMB/CIFS
- •NIS client configuration
- •NFS client configuration
- •Configuring Internet Services
- •Web browser
- •POP and SMTP
- •TFTP
- •SNMP
- •Remote Access
- •Rlogin
- •Telnet
- •OpenSSH
- •Documentation
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Adding Hardware
- •Memory
- •Swap
- •Adding a hard drive
- •Video and monitor
- •Printers
- •Configuration files
- •Setting environment variables
- •BASH
- •Documentation
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Basic User and Group Administration
- •What are users and groups?
- •Creating users
- •Change user information
- •Deleting users
- •Creating groups
- •Getting Around Linux
- •Navigating Linux
- •Common file and directory commands
- •Setting File and Directory Permissions
- •Mounting and Managing File Systems
- •Mount
- •Umount
- •Mounted file systems
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Multi-User Environment
- •The creation of Virtual Consoles
- •The Linux Terminal Server Project
- •Configurations for remote systems
- •Monitoring remote connections
- •Common Shell Commands
- •Basic shell scripts
- •Caution using root access
- •Navigating the GUI interface
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Linux Runlevels
- •init
- •Shutting down Linux
- •Managing Linux Services
- •Configuring Linux Printing
- •lpd daemon
- •/etc/printcap
- •Printing management
- •Using the vi Editor
- •vi operation modes
- •Editing text files
- •Using the
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Disk and File System Management
- •Repairing Partitions
- •System Automation and Scheduling
- •cron
- •Core Dumps
- •Analyzing core dumps
- •GNU Debugger
- •Managing Networking Interfaces
- •Installing System Packages and Patches
- •Compressed archive
- •Debian Package Installer
- •Slackware Package Installation
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Linux Processes
- •Core services versus non-critical services
- •Process administration
- •Process control
- •Monitoring Log Files
- •Maintaining Documentation
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Linux Security
- •Securing the Environment
- •Location
- •Environment
- •System Security
- •System/user files
- •Permissions
- •Log auditing
- •Backups
- •Linux Security Best Practices
- •Network security
- •Firewall
- •System security
- •Securing a Web server
- •Securing an FTP server
- •FTP program version
- •FTP configuration files
- •Process security
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Disaster Recovery Planning
- •Types of data
- •Frequency and Scheduling
- •Storage and media types
- •Recovering data
- •Offsite storage
- •Linux Backup Tools and Commands
- •Third party tools
- •Tape devices
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Identifying the Problem
- •Methodology and Best Practices
- •Troubleshooting Resources
- •Documentation resources
- •Internet resources
- •System Log Files
- •Tools for Log Files
- •Output to another file
- •Locating files
- •Process Configuration and Management
- •Stopping, Starting, and Restarting Processes
- •Configuration Files
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Examining the Startup Process
- •Boot process steps
- •Analyzing Boot Process Errors
- •Common Boot Problems
- •Using System Status Tools
- •File System Check
- •System Resource Commands
- •Using the System Boot Disk
- •Types of boot disks
- •Creating a boot disk
- •Creating a rescue/utility disk
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Common User Problems
- •Login problems
- •File and directory permissions
- •Printing problems
- •Mail problems
- •Software Package Problems
- •Package dependencies
- •Software and version conflicts
- •Backup and Restore Errors
- •Backup hardware
- •Backup software
- •File restore errors
- •Application Failures
- •Log files
- •Process and daemon errors
- •Web server errors
- •Telnet
- •Mail services
- •Basic Networking Troubleshooting
- •Networking connectivity
- •Network hardware problems
- •Summary
- •Assessment Questions
- •Scenarios
- •Lab Exercises
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •Mainboard Components
- •BIOS
- •System memory
- •System Resources
- •I/O addresses
- •Direct memory access
- •Laptop Considerations
- •PCMCIA
- •Linux Peripheral Configuration
- •Installing and Configuring SCSI Devices
- •SCSI definitions
- •SCSI technologies
- •SCSI cabling and termination
- •SCSI device configuration
- •Linux SCSI devices
- •ATA/IDE Devices
- •IDE drive configuration
- •Linux ATA/IDE Drive configuration
- •Linux Support for Other Devices
- •IEEE 1394 (Firewire)
- •Summary
- •Assessment Questions
- •Scenarios
- •Answers to Chapter Questions
- •Chapter Pre-test
- •Assessment Questions
- •Scenarios
- •What’s on the CD-ROM
- •System Requirements
- •Using the CD with Microsoft Windows
- •Using the CD with Linux
- •Microsoft Windows applications
- •Linux applications
- •Troubleshooting
- •Sample Exam
- •Exam Questions
- •Exam Answers
- •Taking a CompTIA Exam
- •How to register for an exam
- •What to expect at the testing center
- •Your exam results
- •If you don’t receive a passing score
- •About the Linux + Exam
- •Preparing for the Linux+ Exam
- •For More Information
- •Preamble
- •No Warranty
- •Glossary
- •Index
Chapter 2 Linux Kernel and Distributions |
35 |
KRUD
Kevin Fenzi is the co-author of The Linux Security HOWTO and creator of Kevin’s Red Hat Über Distribution (KRUD). KRUD is based on Red Hat 7.0, which includes the most up-to-date security and application errata. This distribution was created to make it easy for users to keep up on all the latest errata and package updates every month, and to make a Linux system more secure after the initial install. KRUD uses several specialized tools to determine the necessary updates, and then updates all packages on a system, including the dependencies. Because the KRUD distribution is based on Red Hat Linux, it has all the features of Red Hat Linux, plus the added benefit of the latest security and application errata from Kevin Fenzi. This distribution is available as a monthly subscription and is beneficial to users who want to keep their systems very up-to-date. The drawback of KRUD may be the fact that users must rely on someone else to provide security for their systems. This can be a false sense of security, because every system has a different level of risk that should be assessed on an individual basis. Furthermore, even though you may have the latest package updates, you are not ensured the proper configuration of the package for your individual machine. KRUD has various purchasing options and is available yearly for $65 from www.tummy.com/krud/.
LinuxPPC
LinuxPPC is a distribution dedicated to the PowerPC platform. LinuxPPC supports the Gnome desktop, and provides support for USB. This distribution also provides the PowerPC chip the ability to run Linux and introduce Mac users to Linux.
Although it is dedicated to supporting the PowerPC platform, this distribution is not the only one that supports PowerPC, and more recognized distributions are supporting this platform. Because of this support by other Linux vendors, LinuxPPC is often less desirable to the end user. The LinuxPPC distribution also lacks some of the better support of its commercial competitors. LinuxPPC is available at http://linuxppc.org/.
Mandrake
Mandrake is a distribution that is based on the Red Hat distribution. Many users believe that Mandrake Linux is actually just Red Hat with some enhancements, but it has evolved well beyond that. Mandrake includes several enhancements to the Linux configuration, such as DrakX, a graphical installer, and Mandrake Control Center, which is used to easily perform most system tasks. These tools make it much easier to configure hardware and software for Linux. This is an important innovation because it helps Linux to move to the non-technical user’s desktop. Mandrake also includes an extensive collection of windows managers and the latest KDE, Gnome, and kernel. Mandrake Linux strives to be easy to configure out of the box and to make more difficult tasks, such as 3-D acceleration, easier on the user. These enhancements to the Mandrake Linux distributions have influenced many
36 Part I Linux Basics
other Linux distributions to be more user-friendly. The Mandrake Linux Internet site at www.linux-mandrake.com provides excellent support with online documentation, user groups, and e-mail support. The disadvantages of Mandrake Linux are that it is limited to the x86 platform and support is not as good as some other commercial distributions.
Phat Linux
Phat Linux is a distribution that has been specially made to run on a Windows computer without the need of partitioning a hard drive to support a separate Linux partition. It includes a very easy, Windows-based installation program, and can be installed on computers running Windows 95 and 98. Phat Linux comes bundled with most of the typical Linux applications and services such as X windows, Gnome, KDE, Apache web server, FTP server, and other popular utilities. The disadvantages of Phat Linux, is that it has to be run from DOS mode on the Windows computer. Phat Linux is geared towards new Linux users who would like to try out Linux, without having to rearrange their hard drive to accommodate it.
Red Hat
Red Hat is one of the most popular Linux distributions currently available. Red Hat is the creator of the RPM (Red Hat Package Manager) system that is now available for use in most distributions of Linux. Red Hat supports the latest kernels and adds a number to the kernel version number to indicate the patch that has been applied; for example, the number 2.2.18-10 indicates that the Red Hat patch 10 has been applied to the kernel.
Red Hat has formed alliances with many companies, including IBM, Sun Microsystems, Oracle, in order to create and maintain software support.
Red Hat has an ever-expanding distributions base that includes support for Alpha, ARM, Intel, m68k, SGI, and Sparc hardware platforms. All of these distributions are available from several FTP sites and from Red Hat’s own FTP server. The Red Hat distribution also supports an extensive online set of documentation, including FAQs, a Getting Started Guide, HOW-TO, Installation Guide, Red Hat’s Hardware Compatibility List, and Tips for Linux, which are all freely available under the GNU GPL.
Red Hat’s business model is to sell superior support. Although Linux is free and the Red Hat distribution is also free, many users purchase support packages from Red Hat. The support ranges from installation and configuration to Enterprise support for e-commerce and database operations. Red Hat has also created a widely accepted (yet difficult) certification of The Red Hat Certified Engineer. All of these features have led Red Hat to become one of the most popular distributions. Red Hat is available at www.redhat.com/.
Chapter 2 Linux Kernel and Distributions |
37 |
Slackware
Slackware, which was created by Patrick Volkerding, is considered to be an expert distribution of Linux. Since its first release in April of 1993, Slackware has strived to remain as UNIX-compliant as possible. Therefore, it is sometimes considered to be more difficult to use than other Linux distributions. Slackware supports the Alpha, Intel, and Sparc platforms and includes most of the same desktops and software packages as other Linux distributions. Because it is UNIX-compliant, Slackware is an excellent distribution for a user who prefers a standard Unix environment. Slackware is much more user-friendly than its reputation would seem to indicate, but many users remain hesitant to try it. Slackware is available from www. slackware.com/.
StormLinux
StormLinux, by Stormix, has created enhancements and applications for Linux by using the Debian GNU/Linux distribution. One of these enhancements is the Storm Administration System (SAS), which allows you to easily manage tasks, such as network set-up and managing user profiles. The Storm Package Manager allows you to easily manage files by installing, updating, and deleting them in order to provide a clean, updated, and secure system. StormLinux provides many more customized tools to improve upon the Debian distribution. StormLinux is also not as current as other Linux distributions, but is available as StormLinux Open Edition for download from www.stormix.com/.
SuSE
SuSE is distributed by a German company and is very popular in Europe. It is one of the fastest growing distributions worldwide and has been ported to most languages. SuSE’s unique expertise in Linux and its global development team are dedicated to Open Source software and have contributed to the recognition of SuSE as one of the best and most complete Linux distributions. SuSE has made substantial contributions to major Linux projects, including kernel development, XFree86, ALSA (Advanced Linux Sound Architecture), and USB support for Linux, among others. It uses the Yast or Yast2 installer, which provides an easy installation process. The SuSE professional distribution comes with many CDs that include software packages, such as Star Office, WordPerfect, and Koffice, and many commercial products. The SuSE Personal supplies everything that home and small business users would expect in a desktop system. SuSE also supports a wide range of serverspecific distributions, including Database Server with DB2, Groupware Server with Lotus Domino R5, and eMail Server II. SuSE provides excellent support via an extensive online set of documentation, which includes FAQs, support documents, and a Hardware Compatibility List. SuSE Linux does not, however, provide the level of free support that is provided by some of its direct competitors. SuSE supports Alpha, IBM’s eServer iSeries (the successor to AS/400), IBM S/390, Intel, PowerPC, and Sparc, and is available from www.suse.com/.