You are previewing Essential Linux® Administration: A Comprehensive Guide for Beginners.
O'Reilly logo
Essential Linux® Administration: A Comprehensive Guide for Beginners

Book Description

ESSENTIAL LINUX ADMINISTRATION: A COMPREHENSIVE GUIDE FOR BEGINNERS enables the reader to understand and utilize Linux-based networking and server administration better than ever before. Whereas most Linux system guides are either too technical or overly simplified, this easy-to-use book is both comprehensive and functional, covering the entire breadth of Linux administration topics that professionals in the IT industry need to know.

Table of Contents

  1. Copyright
  2. About the Author
  3. Introduction
  4. 1. Introduction to Linux
    1. Introduction
    2. The History of Linux
      1. Starting with UNIX
      2. UNIX Variants
      3. And Linux Is Born
    3. Operating System Essentials
      1. General Operating System Concepts
      2. Interrupts
      3. Device Drivers
      4. Memory Management
      5. Networking Support
      6. File Management
      7. Input/Output
      8. Application Programming Interface
      9. The Linux Kernel
    4. The Boot Process
    5. Graphical User Interface
      1. GNOME
      2. KDE
      3. CDE
      4. Enlightenment
      5. Xfce
      6. Rox Desktop
    6. Distributions
      1. Red Hat
      2. Debian GNU/Linux
      3. Ubuntu
      4. Gentoo
      5. BackTrack
      6. Slackware
    7. Conclusion
    8. End Notes
  5. 2. Installing Linux
    1. Installation Requirements
    2. Starting the Installation
      1. Disk Partitioning
      2. Debian Installation
    3. OpenSUSE
    4. Conclusion
  6. 3. The Linux Filesystem
    1. What Is a Filesystem?
    2. Journaling Filesystems
    3. Current Filesystems
      1. FAT
      2. NTFS
      3. ext
      4. Reiser File System
      5. The Berkeley Fast File System
    4. Linux Files
    5. Specific Linux Directories
      1. /root
      2. /bin
      3. /sbin
      4. /etc
        1. /etc/passwd
        2. /etc/group
        3. /etc/inittab
        4. /etc/motd
        5. /etc/mtab
        6. /etc/shells
      5. /dev
      6. /mnt
      7. /boot
      8. /usr
      9. /var
      10. /proc
    6. Linux Filesystem Commands
      1. fsck
      2. e2fsck
      3. mkfs
      4. mke2fs
      5. badblocks
    7. Conclusion
    8. End Notes
  7. 4. Controlling Processes
    1. Specific Commands
      1. ps
      2. pstree
      3. pgrep
      4. top
      5. kill
      6. killall
      7. pkill
      8. jobs
      9. bg
      10. fg
      11. nice
      12. renice
      13. snice
      14. fork()
    2. From the GUI
      1. GNOME
    3. KDE
    4. Conclusion
    5. End Notes
  8. 5. User and Group Management
    1. From the Shell
      1. useradd
      2. userdel
      3. usermod
      4. users
      5. adduser
      6. groupadd
      7. groupdel
      8. groupmod
      9. groups
      10. newusers
      11. passwd
      12. chage
      13. finger
      14. chfn
      15. chgrp
      16. chown
      17. who
    2. From the GUI
      1. KDE
      2. GNOME
    3. Conclusion
    4. End Notes
  9. 6. System Services
    1. Startup Services
      1. init
    2. General System Services
      1. Sysfs
      2. update (kupdate)
      3. apmd
      4. Keytable
      5. getty
      6. syslog
      7. Kudzu
      8. YaST
      9. Autofs
    3. Task Scheduling
      1. Crond
      2. Scheduling from the GUI
    4. Conclusion
    5. End Notes
  10. 7. Hardware Issues
    1. Specific Hardware
      1. Motherboard/CPU
      2. Hard Drives/RAID
        1. Fdisk
      3. CD/DVD Drives
    2. Hardware Related Tasks
      1. Managing Disk Usage with Quotas
      2. The Backup Process
      3. Logical Volume Management
    3. Conclusion
    4. End Notes
  11. 8. Remote Access
    1. Telnet
    2. FTP and SFTP
    3. SSH and SCP
    4. Remote Desktop
      1. GNOME
      2. KDE
    5. Desktop Sharing
    6. Conclusion
    7. End Notes
  12. 9. TCP/IP
    1. IPv4
    2. Utilities
      1. ifconfig
      2. ping
      3. traceroute
      4. nslookup
      5. net
      6. netstat
      7. dhclient
    3. Subnetting and CIDR
      1. CIDR
    4. Network Settings from the Desktop
    5. IPv6
    6. MAC Addresses
    7. Protocols
      1. Packets and Connections
      2. OSI Model
    8. Conclusion
  13. 10. Network Configuration
    1. Configuring the Network Card
    2. Network Troubleshooting
      1. Testing Your NIC
      2. Issues with Drivers
        1. mtr
        2. tcpdump
    3. Network Configuration with KDE
    4. Configure Linux as a Router
    5. Conclusion
  14. 11. Network Security
    1. Linux Firewalls
      1. iptables
      2. iptables Configuration
      3. KDE Firewall
    2. General Security Tips
      1. Concepts
      2. Backups
      3. Accounts and Passwords
    3. Security Software
      1. IDS
      2. File Integrity Checking
      3. Antivirus
    4. Conclusion
    5. End Note
  15. 12. Network File System
    1. History and Background of NFS
    2. Setting Up NFS
    3. Managing Access to NFS
    4. Accessing NFS Shares
    5. Optimizing NFS
    6. Share Folders Through the Desktop
    7. Conclusion
    8. End Notes
  16. 13. Shell Scripting
    1. Script Basics
    2. Script Techniques
      1. Wildcards
      2. Using Variables
        1. Environment and System Variables
        2. User Variables
      3. Getting Input from the User
      4. Script Math
      5. Decision Structures
        1. if Statements
        2. Nested if statements
        3. case Statements
      6. Loops
        1. for Loops
        2. while Loops
        3. until Loops
    3. Miscellaneous Scripting Techniques
      1. The Pipe Symbol
      2. Arguments
      3. Comments
    4. Script Functions
    5. More Shell Commands
      1. grep
      2. du
      3. free
      4. dmesg
    6. Editors
      1. vi
      2. pico
      3. Emacs
    7. Conclusion
  17. 14. Interoperability with Windows
    1. Samba
      1. Configuring Samba
        1. From the Shell
        2. From the Desktop
    2. Running Services with Windows
      1. Joining a Windows Domain
      2. Configuring Kerberos
      3. Printing
    3. Conclusion
    4. End Note
  18. 15. DNS
    1. Domain Name Service
    2. DNS-Related Commands
      1. host
      2. nslookup
      3. dig
      4. dnsget
    3. Configuring Linux as a DNS Server
      1. Commonly Used named.conf Options
      2. Less Common named.conf Options
    4. DNS Configuration Issues
    5. Important DNS Files
      1. DNS Zone Files
    6. Sample Files
      1. Sample Forwarding DNS
      2. Primary DNS
    7. DNS Security
    8. Conclusion
    9. End Notes
  19. 16. Email Servers
    1. Email Essentials
    2. Email Security
      1. S/MIME
      2. PGP
    3. Email Servers
      1. Sendmail
        1. Installing Sendmail
        2. Configuring Sendmail
      2. Postfix
      3. Other Email Servers
    4. Email Clients
      1. Evolution
      2. KMail
      3. Other Clients
    5. Conclusion
  20. 17. Web Servers and FTP
    1. How Do Web Servers Work?
    2. Specific Web Servers
      1. The Apache Web Server
      2. Apache History
      3. How to Set Up Apache
        1. Httpd.conf
          1. DirectoryIndex
          2. Directory
        2. Listen.conf
        3. Server-tuning.conf
        4. Apache with SSL
      4. Registering a Domain Name
      5. Other Web Servers for Linux
    3. FTP
      1. What Is an FTP Server?
      2. vsftpd
      3. ProFTPD
      4. Pure-FTPd
      5. WU-FTP
      6. FTP Client
        1. FTP from the Shell
        2. FileZilla
      7. gFTP
    4. Web Browsers
      1. Mozilla Firefox
      2. Konqueror
      3. Epiphany
    5. Conclusion
  21. 18. Database Servers
    1. General Concepts
      1. History of SQL
      2. Database Terminology
      3. Basic SQL Commands
        1. WHERE Operators
        2. WHERE Modifiers
        3. Distinct
        4. Order By
        5. Between
        6. SQL Functions
        7. Joins
      4. Advanced SQL
        1. Limit
        2. Isnull
        3. Database Manipulation
        4. Union
        5. Select Into
        6. Triggers
      5. Database Normalization
    2. Specific Database Servers
      1. MySQL
        1. MySQL Administrator
      2. Postgres
        1. Postgres Shell Commands
        2. pgAdmin
    3. Conclusion
  22. 19. Performance and Optimization
    1. Simple Steps
      1. Drop the Desktop
      2. Remove Unnecessary Daemons
    2. Monitoring System Performance
      1. Shell Commands
        1. vmstat
        2. iostat
        3. mpstat
        4. pmap
      2. GNOME System Monitor
      3. KDE System Monitor
    3. Optimizing Disk Access
      1. hdparm
      2. sysctl
    4. Recompile the Kernel
      1. Monolithic Kernel
      2. Recompile Your System
    5. Conclusion
  23. 20. Configuration Management
    1. Shell Commands
      1. Package Management
        1. Debian/Ubuntu
          1. dpkg
          2. apt-get
          3. aptitude
          4. tasksel
        2. Red Hat/Fedora
          1. rpm
          2. YUM
      2. Date and Time
        1. hwclock
        2. date
        3. ntp
    2. Configuration from the Desktop
      1. GNOME
        1. Synaptic Package Manager
        2. Services Settings
        3. Software Sources
        4. Preferred Applications
      2. YaST
      3. KDE
        1. KPackageKit
        2. System Settings
    3. Linux Configuration Files
    4. Conclusion
  24. 21. Logging and Monitoring
    1. Important Logs
      1. /var/log/faillog
      2. /var/log/kern.log
      3. /var/log/lpr.log
      4. /var/log/mail.log
      5. /var/log/mysql.*
      6. /var/log/apache2/*
      7. /var/log/apport.log
      8. /var/log/daemon.log
      9. /var/log/user.log
      10. /var/log/syslog
      11. Viewing Logs
    2. Basic Utilities
      1. syslogd
      2. klogd
    3. Conclusion
  25. 22. Load Balancing
    1. Pen
    2. Pound
    3. Balance
    4. Conclusion
    5. End Notes
  26. 23. Virtualization
    1. Virtualizing Servers
      1. Xen
      2. VMWare
      3. OpenVZ
      4. KVM
    2. Virtualization on the Desktop
      1. Oracle VirtualBox
    3. Conclusion
    4. End Note
  27. A. Linux Shell Commands
  28. B. Linux Distributions