HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
Master All the Techniques You Need to Succeed with Fedora and Red Hat Enterprise Linux in the Workplace
You’re studying Fedora and Red Hat Enterprise Linux with a single goal: to succeed with these state-of-the-art operating systems in real workplace environments. In this book, one of the world’s leading Linux experts brings together all the knowledge you’ll need to achieve that goal. Writing in plain English, best-selling author Mark Sobell explains Linux clearly and effectively, focusing on the skills you will actually use as a professional administrator, user, or programmer. Sobell assumes no prior Linux knowledge: He starts at the very beginning and walks you through every topic and skill that matters.
Step by step, you’ll learn how to install and configure Linux from the accompanying DVD, navigate its graphical user interfaces, set up Linux to provide file/print sharing and Internet services, make sure Linux desktops and networks are as secure as possible, work with the powerful command line, and administer Linux in real business environments.
Mark Sobell has taught hundreds of thousands of Linux and UNIX professionals. He knows every Linux nook and cranny–and he never forgets what it’s like to be new to Linux. Whatever your Linux-related career goals, this book gives you all you need–and more.
Compared with the other Linux books out there, A Practical Guide to Fedora™ and Red Hat® Enterprise Linux®, College Edition, delivers
Includes DVD! Get the full version of the Fedora 8 release!
Preface xxxi
Chapter 1: Welcome to Linux 1
The GNU—Linux Connection 2
The Linux 2.6 Kernel 5
The Heritage of Linux: UNIX 5
What Is So Good About Linux? 6
Overview of Linux 10
Additional Features of Linux 14
Conventions Used in This Book 16
Chapter Summary 19
Exercises 19
Part I: Installing Fedora and Red Hat Enterprise Linux 21
Chapter 2: Installation Overview 23
The Desktop Live Media CD and the Install Media DVD 24
Planning the Installation 24
The Installation Process 36
The Medium: Where Is the Source Data? 36
Downloading a CD/DVD (FEDORA) 37
Checking and Burning the CD/DVD 41
Rescue CD 42
Gathering Information About the System 43
Finding the Installation Manual 44
More Information 44
Chapter Summary 45
Exercises 46
Advanced Exercises 46
Chapter 3: Step-by-Step Installation 47
Running a Fedora Live Session 48
Installing Fedora/RHEL Linux 50
Installation Tasks 63
The X Window System 80
Chapter Summary 88
Exercises 89
Advanced Exercises 89
Part II: Getting Started with Fedora and Red Hat Enterprise Linux 91
Chapter 4: Introduction to Fedora and Red Hat Enterprise Linux 93
Curbing Your Power: Superuser/root Access 94
A Tour of the Fedora/RHEL Desktop 94
Getting the Facts: Where to Find Documentation 114
More About Logging In 123
Controlling Windows: Advanced Operations 131
Chapter Summary 134
Exercises 135
Advanced Exercises 136
Chapter 5: The Linux Utilities 137
Special Characters 138
Basic Utilities 139
Working with Files 141
| (Pipe): Communicates Between Processes 148
Four More Utilities 149
Compressing and Archiving Files 151
Locating Commands 156
Obtaining User and System Information 158
Communicating with Other Users 162
Email 164
Tutorial: Creating and Editing a File with vim 164
Chapter Summary 171
Exercises 174
Advanced Exercises 175
Chapter 6: The Linux Filesystem 177
The Hierarchical Filesystem 178
Directory Files and Ordinary Files 178
Pathnames 183
Directory Commands 185
Working with Directories 190
Access Permissions 192
ACLs: Access Control Lists 197
Links 202
Chapter Summary 208
Exercises 210
Advanced Exercises 212
Chapter 7: The Shell 213
The Command Line 214
Standard Input and Standard Output 220
Running a Program in the Background 231
Filename Generation/Pathname Expansion 233
Builtins 237
Chapter Summary 238
Exercises 239
Advanced Exercises 241
Part III: Digging into Fedora and Red Hat Enterprise Linux 243
Chapter 8: Linux GUIs: X, GNOME, and KDE 245
X Window System 246
Using GNOME 255
Using KDE 266
Chapter Summary 276
Exercises 277
Advanced Exercises 277
Chapter 9: The Bourne Again Shell 279
Background 280
Shell Basics 281
Parameters and Variables 299
Special Characters 313
Processes 314
History 316
Aliases 332
Functions 335
Controlling bash Features and Options 338
Processing the Command Line 342
Chapter Summary 351
Exercises 353
Advanced Exercises 355
Chapter 10: Networking and the Internet 357
Types of Networks and How They Work 359
Communicate Over a Network 374
Network Utilities 376
Distributed Computing 383
Usenet 392
WWW: World Wide Web 395
Chapter Summary 397
Exercises 398
Advanced Exercises 399
Part IV: System Administration 401
Chapter 11: System Administration: Core Concepts 403
System Administrator and Superuser 405
Rescue Mode 411
SELinux 414
System Operation 417
System Administration Utilities 429
Setting Up a Server 435
nsswitch.conf: Which Service to Look at First 449
PAM 452
Chapter Summary 457
Exercises 458
Advanced Exercises 459
Chapter 12: Files, Directories, and Filesystems 461
Important Files and Directories 462
File Types 473
Filesystems 478
Chapter Summary 487
Exercises 488
Advanced Exercises 488
Chapter 13: Downloading and Installing Software 489
yum: Keeps the System Up-to-Date 490
pirut: Adds and Removes Software Packages 497
BitTorrent 498
rpm: Red Hat Package Manager 501
Installing Non-rpm Software 504
Keeping Software Up-to-Date 506
wget: Downloads Files Noninteractively 508
Chapter Summary 509
Exercises 509
Advanced Exercises 509
Chapter 14: Printing with CUPS 511
Introduction 512
JumpStart I: Configuring a Local Printer 513
system-config-printer: Configuring a Printer 514
JumpStart II: Configuring a Remote Printer Using the CUPS Web Interface 518
Traditional UNIX Printing 523
Configuring Printers 524
The KDE Printing Manager 531
Printing from Windows 532
Printing to Windows 534
Chapter Summary 534
Exercises 535
Advanced Exercises 535
Chapter 15: Rebuilding the Linux Kernel 537
Preparing the Source Code 538
Read the Documentation 540
Configuring and Compiling the Linux Kernel 541
Installing the Kernel and Associated Files 544
Rebooting 544
Boot Loader 545
dmesg: Displays Kernel Messages 547
Chapter Summary 547
Exercises 548
Advanced Exercises 548
Chapter 16: Administration Tasks 549
Configuring User and Group Accounts 550
Backing Up Files 552
Scheduling Tasks 559
System Reports 560
Keeping Users Informed 563
Creating Problems 564
Solving Problems 565
Chapter Summary 576
Exercises 576
Advanced Exercises 577
Chapter 17: Configuring a LAN 579
Setting Up the Hardware 580
Configuring the Systems 582
Setting Up Servers 586
More Information 587
Chapter Summary 587
Exercises 588
Advanced Exercises 588
Part V: Using Clients and Setting Up Servers 589
Chapter 18: OpenSSH: Secure Network Communication 591
Introduction 592
About OpenSSH 592
OpenSSH Clients 595
sshd: OpenSSH Server 603
Troubleshooting 607
Tunneling/Port Forwarding 608
Chapter Summary 610
Exercises 610
Advanced Exercises 611
Chapter 19: FTP: Transferring Files Across a Network 613
Introduction 614
More Information 615
FTP Client 615
FTP Server (vsftpd) 624
Chapter Summary 636
Exercises 637
Advanced Exercises 637
Chapter 20: sendmail: Setting Up Mail Clients, Servers, and More 639
Introduction 640
JumpStart I: Configuring sendmail on a Client 642
JumpStart II: Configuring sendmail on a Server 643
How sendmail Works 644
Configuring sendmail 647
Additional Email Tools 652
Authenticated Relaying 662
Alternatives to sendmail 664
Chapter Summary 664
Exercises 665
Advanced Exercises 665
Chapter 21: NIS and LDAP 667
Introduction to NIS 668
How NIS Works 668
Setting Up an NIS Client 671
Setting Up an NIS Server 675
LDAP 682
Setting Up an LDAP Server 685
Chapter Summary 693
Exercises 694
Advanced Exercises 694
Chapter 22: NFS: Sharing Filesystems 697
Introduction 698
More Information 700
Setting Up an NFS Client 700
Setting Up an NFS Server 706
automount: Automatically Mounts Directory Hierarchies 714
Chapter Summary 716
Exercises 716
Advanced Exercises 717
Chapter 23: Samba: Integrating Linux and Windows 719
Introduction 720
About Samba 721
JumpStart: Configuring a Samba Server Using system-config-samba 723
swat: Configures a Samba Server 725
Manually Configuring a Samba Server 729
Accessing Linux Shares from Windows 735
Accessing Windows Shares from Linux 736
Troubleshooting 738
Chapter Summary 740
Exercises 741
Advanced Exercises 741
Chapter 24: DNS/BIND: Tracking Domain Names and Addresses 743
Introduction to DNS 744
About DNS 755
JumpStart I: Setting Up a DNS Cache 757
JumpStart II: Setting Up a Domain Using system-config-bind 759
Setting Up BIND 763
Troubleshooting 775
A Full-Functioned Nameserver 777
A Slave Server 780
A Split Horizon Server 781
Chapter Summary 786
Exercises 786
Advanced Exercises 787
Chapter 25: iptables: Setting Up a Firewall 789
How iptables Works 790
About iptables 792
JumpStart: Building a Firewall Using system-config-firewall 794
Anatomy of an iptables Command 795
Building a Set of Rules 796
system-config-firewall: Generates a Set of Rules 803
Sharing an Internet Connection Using NAT 805
Chapter Summary 809
Exercises 809
Advanced Exercises 809
Chapter 26: Apache (httpd): Setting Up a Web Server 811
Introduction 812
About Apache 812
JumpStart I: Getting Apache Up and Running 814
JumpStart II: Setting Up Apache Using system-config-httpd 816
Filesystem Layout 818
Configuration Directives 820
The Fedora/RHEL httpd.conf File 840
Redirects 843
Multiviews 844
Server-Generated Directory Listings (Indexing) 844
Virtual Hosts 844
Troubleshooting 845
Modules 846
webalizer: Analyzes Web Traffic 851
MRTG: Monitors Traffic Loads 852
Error Codes 852
Chapter Summary 853
Exercises 854
Advanced Exercises 854
Part VI: Programming 855
Chapter 27: Programming Tools 857
Programming in C 858
Using Shared Libraries 866
make: Keeps a Set of Programs Current 868
Debugging C Programs 876
Threads 886
System Calls 887
Source Code Management 889
Chapter Summary 899
Exercises 900
Advanced Exercises 901
Chapter 28: Programming the Bourne Again Shell 903
Control Structures 904
File Descriptors 937
Parameters and Variables 940
Builtin Commands 952
Expressions 966
Shell Programs 974
Chapter Summary 984
Exercises 986
Advanced Exercises 988
Part VII: Appendixes 991
Appendix A: Regular Expressions 993
Characters 994
Delimiters 994
Simple Strings 994
Special Characters 994
Rules 997
Bracketing Expressions 998
The Replacement String 998
Extended Regular Expressions 999
Appendix Summary 1001
Appendix B: Help 1003
Solving a Problem 1004
Finding Linux-Related Information 1005
Specifying a Terminal 1010
Appendix C: Security 1013
Encryption 1014
File Security 1019
Email Security 1019
Network Security 1020
Host Security 1023
Security Resources 1028
Appendix Summary 1031
Appendix D: The Free Software Definition 1033
Appendix E: The Linux 2.6 Kernel 1037
Native Posix Thread Library (NPTL) 1038
IPSecurity (IPSec) 1038
Asynchronous I/O (AIO) 1038
O(1) Scheduler 1039
OProfile 1039
kksymoops 1039
Reverse Map Virtual Memory (rmap VM) 1039
HugeTLBFS: Translation Look-Aside Buffer Filesystem 1040
remap_file_pages 1040
2.6 Network Stack Features (IGMPv3, IPv6, and Others) 1040
Internet Protocol Virtual Server (IPVS) 1040
Access Control Lists (ACLs) 1041
4GB-4GB Memory Split: Physical Address Extension (PAE) 1041
Scheduler Support for HyperThreaded CPUs 1041
Block I/O (BIO) Block Layer 1041
Support for Filesystems Larger Than 2 Terabytes 1042
New I/O Elevators 1042
Interactive Scheduler Response Tuning 1042
Glossary 1043
Index 1091