Fedora 31 Essentials
Book information
Description
Fedora 31 Essentials is designed to provide detailed information on the installation, use and administration of the Fedora 31 distribution. For beginners, the book covers topics such as operating system installation, the basics of the GNOME desktop environment, configuring email and web servers and installing packages and system updates using App Streams. Additional installation topics such as dual booting with Microsoft Windows are also covered, together with all important security topics such as configuring a firewall and user and group administration. For the experienced user, topics such as remote desktop access, the Cockpit web interface, logical volume management (LVM), disk partitioning, swap management, KVM virtualization, Secure Shell (SSH), Linux Containers and file sharing using both Samba and NFS are covered in detail to provide a thorough overview of this enterprise class operating system. 1. Introduction 1.1 Superuser Conventions 1.2 Feedback 1.3 Errata 2. A Brief History of Linux 2.1 What exactly is Linux? 2.2 UNIX Origins 2.3 Who Created Linux? 2.4 The Early Days of Red Hat 2.5 Red Hat Support 2.6 Open Source 2.7 The Fedora Project 2.8 CentOS - The Free Alternative 2.9 Summary 3. Installing Fedora 31 on a Clean Disk Drive 3.1 Fedora Installation Options 3.2 Choosing an Installation Option 3.3 Obtaining the Fedora 31 Installation Media 3.4 Writing the ISO Installation Image to a USB Drive 3.4.1 Linux 3.4.2 macOS 3.4.3 Windows 3.5 Installing Fedora 31 3.6 Partitioning a Disk for Fedora 31 3.7 Adding a User and Root Access 3.8 The Physical Installation 3.9 Final Configuration Steps 3.10 Installing Updates 3.11 Displaying Boot Messages 3.12 Summary 4. Dual Booting Fedora 31 with Windows 4.1 Partition Resizing 4.2 Changing the Default Boot Option 4.3 Accessing the Windows Partition from Fedora 31 4.4 Summary 5. Allocating Windows Disk Partitions to Fedora 31 5.1 Unmounting the Windows Partition 5.2 Deleting the Windows Partitions from the Disk 5.3 Formatting the Unallocated Disk Partition 5.4 Mounting the New Partition 5.5 Editing the Boot Menu 5.6 Summary 6. A Guided Tour of the GNOME 3 Desktop 6.1 Installing the GNOME Desktop 6.2 An Overview of the GNOME 3 Desktop 6.3 Launching Activities 6.4 Managing Windows 6.5 Using Workspaces 6.6 Calendar and Notifications 6.7 Desktop Settings 6.8 Summary 7. An Overview of the Fedora 31 Cockpit Web Interface 7.1 An Overview of Cockpit 7.2 Installing and Enabling Cockpit 7.3 Accessing Cockpit 7.4 System 7.5 Logs 7.6 Storage 7.7 Networking 7.8 Accounts 7.9 Services 7.10 Applications 7.11 Virtual Machines 7.12 Podman Containers 7.13 Diagnostic Reports 7.14 Kernel Dump 7.15 SELinux 7.16 Software Updates 7.17 Terminal 7.18 Connecting to Multiple Servers 7.19 Enabling Stored Metrics 7.20 Summary 8. Using the Bash Shell on Fedora 31 8.1 What is a Shell? 8.2 Gaining Access to the Shell 8.3 Entering Commands at the Prompt 8.4 Getting Information about a Command 8.5 Bash Command-line Editing 8.6 Working with the Shell History 8.7 Filename Shorthand 8.8 Filename and Path Completion 8.9 Input and Output Redirection 8.10 Working with Pipes in the Bash Shell 8.11 Configuring Aliases 8.12 Environment Variables 8.13 Writing Shell Scripts 8.14 Summary 9. Managing Fedora 31 Users and Groups 9.1 User Management from the Command-line 9.2 User Management with Cockpit 9.3 Summary 10. Understanding Fedora 31 Software Installation and Management 10.1 Repositories 10.2 The fedora Repository 10.3 The fedora-modular Repository 10.4 Summary 11. Configuring Fedora 31 systemd Units 11.1 Understanding Fedora 31 systemd Targets 11.2 Understanding Fedora 31 systemd Services 11.3 Fedora 31 systemd Target Descriptions 11.4 Identifying and Configuring the Default Target 11.5 Understanding systemd Units and Unit Types 11.6 Dynamically Changing the Current Target 11.7 Enabling, Disabling and Masking systemd Units 11.8 Working with systemd Units in Cockpit 11.9 Summary 12. Fedora 31 Network Management 12.1 An Introduction to NetworkManager 12.2 Installing and Enabling NetworkManager 12.3 Basic nmcli Commands 12.4 Working with Connection Profiles 12.5 Interactive Editing 12.6 Configuring NetworkManager Permissions 12.7 Summary 13. Basic Fedora 31 Firewall Configuration with firewalld 13.1 An Introduction to firewalld 13.1.1 Zones 13.1.2 Interfaces 13.1.3 Services 13.1.4 Ports 13.2 Checking firewalld Status 13.3 Configuring Firewall Rules with firewall-cmd 13.3.1 Identifying and Changing the Default Zone 13.3.2 Displaying Zone Information 13.3.3 Adding and Removing Zone Services 13.3.4 Working with Port-based Rules 13.3.5 Creating a New Zone 13.3.6 Changing Zone/Interface Assignments 13.3.7 Masquerading 13.3.8 Adding ICMP Rules 13.3.9 Implementing Port Forwarding 13.4 Managing firewalld from the Cockpit Interface 13.5 Managing firewalld using firewall-config 13.6 Summary 14. Configuring SSH Key-based Authentication on Fedora 31 14.1 An Overview of Secure Shell (SSH) 14.2 SSH Key-based Authentication 14.3 Setting Up Key-based Authentication 14.4 Installing and Starting the SSH Service 14.5 SSH Key-based Authentication from Linux and macOS Clients 14.6 Managing Multiple Keys 14.7 SSH Key-based Authentication from Windows 10 Clients 14.8 SSH Key-based Authentication using PuTTY 14.9 Generating a Private Key with PuTTYgen 14.10 Installing the Public Key for a Google Cloud Instance 14.11 Summary 15. Fedora 31 Remote Desktop Access with VNC 15.1 Secure and Insecure Remote Desktop Access 15.2 Installing the GNOME Desktop Environment 15.3 Installing VNC on Fedora 31 15.4 Configuring the VNC Server 15.5 Connecting to a VNC Server 15.6 Establishing a Secure Remote Desktop Session 15.7 Establishing a Secure Tunnel on Windows using PuTTY 15.8 Shutting Down a Desktop Session 15.9 Troubleshooting a VNC Connection 15.10 Summary 16. Displaying Fedora 31 Applications Remotely (X11 Forwarding) 16.1 Requirements for Remotely Displaying Fedora 31 Applications 16.2 Remotely Displaying a Fedora 31 Application 16.3 Trusted X11 Forwarding 16.4 Compressed X11 Forwarding 16.5 Displaying Remote Fedora 31 Apps on Windows 16.6 Summary 17. Using NFS to Share Fedora 31 Files with Remote Systems 17.1 Ensuring NFS Services are running on Fedora 31 17.2 Configuring the Fedora 31 Firewall to Allow NFS Traffic 17.3 Specifying the Folders to be Shared 17.4 Accessing Shared Fedora 31 Folders 17.5 Mounting an NFS Filesystem on System Startup 17.6 Unmounting an NFS Mount Point 17.7 Accessing NFS Filesystems in Cockpit 17.8 Summary 18. Sharing Files between Fedora 31 and Windows Systems with Samba 18.1 Samba and Samba Client 18.2 Installing Samba on a Fedora 31 System 18.3 Configuring the Fedora 31 Firewall to Enable Samba 18.4 Configuring the smb.conf File 18.4.1 Configuring the [global] Section 18.4.2 Configuring a Shared Resource 18.4.3 Removing Unnecessary Shares 18.5 Configuring SELinux for Samba 18.6 Creating a Samba User 18.7 Testing the smb.conf File 18.8 Starting the Samba and NetBIOS Name Services 18.9 Accessing Samba Shares 18.10 Accessing Windows Shares from Fedora 31 18.11 Summary 19. An Overview of Virtualization Techniques 19.1 Guest Operating System Virtualization 19.2 Hypervisor Virtualization 19.2.1 Paravirtualization 19.2.2 Full Virtualization 19.2.3 Hardware Virtualization 19.3 Virtual Machine Networking 19.4 Summary 20. Installing KVM Virtualization on Fedora 31 20.1 An Overview of KVM 20.2 KVM Hardware Requirements 20.3 Preparing Fedora 31 for KVM Virtualization 20.4 Verifying the KVM Installation 20.5 Summary 21. Creating KVM Virtual Machines using Cockpit and virt-manager 21.1 Installing the Cockpit Virtual Machines Module 21.2 Creating a Virtual Machine in Cockpit 21.3 Starting the Installation 21.4 Working with Storage Volumes and Storage Pools 21.5 Creating a Virtual Machine using virt-manager 21.6 Starting the Virtual Machine Manager 21.7 Configuring the KVM Virtual System 21.8 Starting the KVM Virtual Machine 21.9 Summary 22. Creating KVM Virtual Machines with virt-install and virsh 22.1 Running virt-install to build a KVM Guest System 22.2 An Example Fedora 31 virt-install Command 22.3 Starting and Stopping a Virtual Machine from the Command-Line 22.4 Creating a Virtual Machine from a Configuration File 22.5 Summary 23. Creating a Fedora 31 KVM Networked Bridge Interface 23.1 Getting the Current Network Settings 23.2 Creating a Network Bridge from the Command-Line 23.3 Declaring the KVM Bridged Network 23.4 Using a Bridge Network in a Virtual Machine 23.5 Creating a Bridge Network using nm-connection-editor 23.6 Summary 24. Managing KVM using the virsh Command-Line Tool 24.1 The virsh Shell and Command-Line 24.2 Listing Guest System Status 24.3 Starting a Guest System 24.4 Shutting Down a Guest System 24.5 Suspending and Resuming a Guest System 24.6 Saving and Restoring Guest Systems 24.7 Rebooting a Guest System 24.8 Configuring the Memory Assigned to a Guest OS 24.9 Summary 25. An Introduction to Linux Containers 25.1 Linux Containers and Kernel Sharing 25.2 Container Uses and Advantages 25.3 Fedora 31 Container Tools 25.4 The Docker Registry 25.5 Container Networking 25.6 Summary 26. Working with Containers on Fedora 31 26.1 Installing the Container Tools 26.2 Pulling a Container Image 26.3 Running the Image in a Container 26.4 Managing a Container 26.5 Saving a Container to an Image 26.6 Removing an Image from Local Storage 26.7 Removing Containers 26.8 Building a Container with Buildah 26.9 Building a Container from Scratch 26.10 Container Bridge Networking 26.11 Managing Containers in Cockpit 26.12 Summary 27. Setting Up a Fedora 31 Web Server 27.1 Requirements for Configuring a Fedora 31 Web Server 27.2 Installing the Apache Web Server Packages 27.3 Configuring the Firewall 27.4 Port Forwarding 27.5 Starting the Apache Web Server 27.6 Testing the Web Server 27.7 Configuring the Apache Web Server for Your Domain 27.8 The Basics of a Secure Web Site 27.9 Configuring Apache for HTTPS 27.10 Obtaining an SSL Certificate 27.11 Summary 28. Configuring a Fedora 31 Postfix Email Server 28.1 The structure of the Email System 28.1.1 Mail User Agent 28.1.2 Mail Transfer Agent 28.1.3 Mail Delivery Agent 28.1.4 SMTP 28.1.5 SMTP Relay 28.2 Configuring a Fedora 31 Email Server 28.3 Postfix Pre-Installation Steps 28.4 Firewall/Router Configuration 28.5 Installing Postfix on Fedora 31 28.6 Configuring Postfix 28.7 Configuring DNS MX Records 28.8 Starting Postfix on a Fedora 31 System 28.9 Testing Postfix 28.10 Sending Mail via an SMTP Relay Server 28.11 Summary 29. Adding a New Disk Drive to a Fedora 31 System 29.1 Mounted File Systems or Logical Volumes 29.2 Finding the New Hard Drive 29.3 Creating Linux Partitions 29.4 Creating a File System on a Fedora 31 Disk Partition 29.5 An Overview of Journaled File Systems 29.6 Mounting a File System 29.7 Configuring Fedora 31 to Automatically Mount a File System 29.8 Adding a Disk Using Cockpit 29.9 Summary 30. Adding a New Disk to a Fedora 31 Volume Group and Logical Volume 30.1 An Overview of Logical Volume Management (LVM) 30.1.1 Volume Group (VG) 30.1.2 Physical Volume (PV) 30.1.3 Logical Volume (LV) 30.1.4 Physical Extent (PE) 30.1.5 Logical Extent (LE) 30.2 Getting Information about Logical Volumes 30.3 Adding Additional Space to a Volume Group from the Command-Line 30.4 Adding Additional Space to a Volume Group using Cockpit 30.5 Summary 31. Adding and Managing Fedora 31 Swap Space 31.1 What is Swap Space? 31.2 Recommended Swap Space for Fedora 31 31.3 Identifying Current Swap Space Usage 31.4 Adding a Swap File to a Fedora 31 System 31.5 Adding Swap as a Partition 31.6 Adding Space to a Fedora 31 LVM Swap Volume 31.7 Adding Swap Space to the Volume Group 31.8 Summary Index
Similar books
MariaDB 11 Essentials
2025 · EPUB
Android Studio 3.6 Development Essentials (Kotlin Edition)
2020 · EPUB
Android Studio 3.6 Development Essentials (Java Edition)
2020 · EPUB
Android Studio Ladybug Essentials - Java Edition: Developing Android Apps Using Android Studio Ladybug and Java
EPUB
Jetpack Compose 1.7 Essentials: Developing Android Apps with Jetpack Compose 1.7, Android Studio, and Kotlin
2024 · EPUB
C# 13 Programming Essentials - .NET 9 Edition: Learn C# and .Net 9 Programming using Visual Studio Code
EPUB
iOS 18 App Development Essentials: Developing iOS Apps with SwiftUI, Swift, and Xcode 16
2024 · EPUB
Red Hat Enterprise Linux 9 Essentials: Learn to Install, Administer and Deploy RHEL 9 Systems
2023 · PDF