Author | Nejat Hakan |
nejat.hakan@outlook.de | |
PayPal Me | https://paypal.me/nejathakan |
Installing Fedora Linux
Introduction to Fedora Linux and Installation Prerequisites
Welcome to this comprehensive guide on installing Fedora Linux. This section serves as your foundation, introducing you to Fedora's philosophy, its unique position in the Linux ecosystem, and the essential preparatory steps required before embarking on the installation journey. For university students diving into the world of Linux, understanding these preliminary concepts is crucial for a smooth and successful installation.
Understanding Fedora Linux
Fedora is a Linux distribution developed by the Fedora Project, which is sponsored primarily by Red Hat, a leading open-source software company. It is renowned for its commitment to innovation, integrating the latest open-source technologies and software packages. Fedora serves as a testing ground for features that often find their way into Red Hat Enterprise Linux (RHEL), making it an excellent choice for developers, system administrators, and enthusiasts who want to stay on the cutting edge of Linux development.
Fedora's key characteristics include:
- Leading-edge Software:
Fedora embraces the latest stable versions of software, including the newest Linux kernel, desktop environments (like GNOME, KDE Plasma, Xfce), and development tools. This focus on "bleeding edge" software means users get access to the most recent features and performance improvements, albeit with the potential for occasional minor instability compared to distributions that prioritize long-term stability over new features. - Innovation and Open Source:
Fedora is a strong proponent of open-source principles. It typically includes only free and open-source software in its default repositories. While this ensures a purely open-source experience, users might need to enable third-party repositories for proprietary drivers, media codecs, or other non-free software. - Security Features:
Fedora places a high emphasis on security, incorporating features like SELinux (Security-Enhanced Linux) by default. SELinux provides mandatory access control (MAC) security policies, which offer a layer of security beyond traditional discretionary access control (DAC) by enforcing strict rules on how processes can interact with system resources. Understanding SELinux, even at a basic level, is important for system administration on Fedora. - Workstation, Server, and Spins:
Fedora offers various editions tailored for different use cases. The most common is Fedora Workstation, which features the GNOME desktop environment and is designed for desktop users. Fedora Server is optimized for server workloads, and Fedora Spins provide alternative desktop environments (KDE Plasma, Xfce, MATE, LXQt, Cinnamon, SoaS) or specialized use cases (e.g., scientific computing, IoT). This guide will primarily focus on the Fedora Workstation edition, as it is the most common entry point for students. - Release Cycle:
Fedora has a relatively rapid release cycle, with a new version released approximately every six months. Each release is supported for about 13 months, meaning users typically upgrade to a new version every year to maintain support and receive security updates. This rapid iteration fosters innovation but also requires users to be comfortable with regular system upgrades.
System Requirements and Preparation
Before you can install Fedora, it's essential to ensure your hardware meets the minimum requirements and to prepare your system and installation media.
Minimum System Requirements
While modern computers generally exceed these, it's good practice to verify:
- Processor:
1 GHz or faster (2 GHz dual-core or higher recommended). Fedora supports both 64-bit (x86_64) and ARM architectures. This guide focuses on x86_64. - RAM:
2 GB (4 GB or more recommended for smooth desktop experience and multiple applications). For effective hibernation (suspend-to-disk), your swap partition should ideally be at least equal to your RAM size. - Disk Space:
15 GB (20 GB or more recommended for general use, and significantly more if you plan to install many applications, store large files, or use advanced features like LVM snapshots). - Graphics:
Basic graphics card compatible with your display. Modern integrated or dedicated GPUs are generally well-supported. - Boot Device:
A USB drive (at least 8 GB) or a DVD drive for the installation media. - Internet Connection:
Recommended during installation for downloading updates and additional software, though not strictly required for the basic installation.
Downloading the Fedora Workstation ISO
The Fedora Workstation ISO image is the installer file containing the entire operating system.
- Visit the Official Fedora Website:
Always download the ISO from the official Fedora Project website (https://fedoraproject.org/workstation/download/). This ensures you receive an authentic and untampered image. - Select the Appropriate ISO:
Choose the Workstation edition. You'll typically find a direct download link for the latest stable release. The file size is usually around 2 GB. - Choose Download Method:
You can download directly via HTTP/HTTPS or use a BitTorrent client for faster, more reliable downloads, especially on unstable connections. BitTorrent is often preferred as it leverages peer-to-peer sharing, reducing strain on the main servers and often providing better speeds.
Verifying the ISO Integrity (Checksums)
This is a critical step often overlooked by new users but is paramount for security and a successful installation. Verifying the ISO ensures that the downloaded file is not corrupted during transmission and has not been tampered with by malicious actors.
Fedora provides SHA256
checksums for its ISO images. A checksum is a small string of characters that represents the "fingerprint" of a file. If even a single bit in the file changes, its checksum will be entirely different.
Steps to Verify:
- Download the
CHECKSUM
File:
On the same download page where you get the ISO, there will be a link to aCHECKSUM
file (e.g.,Fedora-Workstation-39-1.5-x86_64-CHECKSUM
). Download this file and save it in the same directory as your downloaded ISO. - Open a Terminal or Command Prompt:
- Linux/macOS:
Open your terminal application. - Windows:
Open PowerShell or Command Prompt. Navigate to the directory where you saved the ISO and the CHECKSUM file using thecd
command (e.g.,cd Downloads
).
- Linux/macOS:
- Calculate the ISO's Checksum:
- Linux/macOS:
(Replace
Fedora-Workstation-*-x86_64.iso
with the exact filename of your downloaded ISO.) - Windows (PowerShell): (Again, replace the filename.)
- Linux/macOS:
(Replace
-
Compare the Calculated Checksum:
The command will output a long string of hexadecimal characters. Compare this string exactly with theSHA256
checksum listed in theCHECKSUM
file you downloaded. It's best to copy the checksum from the text file to avoid typos.-
Automated Comparison (Linux/macOS):
If it says
You can use thesha256sum -c CHECKSUM
command. This command will read theCHECKSUM
file, find the line corresponding to your ISO, calculate its checksum, and tell you if it matches.OK
next to your ISO filename, the integrity is verified. If it saysFAILED
, your ISO is corrupted or tampered with, and you must re-download it. -
Automated Comparison (Windows PowerShell):
While there isn't a directGet-FileHash -c
equivalent, you can programmatically compare. A simpler way is to manually compare the output ofGet-FileHash
with the content of theCHECKSUM
file.
Importance:
If the checksums do not match, do not proceed with the installation. A corrupted ISO can lead to an unstable system, installation failures, or even security vulnerabilities if it was maliciously altered. -
Creating a Bootable USB Drive
A bootable USB drive is the most common and convenient method for installing Fedora. Ensure you have a USB drive of at least 8 GB (some ISOs might be slightly larger than 4GB, so 8GB is safer) that you are willing to completely erase, as all data on it will be lost.
Recommended Tools:
-
BalenaEtcher (Cross-Platform: Windows, macOS, Linux):
- Why it's recommended:
BalenaEtcher is known for its user-friendliness, simplicity, and robustness. It automatically unzips compressed ISOs and verifies the written drive, reducing errors. - Steps:
- Download and install BalenaEtcher from https://www.balena.io/etcher/.
- Launch Etcher.
- Click "Flash from file" and select your downloaded Fedora ISO.
- Click "Select target" and choose your USB drive. Double-check that you select the correct drive, as writing to the wrong drive can lead to data loss on your main system.
- Click "Flash!". Etcher will write the ISO to the USB drive and then verify it. This process can take several minutes.
- Once complete, you'll see a "Flash Complete!" message. You can then safely remove the USB drive.
- Why it's recommended:
-
Rufus (Windows Only):
- Why it's recommended:
Rufus is a highly popular and powerful utility for creating bootable USB drives on Windows. It offers more advanced options than Etcher. - Steps:
- Download Rufus from https://rufus.ie/en/. It's a portable executable, so no installation is needed.
- Insert your USB drive.
- Launch Rufus. It should automatically detect your USB drive.
- Under "Device", ensure your USB drive is selected.
- Under "Boot selection", click "SELECT" and choose your Fedora ISO file.
- For "Partition scheme", Rufus will usually auto-detect the correct setting (typically "GPT" for UEFI systems and "MBR" for legacy BIOS systems). If you are unsure, stick with the default.
- "Target system" should also auto-adjust based on the ISO and partition scheme.
- Click "START". Rufus might prompt you to download additional files (like Syslinux or GRUB components) if needed; allow it to do so.
- It will warn you that all data on the USB drive will be destroyed. Confirm by clicking "OK".
- Rufus will write the image. Once done, the status bar will turn green, and you can close Rufus and safely remove the drive.
- Why it's recommended:
-
dd
Command (Linux/macOS):- Why it's recommended:
For experienced Linux/macOS users,dd
is a powerful command-line utility. It's very fast but also very dangerous if used incorrectly, as it can easily wipe the wrong drive. Use with extreme caution. - Steps:
- Identify your USB device:
This is the most crucial step. Connect your USB drive and open a terminal.- Linux:
Runlsblk
orsudo fdisk -l
. Look for your USB drive based on its size and label (e.g.,/dev/sdb
,/dev/sdc
,/dev/nvme0n1
). Do NOT use partition names like/dev/sdb1
. Use the whole device name. - macOS:
Rundiskutil list
. Look for your USB drive (e.g.,/dev/disk2
).
- Linux:
- Unmount the USB drive (if mounted):
- Linux:
sudo umount /dev/sdXN
(replacesdXN
with the partition, e.g.,sdb1
, and repeat for all partitions on the drive). - macOS:
diskutil unmountDisk /dev/diskN
(replacediskN
with the device number, e.g.,disk2
).
- Linux:
- Write the ISO to the USB drive:
- Linux:
if=/path/to/Fedora-Workstation-*-x86_64.iso
: Replace with the actual path to your ISO file.of=/dev/sdX
: CRITICAL: Replace/dev/sdX
with your identified USB drive (e.g.,/dev/sdb
). Be absolutely sure this is correct.bs=4M
: Sets the block size to 4 megabytes, which is generally efficient.status=progress
: Shows the progress of the write (Linux-specific, not available in olderdd
versions).&& sync
: Ensures all data is written to the disk before the command finishes.
- macOS:
of=/dev/rdiskN
: Use/dev/rdiskN
(note ther
) for "raw disk" access, which is usually faster on macOS. ReplaceN
with your disk number (e.g.,rdisk2
).bs=1m
: Sets block size to 1 megabyte.status=progress
is not typically supported on macOSdd
.
- Linux:
- Press Enter. You might be prompted for your password. The process can take a while, and the terminal might appear unresponsive until it's done. Do not interrupt it.
- Once the command finishes, you can safely remove the USB drive.
- Identify your USB device:
- Why it's recommended:
BIOS/UEFI Settings
Modern computers use UEFI (Unified Extensible Firmware Interface) instead of the older BIOS (Basic Input/Output System). Both manage the boot process, but UEFI offers more features, including Secure Boot, faster boot times, and support for larger hard drives (GPT partition scheme).
Key Settings to Check/Adjust:
- Accessing Firmware Settings:
The key to enter BIOS/UEFI setup varies by manufacturer (e.g.,F2
,Del
,F10
,F12
,Esc
during boot-up). Consult your motherboard or laptop manual if unsure. - Secure Boot:
- What it is:
Secure Boot is a UEFI feature designed to prevent malicious software from loading during the boot process. It ensures that only digitally signed bootloaders are executed. - Fedora and Secure Boot:
Recent versions of Fedora are generally compatible with Secure Boot out of the box. However, if you encounter issues or plan to install third-party drivers (like proprietary NVIDIA drivers) that are not signed, you might need to disable Secure Boot temporarily or permanently. - Recommendation:
Try installing with Secure Boot enabled first. If you encounter problems, disable it in your UEFI settings and try again.
- What it is:
- Fast Boot/Quick Boot:
- What it is:
These settings (often found in "Boot Options" or "Performance" sections) speed up the boot process by skipping certain hardware checks or initialization steps. - Recommendation:
Disable Fast Boot (or similar "Quick Boot" options). These features can sometimes prevent Linux from properly detecting hardware or accessing disk partitions, especially in a dual-boot scenario.
- What it is:
- Boot Order/Boot Priority:
- What it is:
This setting determines the order in which your computer attempts to boot from different devices (e.g., hard drive, USB drive, optical drive, network). - Recommendation:
Change the boot order to prioritize booting from your USB drive first. Alternatively, many systems allow you to press a specific key (e.g.,F12
,F8
,Esc
) during startup to bring up a "Boot Menu" or "One-Time Boot Menu," from which you can select your USB drive without changing the permanent boot order. This is generally the preferred method.
- What it is:
- SATA Mode (AHCI):
- What it is:
This setting controls how the motherboard's SATA controller operates. AHCI (Advanced Host Controller Interface) is the modern standard, providing features like hot-plugging and Native Command Queuing (NCQ). IDE mode is an older, legacy mode. - Recommendation:
Ensure your SATA mode is set to AHCI. If it's set to IDE, your Linux installation might not be able to detect your storage drives, or performance could be severely impacted. Changing this setting after an operating system is installed (especially Windows) can cause the existing OS to fail to boot, so be cautious if you are dual-booting. Ideally, check this before any OS installation.
- What it is:
- CSM (Compatibility Support Module) / Legacy Mode:
- What it is:
CSM or Legacy Mode allows UEFI systems to boot from devices and operating systems that only support legacy BIOS. - Recommendation:
For a modern Fedora installation, especially if your system is UEFI, it's best to disable CSM and boot in pure UEFI mode. This ensures you utilize the GPT partition scheme and benefits of UEFI. Only enable CSM if you are dealing with very old hardware or specific legacy software requirements.
- What it is:
By thoroughly addressing these prerequisites, you set the stage for a smooth and efficient Fedora Linux installation, minimizing potential roadblocks and ensuring a robust foundation for your new operating system.
Workshop: Preparing the Installation Media and Verifying System Readiness
This workshop guides you through the practical steps of creating a bootable Fedora USB drive and confirming your system's readiness for the installation process. This hands-on experience reinforces the theoretical knowledge gained in the previous section.
Project Goal:
Create a verified bootable Fedora Workstation USB drive and perform initial system checks.
Required Materials:
- A computer with internet access.
- A USB flash drive (minimum 8 GB, preferably 16 GB or more, as 8 GB can sometimes be too small for larger ISOs or future versions).
- Your downloaded Fedora Workstation ISO image.
Step-by-Step Tutorial:
Part 1: Downloading and Verifying the Fedora ISO
-
Download the Fedora Workstation ISO:
- Open your web browser and navigate to the official Fedora Workstation download page: https://fedoraproject.org/workstation/download/
- Click on the link to download the latest stable Fedora Workstation ISO image (e.g., "Download Fedora Workstation 39"). Note the exact filename (e.g.,
Fedora-Workstation-Live-x86_64-39-1.5.iso
). - While the ISO is downloading, locate the link for the
CHECKSUM
file on the same page (it might be under "Verify your download"). Download this file (e.g.,Fedora-Workstation-39-1.5-x86_64-CHECKSUM
) and save it in the same directory as your ISO file.
-
Verify the ISO Integrity using SHA256 Checksum:
- Open a terminal (Linux/macOS) or PowerShell (Windows).
- Navigate to the directory where you saved both the ISO and the
CHECKSUM
file. For example, if they are in your "Downloads" folder:- Linux/macOS:
cd ~/Downloads
- Windows (PowerShell):
cd C:\Users\<YourUsername>\Downloads
(replace<YourUsername>
)
- Linux/macOS:
- Execute the checksum verification command:
- Linux/macOS:
(Replace the
CHECKSUM
filename with the one you downloaded.) Expected Output: You should see lines similar to:Fedora-Workstation-Live-x86_64-39-1.5.iso: OK
If you seeFAILED
, the download is corrupted, and you must re-download the ISO. - Windows (PowerShell):
Expected Output: You should see
$isoPath = ".\Fedora-Workstation-Live-x86_64-39-1.5.iso" # Replace with your ISO filename $checksumFile = ".\Fedora-Workstation-39-1.5-x86_64-CHECKSUM" # Replace with your CHECKSUM filename $calculatedHash = (Get-FileHash -Algorithm SHA256 $isoPath).Hash $expectedHashLine = Get-Content $checksumFile | Select-String -Pattern (Get-Item $isoPath).Name $expectedHash = ($expectedHashLine -split '\s+')[0] if ($calculatedHash -eq $expectedHash) { Write-Host "ISO integrity verified: OK" } else { Write-Host "ISO integrity check FAILED! Hashes do not match." Write-Host "Calculated: $calculatedHash" Write-Host "Expected: $expectedHash" }
ISO integrity verified: OK
. If not, re-download the ISO.
- Linux/macOS:
(Replace the
Part 2: Creating a Bootable USB Drive
- Insert your USB drive:
Connect your chosen USB drive to your computer. Ensure it does not contain any important data, as it will be completely erased. - Download and Run BalenaEtcher (Recommended for all OS):
- Go to https://www.balena.io/etcher/ and download the appropriate version for your operating system.
- Install and launch BalenaEtcher.
- Flash the ISO to the USB Drive using BalenaEtcher:
- In Etcher, click "Flash from file" and select your downloaded Fedora ISO.
- Click "Select target" and carefully choose your USB drive. Double-check that you are selecting the correct drive to avoid overwriting an important disk.
- Click "Flash!". Etcher will start the process of writing and then verifying the image. This might take 10-20 minutes depending on your USB drive speed and system.
- Wait for the "Flash Complete!" message.
- Safely eject the USB drive once the process is finished.
Part 3: Performing Initial System Checks (BIOS/UEFI Configuration)
This part requires you to restart your computer and enter your firmware settings.
- Reboot your computer:
- Save any open work and close all applications.
- Initiate a restart.
- Access BIOS/UEFI Settings:
- As your computer restarts, repeatedly press the designated key to enter your BIOS/UEFI setup. Common keys include
F2
,Delete
,F10
,F12
, orEsc
. The exact key is often displayed on the screen during the initial boot process or can be found in your computer's manual.
- As your computer restarts, repeatedly press the designated key to enter your BIOS/UEFI setup. Common keys include
- Navigate and Verify Key Settings:
- Once in the BIOS/UEFI interface (which might look different depending on your manufacturer), use your keyboard (mouse support is sometimes available) to navigate through the menus.
- Locate "Boot Options" or similar sections:
- Check "Secure Boot":
Find the Secure Boot option. Note whether it's enabled or disabled. For the first attempt at Fedora installation, you can leave it enabled as Fedora supports it. If you encounter boot issues later, you might need to disable it. - Check "Fast Boot" / "Quick Boot":
Locate and disable any "Fast Boot" or "Quick Boot" settings. These can interfere with the Linux boot process. - Check "SATA Mode" / "SATA Configuration":
Ensure this is set to AHCI (Advanced Host Controller Interface). Avoid IDE mode. If you are currently running Windows on the same disk, changing this setting can prevent Windows from booting, so only change it if you are prepared to fix Windows boot issues or if you are installing Fedora on a fresh disk. - Check "Boot Order" / "Boot Priority":
Find the list of boot devices.- Option A (Temporary):
Look for a "Boot Menu" key (oftenF12
,F10
,F8
, orEsc
). If your system has this, you can press it during startup to select your USB drive without changing the permanent boot order. This is the recommended approach. - Option B (Permanent):
If no convenient boot menu is available, change the boot order to make your USB drive the first boot device. Remember to change it back after installation.
- Option A (Temporary):
- Check "Secure Boot":
- Save and Exit:
Before exiting, make sure to save your changes. The option is usually labelled "Save and Exit" or "Exit Saving Changes".
- Confirm USB Boot Capability:
- With your Fedora USB drive still plugged in, let your computer restart.
- If you chose Option A above (Boot Menu key), press that key repeatedly as the computer starts and select your USB drive from the list.
- If you chose Option B, your computer should now attempt to boot from the USB drive automatically.
- You should eventually see the Fedora boot menu on your screen (often with options like "Start Fedora-Workstation-Live X.X" or "Test media & install Fedora-Workstation-Live X.X").
Troubleshooting Tips during Workshop:
- USB drive not detected:
Try a different USB port (especially if you're using a USB 3.0 port on an older system, try a USB 2.0 port). Ensure the USB drive is properly formatted (Etcher handles this, but a faulty drive can cause issues). - ISO integrity check fails:
Re-download the ISO. Your internet connection might have been unstable, or the download mirror could have been faulty. - Cannot enter BIOS/UEFI:
Try different keys. Sometimes the key needs to be pressed immediately and repeatedly after powering on. Consult your computer's manual or search online for "[Your Computer Model] BIOS key". - USB drive doesn't boot:
- Ensure Fast Boot is disabled.
- Ensure Secure Boot is handled correctly (either compatible or disabled if necessary).
- Verify the USB drive was created correctly (re-flash it with Etcher if unsure).
- Check the boot order in BIOS/UEFI.
- Try a different USB drive.
By completing this workshop, you've successfully prepared your installation media and verified your system's foundational settings, making you ready for the next step of the Fedora installation.
1. Booting the Fedora Live Environment
After successfully preparing your bootable Fedora USB drive, the next crucial step is to boot your computer from this media. This will launch you into the Fedora Live environment, a fully functional Fedora system that runs directly from your USB drive without installing anything on your hard disk. This environment is invaluable for testing hardware compatibility, familiarizing yourself with Fedora, and ultimately initiating the installation process.
Accessing BIOS/UEFI Settings and Selecting the Boot Device
To boot from your USB drive, you need to instruct your computer's firmware (BIOS or UEFI) to use it as the primary boot device.
Understanding BIOS vs. UEFI Boot
- Legacy BIOS Boot:
This older method boots directly from the Master Boot Record (MBR) on a disk. It has limitations such as supporting only disks up to 2TB and a maximum of four primary partitions. When booting from a USB in legacy mode, the firmware looks for a bootable partition on the USB drive. - UEFI Boot:
The modern standard, UEFI, offers enhanced features like Secure Boot, faster boot times, and support for larger disks using the GUID Partition Table (GPT) scheme. When booting from a USB in UEFI mode, the firmware looks for an EFI System Partition (ESP) on the USB drive that contains an EFI bootloader. Fedora's installer is designed to be compatible with both legacy BIOS and UEFI. It's generally recommended to install Fedora in UEFI mode if your system supports it, as it aligns with modern hardware and provides a more robust boot environment.
Methods to Boot from USB
There are typically two primary methods to boot from your Fedora USB drive:
-
Using the One-Time Boot Menu (Recommended):
- Most modern computers offer a "Boot Menu" that allows you to select a boot device for the current session without changing the permanent boot order in the BIOS/UEFI settings.
- Procedure:
- Power on or restart your computer.
- Immediately and repeatedly press the designated Boot Menu key until the boot menu appears. Common keys include:
F12
(Dell, Lenovo, HP, Acer, Toshiba)F10
(HP sometimes, some older PCs)Esc
(HP sometimes, Asus, some older PCs)F8
(Some Asus motherboards)F9
(Some HP)Del
(Some custom builds with specific motherboards like Gigabyte)
- Once the boot menu appears, you will see a list of bootable devices. Your USB drive might be listed by its brand name (e.g., "SanDisk Cruzer"), model number, or simply as "USB HDD" or "UEFI: [USB Drive Name]".
- If you see two entries for your USB drive, one starting with "UEFI:" and one without, select the "UEFI:" option for a UEFI installation, or the non-UEFI option for a legacy BIOS installation. As mentioned, UEFI is generally preferred.
- Use the arrow keys to highlight your USB drive and press
Enter
.
-
Changing the Boot Order in BIOS/UEFI Settings:
- This method involves permanently (until you change it back) adjusting the boot priority in your computer's firmware settings. It's less convenient than the one-time boot menu but necessary if your computer doesn't offer a dedicated boot menu.
- Procedure:
- Power on or restart your computer.
- Immediately and repeatedly press the designated BIOS/UEFI Setup key until the firmware setup utility appears. Common keys include:
F2
(Acer, Asus, Dell, HP, Lenovo, Samsung, Sony, Toshiba)Del
(MSI, Gigabyte, some Asus)F1
(Some older Lenovo, HP, and IBM)
- Once in the BIOS/UEFI setup, navigate to the "Boot" tab or "Boot Options" section. The exact location and terminology vary greatly between manufacturers.
- Find the "Boot Order" or "Boot Priority" list.
- Use the provided instructions on the screen (usually arrow keys,
+
/-
keys, orF5
/F6
) to move your USB drive to the top of the boot order list. - Locate the "Save and Exit" or "Exit Saving Changes" option (often on the "Exit" tab) and press
Enter
. Confirm that you want to save changes. - Your computer will restart and should boot from the USB drive automatically.
- Important: After the Fedora installation is complete, remember to re-enter your BIOS/UEFI settings and change the boot order back to prioritize your hard drive (or the Fedora boot manager) over the USB drive.
Overview of the Live Environment Options
Once your system successfully boots from the Fedora USB drive, you'll be presented with the Fedora boot menu.
-
Boot Menu Options:
- "Start Fedora-Workstation-Live X.X" (or similar):
This is the primary option you'll use. It boots into the full Fedora Live desktop environment. This environment allows you to explore Fedora, use pre-installed applications, browse the internet, and crucially, launch the installer. - "Test media & install Fedora-Workstation-Live X.X" (or similar):
This option first performs an integrity check on the installation media (the USB drive itself) to ensure it's not corrupted. If the check passes, it then proceeds to boot into the Live environment. While you've already performed a checksum verification on the ISO, this media test can be useful to confirm that the writing process to the USB drive was successful. It adds a bit of time but can prevent issues later. For this guide, we'll assume you've performed the pre-boot ISO checksum, so you can directly choose the "Start Fedora-Workstation-Live" option for efficiency, unless you suspect an issue with the USB drive. - "Troubleshooting":
This option typically provides advanced boot options, such as booting into a basic graphics mode, running memory tests, or accessing rescue shells. You'll rarely need this for a standard installation.
- "Start Fedora-Workstation-Live X.X" (or similar):
-
What to Expect after Selection:
- After selecting "Start Fedora-Workstation-Live X.X", you'll see boot messages scroll by as the system loads. This may take a few moments depending on your system's speed and the USB drive's speed.
- Eventually, you'll be presented with the Fedora Workstation desktop environment (usually GNOME). You'll likely see a welcome screen or a direct prompt to install Fedora.
- The Live environment functions almost identically to a fully installed Fedora system, except that all changes made (e.g., saving files to the desktop, installing new software) are temporary and will be lost once you shut down or reboot the computer unless saved to a persistent storage device.
Testing Hardware Compatibility
The Fedora Live environment is an excellent tool for pre-installation hardware compatibility testing. Before committing to an installation, you can verify if your essential hardware components are recognized and function correctly. This can save you significant troubleshooting time later.
Key Components to Test:
-
Network Connectivity:
- Wired (Ethernet):
Connect an Ethernet cable. Look for a network icon (often in the top bar or system tray) that indicates a wired connection. Try opening a web browser (Firefox is typically pre-installed) and navigate to a website likefedoraproject.org
. - Wireless (Wi-Fi):
Click on the network icon (often a Wi-Fi symbol or network bars). You should see a list of available Wi-Fi networks. Select yours, enter the password, and connect. Then, test internet access via the web browser. - Importance:
Internet access is highly recommended during installation for downloading updates and additional software packages. If your Wi-Fi isn't working in the Live environment, it might indicate a missing driver issue that you'll need to address post-installation or research solutions for.
- Wired (Ethernet):
-
Display and Graphics:
- Resolution:
Check if the display resolution is appropriate for your monitor. If the resolution is too low or stretched, it might indicate an issue with graphics drivers. Fedora typically uses open-source drivers that support a wide range of GPUs, but dedicated NVIDIA or AMD GPUs sometimes benefit from proprietary drivers (which are installed post-installation). - Multi-Monitor Setup:
If you have multiple monitors, connect them and see if they are detected and configured correctly. Go to "Settings" -> "Displays" to adjust. - Brightness Control:
On laptops, test the brightness control keys.
- Resolution:
-
Input Devices:
- Keyboard:
Type in a text editor (like Gedit or LibreOffice Writer if installed) to ensure all keys function correctly, including function keys (e.g., volume, media controls, if they require driver support). - Mouse/Touchpad:
Test cursor movement, clicks, scrolling, and multi-touch gestures (if applicable to your touchpad). - USB Devices:
Plug in any essential USB peripherals (e.g., external hard drives, webcams, printers) to see if they are detected and function.
- Keyboard:
-
Audio:
- Playback:
Open an application that can play audio (e.g., a web browser with a YouTube video, or a pre-installed media player). Ensure sound plays through your speakers or headphones. Test volume control. - Microphone:
If you have a microphone, check its functionality in "Settings" -> "Sound" -> "Input".
- Playback:
-
Storage Devices:
- Internal Drives:
Open the "Files" application (Nautilus in GNOME). You should see your internal hard drives or SSDs listed under "Other Locations" or in the sidebar. Do not attempt to modify them at this stage, but confirm they are visible. - External Drives:
Plug in any external USB drives or SD cards and ensure they are mounted and accessible.
- Internal Drives:
Troubleshooting During Live Environment Testing
- No Wi-Fi or Ethernet:
If your network card is not detected, it's a significant issue. You might need to look for a temporary solution (like a USB Wi-Fi adapter if available) or be prepared to manually install drivers post-installation, which requires an alternative method of getting internet access (e.g., via tethering your phone). - Poor Graphics Performance/Incorrect Resolution:
This is often due to the use of generic open-source drivers. Proprietary drivers for NVIDIA or some AMD GPUs might be necessary for optimal performance, which are usually installed after the main OS installation. - System Freezes/Crashes:
While rare, if the Live environment is unstable, it could indicate a hardware problem (e.g., RAM issues) or a very specific hardware incompatibility. You might try booting withnomodeset
or other kernel parameters (typically found in the troubleshooting menu on the boot screen) if the issue is graphics-related.
By taking the time to boot into and test the Fedora Live environment, you gain valuable insights into how well Fedora will run on your specific hardware before you commit to the full installation, leading to a smoother and more confident experience.
Workshop: Navigating the Live Environment and Initial System Checks
This workshop is designed to familiarize you with the Fedora Live environment, allowing you to perform essential hardware compatibility tests before starting the main installation. This hands-on experience is crucial for identifying potential issues early on.
Project Goal: Successfully boot into the Fedora Live environment, verify core hardware functionality (network, display, sound, input), and explore the desktop.
Required Materials:
- Your computer with the bootable Fedora Workstation USB drive created in the previous workshop.
- An active internet connection (either via Ethernet cable or Wi-Fi network access).
Step-by-Step Tutorial:
Part 1: Booting into the Fedora Live Environment
- Insert the Bootable USB Drive:
Ensure your Fedora Workstation USB drive is securely plugged into a USB port on your computer. - Restart your Computer:
- Save any open work and close all applications.
- Initiate a restart of your computer.
- Access the Boot Menu or Change Boot Order:
- As your computer restarts, immediately and repeatedly press the designated Boot Menu key (e.g.,
F12
,F10
,Esc
) or the BIOS/UEFI Setup key (e.g.,F2
,Del
) depending on your computer's manufacturer. - If you accessed the Boot Menu:
Select your USB drive from the list (look for "UEFI: [Your USB Drive Name]" if your system supports UEFI, otherwise the non-UEFI option). PressEnter
. - If you accessed BIOS/UEFI Setup:
Navigate to the "Boot Order" section, move your USB drive to the top of the boot priority list, save changes, and exit. Your computer will restart and boot from the USB.
- As your computer restarts, immediately and repeatedly press the designated Boot Menu key (e.g.,
- Select "Start Fedora-Workstation-Live X.X":
- Once you see the Fedora boot menu on your screen, use the arrow keys to highlight
Start Fedora-Workstation-Live X.X
(where X.X is the version number). - Press
Enter
. - Wait patiently as Fedora loads. You'll see various text messages scrolling by, indicating the system is booting. This process can take a few minutes depending on your hardware and USB drive speed.
- Once you see the Fedora boot menu on your screen, use the arrow keys to highlight
- Arrive at the Live Desktop:
- You should now see the Fedora Workstation desktop environment (likely GNOME). A "Welcome to Fedora" or "Try Fedora" dialog might appear. If prompted, you can click "Try Fedora" or "Continue" to enter the Live environment fully.
Part 2: Performing Initial System Checks in the Live Environment
-
Test Network Connectivity (Critical!):
- For Wired Connection:
- Plug an Ethernet cable into your computer.
- Look for a network icon in the top right corner of the screen (usually a wired plug symbol). If it indicates a connected status, your wired network is working.
- Open the Firefox web browser (usually found in the "Activities" overview or Applications menu).
- Navigate to
https://www.fedoraproject.org
to confirm internet access.
- For Wireless Connection:
- Click on the network icon in the top right corner (it might look like Wi-Fi bars).
- Select your Wi-Fi network from the dropdown list.
- Enter your Wi-Fi password if prompted and click "Connect".
- Once connected, the icon should change to indicate a strong signal.
- Open Firefox and navigate to
https://www.fedoraproject.org
to confirm internet access.
- Troubleshooting: If you cannot connect to the internet, try a different network cable/Wi-Fi network. If it persists, note that your specific network adapter might require proprietary drivers, which you'll need to address after installation.
- For Wired Connection:
-
Verify Display and Graphics:
- Resolution:
Observe the display. Does it look sharp and clear, or is it stretched/blurry? If it's not optimal, go toActivities
(top-left corner) -> typeSettings
-> openSettings
->Displays
. Check the resolution options. - Multi-Monitor (if applicable):
Connect any external monitors. Do they light up and display content? Can you drag windows between them? CheckSettings
->Displays
for configuration options.
- Resolution:
-
Test Input Devices:
- Keyboard:
- Open
Activities
-> typeText Editor
-> openText Editor
(or similar basic text application). - Type various characters, numbers, and symbols. Test the
Caps Lock
,Shift
,Ctrl
, andAlt
keys. - On a laptop, test your function keys for volume control, screen brightness, and media playback (e.g.,
Fn
+F-key
).
- Open
- Mouse/Touchpad:
- Move the mouse cursor around the screen.
- Click on icons and open menus.
- If you have a touchpad, test two-finger scrolling and multi-touch gestures (if your hardware supports them).
- Keyboard:
-
Test Audio:
- Go to
Activities
-> openFirefox
. - Navigate to a website like
https://www.youtube.com
and play a short video. - Ensure you can hear sound through your speakers or headphones.
- Test the volume control using the keys on your keyboard or by clicking the volume icon in the top right corner of the screen.
- To check microphone input (if you have one): Go to
Activities
->Settings
->Sound
. Under theInput
tab, speak into your microphone and observe the input level meter.
- Go to
-
Check Storage Device Visibility:
- Go to
Activities
-> typeFiles
-> openFiles
(this is the file manager, also known as Nautilus). - In the left sidebar, under "Other Locations" or "Devices", you should see your internal hard drives/SSDs listed. You might also see the Fedora Live USB drive itself.
- Do not attempt to modify or format these drives at this stage, just confirm their presence.
- Plug in any external USB drives or SD cards you use frequently and check if they appear and are accessible.
- Go to
Part 3: Familiarizing Yourself with the GNOME Desktop (Optional but Recommended)
Spend some time exploring the GNOME desktop environment:
- Activities Overview:
Click "Activities" in the top-left corner or press theSuper
key (Windows key). This shows open windows, workspaces, and a search bar for applications. - Applications Menu:
From the Activities overview, click the grid icon at the bottom to view all installed applications. - Settings:
Explore theSettings
application (via Activities search or the top-right menu) to see various configuration options for your system. - Files:
Open the file manager to understand how files and folders are organized.
Troubleshooting Tips during Workshop:
- No Internet Connection:
If you absolutely cannot get internet working, you can still proceed with the installation, but you won't get updates during the process. You'll need to troubleshoot post-installation (potentially using a phone's USB tethering if supported or trying a different network adapter). - Hardware Not Detected:
If a crucial component (like keyboard or mouse) is not working, try a different USB port for external devices. If it's integrated hardware (like a laptop touchpad), note this issue. It might indicate a deeper compatibility challenge or a need for specific kernel modules. - Live Environment is Slow:
This can happen, especially with older USB 2.0 drives or slower systems. It's normal for a Live environment to be slightly slower than an installed system. As long as it's functional, you can proceed. - System Freezes:
If the system freezes frequently, it might indicate a hardware problem (e.g., failing RAM, overheating CPU) or a significant hardware incompatibility. You might need to test your hardware independently.
By completing this workshop, you've gained confidence in your ability to boot into Fedora and have a good understanding of your hardware's compatibility, setting a strong foundation for the actual installation.
2. Initiating the Installation Process
Once you have successfully booted into the Fedora Live environment and verified that your essential hardware components are functioning as expected, the next logical step is to initiate the installation of Fedora Linux onto your computer's hard drive. This involves launching the Anaconda installer, Fedora's intuitive and powerful installation program, and making some initial fundamental configurations related to language, keyboard layout, and time zone.
Launching the Anaconda Installer
Anaconda is the graphical installer used by Fedora, Red Hat Enterprise Linux (RHEL), and CentOS. It is designed to be user-friendly, guiding you through the installation process with clear steps and explanations.
- Locating the Installer Icon:
- Upon booting into the Fedora Workstation Live environment, you will typically see a prominent icon on the desktop labeled "Install Fedora" or a similar phrase.
- Alternatively, you can find the installer in the
Activities
overview (usually accessed by clicking "Activities" in the top-left corner or by pressing theSuper
key/Windows key on your keyboard) by searching for "Install" or looking in the "System Tools" category within the applications menu.
- Launching the Installer:
- Double-click the "Install Fedora" icon on the desktop.
- If searching via Activities, click on the "Install Fedora" application icon that appears.
- Anaconda will then launch, presenting you with the first configuration screen.
Language and Keyboard Layout Selection
The first few screens in the Anaconda installer focus on localization settings, which are crucial for your daily interaction with the operating system. These settings determine how the system displays text, handles character input, and processes time and date information.
Language Selection
- Purpose:
This selection dictates the language used by the Anaconda installer itself and, by default, the system language of your installed Fedora. - Procedure:
- The initial screen of the installer will present a list of languages.
- Scroll through the list or use the search bar to find your preferred language.
- Select your language (e.g., "English (United States)").
- Click "Continue" or "Done" (the button label might vary slightly based on the specific screen, but it's always in the bottom right).
Keyboard Layout Configuration
- Purpose:
This setting ensures that the keys you press on your physical keyboard produce the expected characters on the screen. Different languages and regions use different keyboard layouts (e.g., QWERTY, AZERTY, QWERTZ). If your physical keyboard has a layout that doesn't match the default, you must change it here. - Procedure:
- After selecting the language, the "Installation Summary" screen appears, which acts as a central hub for all installation settings.
- Under the "Localization" section, click on "Keyboard".
- A new window will open displaying the currently selected keyboard layouts. By default, it usually detects a generic English (US) layout.
- Adding a New Layout:
If your keyboard is different, click the+
button to add a new layout.- Search for or browse the list of available layouts (e.g., "German", "French (AZERTY)", "English (UK)").
- Select the appropriate layout and click "Add".
- Testing the Layout:
To ensure the layout works as expected, use the input field provided in the "Keyboard Layout" window. Type a few characters, especially those specific to your layout (e.g., special characters, accented letters,y
andz
if you're switching between QWERTY and QWERTZ). - Setting Primary Layout:
If you added multiple layouts, use the up/down arrows to arrange them. The top one will be the default. You can also remove unnecessary layouts using the-
button. - Switching Layouts:
Note that after installation, you can typically switch between configured layouts using a keyboard shortcut (e.g.,Super
+Space
orAlt
+Shift
) or a panel indicator. - Click "Done" to return to the "Installation Summary" screen.
Time Zone Configuration
- Purpose:
Setting the correct time zone is crucial for accurate system time, logging, scheduling tasks, and proper synchronization with network time servers (NTP). - Procedure:
- On the "Installation Summary" screen, under the "Localization" section, click on "Time & Date".
- A world map will appear, allowing you to select your location.
- Graphical Selection:
Click on your approximate geographical location on the map. Anaconda will try to determine the correct region and city. - Region and City Selection:
Alternatively, use the "Region" and "City" dropdown menus below the map to select your exact time zone. - Network Time:
The "Network Time" option (usually enabled by default) ensures that your system's time is automatically synchronized with NTP (Network Time Protocol) servers. This is highly recommended as it keeps your system clock accurate. Ensure you have an active internet connection for this to work during installation. If you do not have internet access, you can manually set the date and time. - NTP Servers:
While usually not necessary to change for most users, advanced users can configure specific NTP servers if desired. - Verify that the displayed local time is correct based on your selection.
- Click "Done" to return to the "Installation Summary" screen.
At this point, you have configured the basic localization settings for your Fedora installation. The "Installation Summary" screen now provides an overview of these choices, and you are ready to proceed to the more complex and critical stage of disk partitioning.
Workshop: Customizing Initial Installer Settings
This workshop focuses on the first interactive steps of the Fedora installation process: launching the Anaconda installer and configuring your language, keyboard layout, and time zone. These are essential foundational settings for your new operating system.
Project Goal:
Launch the Fedora installer and correctly configure the basic localization settings (language, keyboard, time zone).
Required Materials:
- Your computer running the Fedora Workstation Live environment (from the previous workshop).
- Your bootable Fedora Workstation USB drive.
- Knowledge of your preferred language, keyboard layout, and current time zone.
Step-by-Step Tutorial:
Part 1: Launching the Anaconda Installer
- Ensure you are in the Fedora Live Environment: You should be looking at the Fedora Workstation desktop.
- Locate and Launch the Installer:
- Look for a prominent icon on the desktop labeled "Install Fedora".
- Double-click this icon.
- Alternatively, if you can't find the desktop icon:
- Click on "Activities" in the top-left corner of the screen or press the
Super
key (Windows key). - In the search bar that appears, type
install
. - An icon for "Install Fedora" should appear in the search results. Click on it.
- Click on "Activities" in the top-left corner of the screen or press the
- Welcome Screen: The Anaconda installer should now launch, displaying a welcome screen.
Part 2: Configuring Language and Keyboard Layout
- Select Installation Language:
- On the first screen of the installer, a list of languages will be presented.
- Scroll through the list or use the search box to find your preferred language for the installation process and the installed system (e.g., "English (United States)").
- Click the
Continue
button at the bottom right.
- Configure Keyboard Layout:
- You will now be on the "Installation Summary" screen. This is the main dashboard for all installation settings.
- Under the "Localization" section, click on "Keyboard".
- A new window titled "Keyboard Layout" will open.
- Check Current Layout:
Observe the "Layouts" list. If your current keyboard layout is already listed and correct (e.g., "English (US)"), you can skip to step e. - Add Your Layout (if needed):
If your keyboard layout is different (e.g., German, French AZERTY, English UK), click the+
button at the bottom left of the "Layouts" section.- In the "Add a Keyboard Layout" dialog, search for or browse to your specific layout (e.g., "German").
- Select the layout and click the
Add
button.
- Test the Layout:
In the "Type here to test your keyboard" input field, type a few characters, especially those that are unique to your layout (e.g.,y
andz
for QWERTZ,Ã
,é
,ç
for French,£
for UK English). Ensure the characters appear as expected. - Remove Unnecessary Layouts (Optional):
If you now have an incorrect default layout (e.g., you added German but "English (US)" is still on top), you can select the unwanted layout and click the-
button to remove it. - Set Default Layout (if multiple):
If you have multiple layouts, the one at the top of the list will be the default. You can use the↑
and↓
buttons to reorder them. - Once you are satisfied with your keyboard layout configuration, click the
Done
button at the top left of the "Keyboard Layout" window. This will return you to the "Installation Summary" screen.
Part 3: Configuring Time and Date
- Access Time & Date Settings:
- On the "Installation Summary" screen, still under the "Localization" section, click on "Time & Date".
- A window showing a world map will appear.
- Select Your Time Zone:
- Graphical Method:
Click on your approximate geographical location on the world map. Anaconda will automatically try to select the correct "Region" and "City". - Dropdown Method:
If clicking on the map doesn't select your exact location, use the "Region" and "City" dropdown menus below the map to manually select your continent/region and then your specific city (e.g., Region:Europe
, City:Berlin
).
- Graphical Method:
- Verify Network Time (Recommended):
- Ensure the "Network Time" toggle is set to
ON
. This ensures your system automatically synchronizes its time with NTP (Network Time Protocol) servers, keeping it accurate. - Note: For "Network Time" to work, your live environment must have an active internet connection (which you verified in the previous workshop). If you do not have internet access, you can manually set the date and time, but it's less reliable.
- Ensure the "Network Time" toggle is set to
- Confirm Time Accuracy:
Check the displayed local time at the bottom of the window. It should be accurate for your selected time zone. - Once you are satisfied with your time and date configuration, click the
Done
button at the top left of the "Time & Date" window. You will return to the "Installation Summary" screen.
Verification and Next Steps:
- Review the "Installation Summary" screen. The "Localization" section should now show your chosen language, keyboard layout, and time zone.
- You have successfully completed the initial configuration steps for your Fedora installation.
- DO NOT click "Begin Installation" yet!
We still need to configure the most critical part: disk partitioning. We will cover this in the next section.
Troubleshooting Tips during Workshop:
- Wrong Keyboard Input:
If, after setting your keyboard layout, you still find characters are incorrect, go back to the "Keyboard" section and re-verify. Sometimes, there are subtle differences between keyboard models even within the same country (e.g., specific function keys). - Time Zone Incorrect:
If your time zone is not accurately displayed, ensure you've selected the correct "Region" and "City". Remember that "Network Time" relies on an active internet connection.
By diligently completing this workshop, you've taken the first concrete steps in your Fedora Linux installation, ensuring that your system's fundamental settings are correctly configured from the outset.
3. Disk Partitioning Strategies
Disk partitioning is arguably the most critical and often the most intimidating part of any Linux installation. It involves dividing your physical storage device (hard drive or SSD) into logical sections, each serving a specific purpose. A well-planned partitioning scheme is essential for system stability, performance, data organization, and future flexibility (like dual-booting or system upgrades). This section will dive deep into the fundamental concepts of disk management and then walk you through various partitioning strategies, catering to different needs and levels of complexity.
Understanding Disk Concepts
Before we configure partitions, it's vital to understand the underlying concepts:
a. Storage Device Types
- HDD (Hard Disk Drive):
Traditional mechanical drives with spinning platters and read/write heads. They are generally slower but offer large storage capacities at a lower cost per gigabyte. - SSD (Solid State Drive):
Non-mechanical drives that use flash memory. They are significantly faster than HDDs in terms of read/write speeds, boot times, and application loading, but are more expensive per gigabyte. - NVMe (Non-Volatile Memory Express):
A communication interface (protocol) and form factor for SSDs that connects directly to the PCIe bus, offering even higher speeds than SATA-based SSDs. NVMe SSDs are increasingly common in modern systems. - SATA (Serial Advanced Technology Attachment):
The most common interface for connecting HDDs and many SSDs to the motherboard. Slower than NVMe.
b. Partition Tables
A partition table is a data structure stored on the disk that defines how the disk is divided into partitions. Two main types are widely used:
- MBR (Master Boot Record):
- Legacy Standard:
Primarily used with older BIOS systems. - Limitations:
- Supports disk sizes up to 2 terabytes (TB).
- Allows a maximum of four primary partitions. To create more, one primary partition must be designated as an "extended partition," which can then contain multiple "logical partitions." This structure can be cumbersome.
- The bootloader (GRUB in Linux) is typically stored in the first sector of the MBR, and some boot information resides in the Volume Boot Record (VBR) of the active primary partition.
- Legacy Standard:
- GPT (GUID Partition Table):
- Modern Standard:
Used with UEFI systems. It's the recommended partition scheme for new installations. - Advantages:
- Supports disk sizes far exceeding 2 TB (up to 9.4 ZB).
- Allows virtually unlimited primary partitions (the actual limit is usually 128 in Windows, but Linux can handle more). No need for extended/logical partitions.
- Stores multiple copies of the partition table across the disk for redundancy, making it more robust against corruption.
- Associated with UEFI, which offers features like Secure Boot and faster boot times.
- Modern Standard:
c. Partitions vs. Volumes
- Partition:
A fundamental division of a physical storage device. A disk must have at least one partition to be usable. - Volume:
Often used interchangeably with "partition," but in the context of Logical Volume Management (LVM), a "logical volume" is a flexible, software-defined storage unit that can span multiple physical disks or partitions, offering more flexibility than fixed partitions.
d. Logical Volume Management (LVM)
LVM is a powerful storage management system that provides a layer of abstraction between the physical storage devices and the file systems. It allows for flexible disk space allocation and management.
- Key Concepts:
- Physical Volume (PV):
A physical disk or a disk partition that has been initialized for use by LVM. - Volume Group (VG):
One or more PVs are combined into a VG. A VG acts as a single pool of storage space. - Logical Volume (LV):
LVs are created from a VG and are the equivalents of partitions in a traditional partitioning scheme. File systems are created on LVs.
- Physical Volume (PV):
- Advantages of LVM:
- Resizing:
LVs can be resized (extended or shrunk) on the fly, even while the file system is in use (though shrinking usually requires unmounting). This is incredibly useful when your storage needs change without repartitioning the entire disk. - Snapshots:
LVM can create "snapshots" of logical volumes. A snapshot is a read-only copy of an LV at a specific point in time. This is invaluable for backups or testing system changes without affecting the live system. - Flexibility:
LVM can span multiple physical disks. You can add or remove PVs from a VG, allowing you to easily expand your storage by adding more disks. - Migration:
LVs can be migrated from one PV to another within the same VG.
- Resizing:
e. File Systems
A file system organizes and manages files and data on storage devices. Linux supports many file systems.
ext4
(Fourth Extended Filesystem):- Workhorse:
The default and most widely used file system for Linux. - Features:
Journaling (protects against data corruption during power failures), robust, mature, excellent performance for general use. - Use Cases:
Suitable for almost all Linux partitions (/
,/home
,/var
,/boot
if not on ESP).
- Workhorse:
XFS
:- High Performance:
Developed by SGI, optimized for high performance on large filesystems and parallel I/O. - Features:
Journaling, very scalable, supports large file systems (up to 8 exabytes), excellent for large files. - Use Cases:
Often used for/
and/home
on server installations or workstations with large data sets, especially for/var
if logs or databases are very large.
- High Performance:
Btrfs
(B-tree Filesystem):- Modern & Advanced:
A copy-on-write (CoW) file system that offers advanced features. Fedora has used Btrfs as the default for its Workstation edition since Fedora 33. - Features:
- Copy-on-Write (CoW):
Data is never overwritten in place; new versions are written to new locations. This enhances data integrity. - Snapshots:
Efficiently create read-only or read-write snapshots of the file system. This is similar to LVM snapshots but integrated directly into the file system, offering more flexibility for system rollbacks. - Subvolumes:
Allows creation of independent, mountable file system trees within a single Btrfs file system. This is often used to logically separate/
,/home
, and other directories. - Checksumming:
Data and metadata are checksummed to detect silent data corruption. - Data Scrubbing:
Can actively scan for and repair data corruption. - RAID Functionality:
Built-in RAID 0, 1, 10 support for multiple disks. - Compression:
Transparent compression can save disk space.
- Copy-on-Write (CoW):
- Use Cases:
Excellent for/
and/home
, providing built-in snapshot capabilities for system recovery and data protection. Ideal for single-disk or multiple-disk setups where Btrfs's unique features are desired.
- Modern & Advanced:
f. Swap Space
- Purpose:
Swap space (often a swap partition or swap file) is used as an extension of your system's RAM (Random Access Memory). When your physical RAM fills up, the operating system moves less frequently used data from RAM to swap space on the disk. This process is called "swapping" or "paging." - Hibernation (Suspend-to-Disk):
If you intend to use hibernation, you must have a swap partition (not a swap file, typically) at least equal to the size of your physical RAM, plus a small overhead (e.g., 1.1x RAM size). When hibernating, the entire contents of your RAM are written to the swap space, allowing the system to power off completely and resume its exact state later. - Size Considerations:
- No Hibernation:
For modern systems with ample RAM (8 GB or more), a dedicated swap partition might not be strictly necessary, especially if you don't run memory-intensive applications. A small swap file can be created dynamically if needed. However, a dedicated swap partition is still generally recommended as a fallback. A common rule of thumb is:- RAM < 2 GB: Swap = 2 x RAM
- RAM 2-8 GB: Swap = 1 x RAM
- RAM > 8 GB: Swap = 0.5 x RAM (or a fixed small size like 4 GB)
- With Hibernation:
Swap partition must be at least the size of your RAM + a small buffer (e.g., 512 MB or 10% of RAM) to ensure all RAM contents can be written to disk. For example, if you have 16 GB of RAM, a 16.5 GB or 17 GB swap partition would be appropriate.
- No Hibernation:
g. EFI System Partition (ESP)
- Purpose:
For systems using UEFI (Unified Extensible Firmware Interface) booting, a special partition called the EFI System Partition (ESP) is required. This partition stores the bootloaders for all installed operating systems (e.g., Fedora's GRUB, Windows Boot Manager) and related boot configuration files. - File System:
Must be formatted asFAT32
(specificallyvfat
). - Size:
Typically 100 MB to 1 GB. Fedora recommends 500 MB-1 GB to accommodate multiple bootloaders or future updates. - Mount Point:
During installation, it must be mounted at/boot/efi
.
h. Mount Points
In Linux, every partition or logical volume must be assigned a "mount point" – a directory in the file system hierarchy where the contents of that partition will be accessible.
/
(Root Partition):
The most crucial partition. It is the top-level directory in the Linux file system hierarchy. All other directories and files reside under/
. This partition must always be present.- Size:
Minimum 15-20 GB for basic Fedora Workstation, but 30-50 GB or more is recommended for applications and system growth.
- Size:
/boot
:
Contains the Linux kernel, initial ramdisk (initramfs), and GRUB bootloader configuration files. It must be on a separate partition if you are using LVM for your root partition, as the bootloader typically cannot read LVM volumes during the initial boot stage.- Size: 500 MB - 1 GB.
ext4
file system.
- Size: 500 MB - 1 GB.
/boot/efi
(ESP):
As mentioned, this is where the EFI System Partition (ESP) is mounted for UEFI systems./home
:
Contains users' personal files, documents, downloads, and desktop settings. Separating/home
on its own partition is a common practice.- Advantages:
- Allows you to reinstall or upgrade your operating system without affecting your personal data (you can format
/
but keep/home
). - Facilitates easier migration of user data to a new installation or distribution.
- Allows you to reinstall or upgrade your operating system without affecting your personal data (you can format
- Size:
Variable, depending on how much personal data you store. It can consume the majority of your disk space.
- Advantages:
/var
:
Contains variable data such as system logs, spool files, databases, and web server content. Can grow very large, especially on servers.- Use Cases:
Often placed on a separate partition for servers, or if you anticipate extremely heavy logging/database usage. For typical workstations, it's usually part of the root (/
) partition.
- Use Cases:
/tmp
:
Contains temporary files created by applications and the system. Cleared on reboot.- Use Cases:
Rarely a separate partition for workstations. Can be a separate partition or atmpfs
(RAM disk) for specific performance/security needs.
- Use Cases:
Automatic Partitioning
Anaconda offers an easy way to automatically partition your disk. This is suitable for most new users, especially if you are installing Fedora on a fresh disk or want to dedicate the entire disk to Fedora.
- Process:
- On the "Installation Summary" screen, under "Installation Destination", select your desired disk(s).
- Choose "Automatic" partitioning.
- Click "Done".
- What it Does:
- If you select a blank disk:
Anaconda will typically create a/boot/efi
partition (for UEFI), a/boot
partition, a root (/
) partition, and a swap partition (or swap LV if using LVM). Fedora (since version 33) by default uses Btrfs for the root and/home
subvolumes on a single Btrfs partition, with LVM for the boot and swap partitions if LVM is chosen. The standard is often a simpleext4
for/boot
,Btrfs
for/
with subvolumes@
and@home
, and aswap
partition. - If you select a disk with an existing OS (e.g., Windows):
Anaconda might offer to "replace existing Linux system(s)," "shrink existing system(s) and install Fedora," or "use free space." The "replace" option will wipe the selected OS partition. The "shrink" option attempts to resize an existing partition to make space for Fedora (use with caution and always back up data).
- If you select a blank disk:
- Advantages:
Simplicity and speed. - Disadvantages:
Less control, might not align with specific advanced needs (e.g., complex LVM setups, custom mount points, or dual-booting with specific partition requirements).
Custom Partitioning (Manual Setup)
Custom partitioning gives you complete control over how your disk is allocated. This is where a deeper understanding of the concepts above becomes crucial. This section will outline several common and useful custom partitioning scenarios.
General Steps for Custom Partitioning in Anaconda:
- On the "Installation Summary" screen, under "Installation Destination", select your desired disk(s).
- Choose "Custom" partitioning.
- Click "Done".
- The "Manual Partitioning" screen will appear. Here you can:
- Select the partitioning scheme (GPT recommended for UEFI, MBR for legacy BIOS).
- Add partitions (
+
button). - Modify existing partitions (select and click "Modify" or double-click).
- Delete partitions (
-
button). - Select between Standard Partition and LVM.
Scenario 1: Basic Setup (No LVM, No Hibernation)
This is a common and straightforward setup, suitable for most single-boot Fedora Workstation users, especially if you prefer simplicity over LVM's advanced features. Fedora's default Btrfs setup for /
and /home
subvolumes is also a form of advanced partitioning, but here we assume you want basic ext4
or XFS
partitions.
Assumptions:
UEFI system (requires ESP), single SSD/HDD.
Partition Scheme:
GPT (recommended for UEFI)
Required Partitions:
-
EFI System Partition (ESP)
- Mount Point:
/boot/efi
- Desired Capacity: 500 MB - 1 GB
- File System:
FAT32
(vfat
) - Why:
Essential for UEFI booting.
- Mount Point:
-
/boot
Partition- Mount Point:
/boot
- Desired Capacity: 1 GB
- File System:
ext4
- Why:
Stores the Linux kernel and GRUB bootloader files. Separating it from/
is good practice, especially if/
is a large partition or on LVM (though not in this non-LVM scenario, it's good habit).
- Mount Point:
-
Swap Partition
- Mount Point:
swap
- Desired Capacity:
4 GB (or 1-1.5x RAM if RAM is <8GB, or fixed 2-4GB for >8GB RAM, as no hibernation is assumed). - File System:
swap
- Why: Provides virtual memory.
- Mount Point:
-
/
(Root Partition)- Mount Point:
/
- Desired Capacity:
30 GB (minimum 20GB, 50GB+ recommended for developers or heavy users) - File System:
ext4
orXFS
(XFS is generally better for larger filesystems,ext4
is universal) - Why:
Contains the core operating system files, applications, and system data.
- Mount Point:
-
/home
Partition- Mount Point:
/home
- Desired Capacity: Remaining space on the disk.
- File System:
ext4
orXFS
- Why:
Stores user specific data and configurations. Separating it allows for easier OS reinstallations without affecting personal files.
- Mount Point:
Steps in Anaconda's Manual Partitioning:
- Select "Standard Partition" from the dropdown for the type of volume.
- Click the
+
button to add a new partition. - Configure each partition sequentially:
/boot/efi
:
Mount Point/boot/efi
, Desired Capacity 500MB, File SystemFAT
./boot
:
Mount Point/boot
, Desired Capacity 1GB, File Systemext4
.swap
:
Mount Pointswap
, Desired Capacity (e.g., 4GB), File Systemswap
./
:
Mount Point/
, Desired Capacity (e.g., 50GB), File Systemext4
./home
:
Mount Point/home
, Desired Capacity (leave blank for "fill to maximum available size" or specify remaining), File Systemext4
.
- Ensure no errors are reported by Anaconda. Click "Done" twice (the second time to confirm changes).
Scenario 2: LVM for Flexibility and Management
This scenario utilizes LVM for most of the partitions, providing significant flexibility for resizing and snapshots.
Assumptions:
UEFI system, single SSD/HDD, desire for easy future resizing.
Partition Scheme:
GPT (recommended for UEFI)
Required Partitions/LVs:
-
EFI System Partition (ESP)
- Mount Point:
/boot/efi
- Desired Capacity: 500 MB - 1 GB
- File System:
FAT32
(vfat
) - Type:
Standard Partition (ESP cannot be part of LVM).
- Mount Point:
-
/boot
Partition- Mount Point:
/boot
- Desired Capacity: 1 GB
- File System:
ext4
- Type:
Standard Partition (/boot
should typically not be on LVM because GRUB needs to access it before LVM is fully initialized).
- Mount Point:
-
LVM Physical Volume (PV)
- Type: Standard Partition.
- Mount Point: Leave blank.
- Desired Capacity: Remaining disk space.
- File System:
Leave blank or set to "physical volume for LVM". - Why:
This partition will become the foundation for your Volume Group.
-
LVM Volume Group (VG)
- Creation:
After creating the PV, Anaconda will prompt you to create a Volume Group from it. Give it a descriptive name (e.g.,fedora_vg
).
- Creation:
-
Logical Volumes (LVs) within the VG:
- Root LV (
/
)- Mount Point:
/
- Desired Capacity: 30-50 GB (or more)
- File System:
ext4
orXFS
- Mount Point:
- Swap LV (
swap
)- Mount Point:
swap
- Desired Capacity: 4 GB (or as per guidance for non-hibernation)
- File System:
swap
- Mount Point:
- Home LV (
/home
)- Mount Point:
/home
- Desired Capacity: Remaining space from the VG.
- File System:
ext4
orXFS
- Mount Point:
- Root LV (
Steps in Anaconda's Manual Partitioning (LVM Specifics):
- Select "LVM" from the dropdown for the type of volume.
- First, create Standard Partitions:
- Click
+
, create/boot/efi
(FAT32, 500MB). - Click
+
, create/boot
(ext4, 1GB).
- Click
- Create the LVM Physical Volume:
- Click
+
. Leave "Mount Point" and "File System" blank. - Set "Desired Capacity" to the remaining free space (or leave blank to use all remaining).
- Ensure "Device Type" is set to "Standard Partition".
- Under the "Filesystem" dropdown, select "Physical Volume (LVM)". Click "Add mount point".
- Click
- Create a Volume Group:
- Anaconda will automatically detect the new PV and prompt you to create a Volume Group.
- Click "Create new volume group". Give it a name (e.g.,
fedora_vg
). - Ensure your newly created PV is selected as a member. Click "Add volume group".
- Create Logical Volumes:
- Now, click
+
again to create new LVs within yourfedora_vg
. - For each LV:
- Select
fedora_vg
as the "Volume Group". - Specify "Mount Point", "Desired Capacity", and "File System" as listed above (
/
,swap
,/home
). - Ensure "Device Type" is "Logical Volume".
- Click "Add mount point".
- Select
- Now, click
- Review the summary of your LVM setup. Click "Done" twice.
Scenario 3: With Hibernation Support
Hibernation (suspend-to-disk) requires a swap partition (or LV) large enough to hold the entire contents of your RAM.
Assumptions:
UEFI system, single SSD/HDD, desire for hibernation.
Key Requirement:
The swap partition/LV must be at least equal to your system's RAM size, plus a small overhead (e.g., 1.1x RAM or RAM + 512MB).
Partition Scheme:
GPT (recommended for UEFI)
Considerations:
- If using Standard Partitions:
Create aswap
partition with the calculated size (RAM + overhead). - If using LVM:
Create aswap
Logical Volume with the calculated size.
Example Calculation:
- If you have 16 GB of RAM:
- Swap partition size = 16 GB + 512 MB = 16.5 GB (or 17 GB for safety).
- In Anaconda, specify
16500 MiB
or17 GiB
for the "Desired Capacity" of the swap partition/LV.
All other partitions (/boot/efi
, /boot
, /
, /home
) are configured as per Scenario 1 or 2, but ensure the swap partition size is correctly set.
Important Note for LVM and Hibernation:
The resume=
kernel parameter (which tells the kernel where to find the swap space for resuming from hibernation) must point to the correct swap partition/LV. GRUB (the bootloader) usually handles this automatically during installation. If you change your LVM setup or swap partition later, you might need to manually update GRUB's configuration (/etc/default/grub
and then grub2-mkconfig
).
Scenario 4: Btrfs for Advanced Features (Snapshots, Subvolumes)
Fedora Workstation uses Btrfs as its default file system for the root (/
) and /home
partitions. This scenario explains how to manually configure this (or verify the automatic setup).
Assumptions:
UEFI system, single SSD/HDD, desire for Btrfs features like snapshots and subvolumes.
Partition Scheme:
GPT (recommended for UEFI)
Required Partitions/Subvolumes:
-
EFI System Partition (ESP)
- Mount Point:
/boot/efi
- Desired Capacity: 500 MB - 1 GB
- File System:
FAT32
(vfat
) - Type: Standard Partition.
- Mount Point:
-
/boot
Partition- Mount Point:
/boot
- Desired Capacity: 1 GB
- File System:
ext4
- Type:
Standard Partition (GRUB needs/boot
separate from the main Btrfs volume to handle snapshots and subvolumes effectively during initial boot).
- Mount Point:
-
Swap Partition
- Mount Point:
swap
- Desired Capacity:
As per hibernation/no-hibernation needs. - File System:
swap
- Type:
Standard Partition (swap as a Btrfs file is possible, but a dedicated partition/LV is simpler for hibernation and generally more reliable).
- Mount Point:
-
Btrfs Root Partition (containing subvolumes)
- Mount Point:
/
(this is actually a temporary mount point for the root Btrfs volume itself during installation setup, not the final/
subvolume) - Desired Capacity: Remaining disk space.
- File System:
btrfs
- Type: Standard Partition.
- Subvolumes:
@
(for the root filesystem/
)@home
(for the/home
directory)- (Optional)
@var
,@tmp
etc. for finer control.
- Mount Point:
Steps in Anaconda's Manual Partitioning (Btrfs Specifics):
- Select "Standard Partition" from the dropdown for the type of volume.
- First, create Standard Partitions (as in Scenario 1):
- Click
+
, create/boot/efi
(FAT32, 500MB). - Click
+
, create/boot
(ext4, 1GB). - Click
+
, createswap
(swap type, desired size).
- Click
- Create the main Btrfs partition:
- Click
+
. Set "Mount Point" to/
. - Set "Desired Capacity" to the remaining free space (or leave blank to use all remaining).
- Set "File System" to
btrfs
. - Click "Add mount point".
- Click
- Configure Btrfs Subvolumes:
- Anaconda will now show the Btrfs volume. Select the Btrfs volume by clicking on it.
- You will see an option to "Configure Btrfs Subvolumes" or similar. Click this.
- Create Subvolumes:
- Click
+
to add a subvolume. - For the root subvolume, set "Subvolume Name" to
@
(orroot
). Set "Mount Point" to/
. - Click
+
again. - For the home subvolume, set "Subvolume Name" to
@home
(orhome
). Set "Mount Point" to/home
. - Anaconda will automatically create these as Btrfs subvolumes on your main Btrfs partition. You don't need to specify sizes for subvolumes; they share the total space of the Btrfs partition.
- Click
- Click "Done" to confirm subvolume configuration.
- Review the partitioning summary. Click "Done" twice.
Advantages of Btrfs Subvolumes for /
and /home
:
- Snapshots:
You can take snapshots of the@
subvolume (your root filesystem) before major updates or system changes. If something goes wrong, you can easily revert to a previous snapshot. This provides a built-in system recovery mechanism similar to system restore points. - Flexibility:
Both@
and@home
subvolumes share the same underlying Btrfs partition space, so you don't have to worry about one running out of space while the other has plenty (unless you explicitly set size quotas for them, which is an advanced feature).
Key Considerations for all scenarios:
- Backup Your Data:
Before attempting any disk partitioning, ALWAYS BACK UP ALL IMPORTANT DATA from any drives that might be affected. Partitioning errors can lead to irreversible data loss. - Review Changes Carefully:
Anaconda presents a summary of the changes it will make before committing them to disk. Review this summary very carefully. Ensure that you are not accidentally formatting a disk you intended to keep (e.g., a Windows partition or a data drive). - Dual Booting:
If you plan to dual-boot with Windows, ensure you have left sufficient unallocated space on your disk (or shrunk your Windows partition using Windows's own Disk Management utility before starting the Fedora installation). Linux cannot resize NTFS partitions as safely as Windows itself. When dual-booting with Windows (UEFI), you will likely share the existing WindowsEFI System Partition
(/boot/efi
).
By understanding these concepts and scenarios, you can confidently choose and implement a partitioning strategy that best suits your needs, whether it's a simple setup, a flexible LVM configuration, or leveraging the advanced features of Btrfs.
Workshop: Implementing a Custom Partitioning Scheme (LVM with Separate /home
and Hibernation Support)
This workshop provides a hands-on experience in setting up a custom disk partitioning scheme using Logical Volume Management (LVM), with a separate /home
partition and support for hibernation. This is a robust and flexible setup often favored by university students and professionals for its manageability.
Project Goal:
Install Fedora Linux on a single disk using a custom partitioning scheme that includes:
- An EFI System Partition (
/boot/efi
) for UEFI booting. - A separate
/boot
partition. - An LVM setup containing a root (
/
),swap
, and/home
logical volumes. - The
swap
logical volume sized appropriately for hibernation.
Required Materials:
- Your computer booted into the Fedora Workstation Live environment.
- A single hard drive or SSD in your computer where Fedora will be installed. Ensure this disk has no critical data on it, or that you have backed up all important data, as it will be fully wiped.
- Knowledge of your computer's RAM size (e.g., 8GB, 16GB, 32GB) to calculate the swap size for hibernation.
Step-by-Step Tutorial:
Part 1: Launch the Installer and Reach Disk Configuration
- Launch Installer:
From the Fedora Live desktop, double-click the "Install Fedora" icon. - Initial Settings:
Complete the "Language" and "Keyboard" settings as learned in the previous workshop, then clickDone
to return to the "Installation Summary". - Select Installation Destination:
- On the "Installation Summary" screen, click on "Installation Destination" (under "System").
- In the "Device Selection" window, select the disk where you want to install Fedora. If you have multiple disks, ensure you select the correct one. A checkmark will appear next to the selected disk.
- Under "Storage Configuration", select "Custom".
- Click
Done
at the top left of the window.
Part 2: Manual Partitioning - Creating Standard Partitions
You are now in the "Manual Partitioning" interface.
- Set Partitioning Scheme:
- At the bottom of the "Manual Partitioning" window, ensure the "New Fedora installation will use the following disk partitioning scheme" is set to "GPT/BIOS". (If you are absolutely certain your system is legacy BIOS only, you can select "MBR/BIOS", but GPT is strongly recommended for modern systems).
- Create the EFI System Partition (
/boot/efi
):- Click the
+
button below the "Mount Point" list. - In the "Add a New Mount Point" dialog:
- Select
/boot/efi
from the "Mountpoint" dropdown. - Enter
500MiB
(or1GiB
) in the "Desired Capacity" field. - Click
Add mount point
.
- Select
- This will create a
vfat
(FAT32) partition for your EFI bootloader.
- Click the
- Create the
/boot
Partition:- Click the
+
button again. - In the "Add a New Mount Point" dialog:
- Select
/boot
from the "Mountpoint" dropdown. - Enter
1GiB
in the "Desired Capacity" field. - Click
Add mount point
.
- Select
- This will create an
ext4
partition for your kernel and GRUB.
- Click the
Part 3: Manual Partitioning - Configuring LVM
Now, we will set up the LVM structure.
- Calculate Swap Size for Hibernation:
- Before proceeding, determine your system's RAM size. For example, if you have 16 GB of RAM, you need a swap partition of at least 16 GiB + a small overhead (e.g., 512 MiB or 1 GiB). Let's use
17GiB
for 16GB RAM as an example.
- Before proceeding, determine your system's RAM size. For example, if you have 16 GB of RAM, you need a swap partition of at least 16 GiB + a small overhead (e.g., 512 MiB or 1 GiB). Let's use
- Create a Partition for LVM (Physical Volume):
- Click the
+
button. - In the "Add a New Mount Point" dialog:
- Leave "Mountpoint" blank.
- Leave "Desired Capacity" blank (this will use all remaining space for LVM).
- Under "Device Type", select "LVM".
- Click
Add mount point
.
- This step tells Anaconda to create a standard partition that will be used as a Physical Volume (PV) for LVM.
- Click the
- Create a Volume Group (VG):
- After adding the LVM partition, Anaconda will automatically prompt you to create a Volume Group.
- Click the
Create new volume group
button. - Give your Volume Group a descriptive name, for example,
fedora_vg
. - Ensure the checkbox next to your newly created LVM partition (e.g.,
/dev/sda3
or/dev/nvme0n1p3
depending on your disk) is checked under "Physical Volumes". - Click
Add volume group
.
- Create Logical Volumes (LVs) within the Volume Group:
- You are now back in the "Manual Partitioning" window, with your
fedora_vg
listed. - Create the Root LV (
/
):- Select your
fedora_vg
by clicking on it. - Click the
+
button. - In the "Add a New Mount Point" dialog:
- Select
/
from the "Mountpoint" dropdown. - Enter your desired size for the root partition (e.g.,
50GiB
for a comfortable Workstation installation). - Ensure "Device Type" is set to
Logical Volume
. - Click
Add mount point
.
- Select
- Select your
- Create the Swap LV (
swap
):- Select your
fedora_vg
again. - Click the
+
button. - In the "Add a New Mount Point" dialog:
- Select
swap
from the "Mountpoint" dropdown. - Enter your calculated swap size for hibernation (e.g.,
17GiB
if your RAM is 16GB). - Ensure "Device Type" is set to
Logical Volume
. - Click
Add mount point
.
- Select
- Select your
- Create the Home LV (
/home
):- Select your
fedora_vg
again. - Click the
+
button. - In the "Add a New Mount Point" dialog:
- Select
/home
from the "Mountpoint" dropdown. - Leave "Desired Capacity" blank. This will automatically use the remaining free space in the
fedora_vg
. - Ensure "Device Type" is set to
Logical Volume
. - Click
Add mount point
.
- Select
- Select your
- You are now back in the "Manual Partitioning" window, with your
Part 4: Finalizing Partitioning and Reviewing Changes
- Review Your Partition Scheme:
- Look at the summary in the "Manual Partitioning" window. You should see your
EFI System Partition
,/boot
partition, and then yourfedora_vg
containing/
,swap
, and/home
logical volumes. - Verify the sizes, mount points, and file systems are correct.
- Example expected layout for a 250GB disk:
/dev/sda1
(ornvme0n1p1
):/boot/efi
(vfat, 500MiB) - Standard Partition/dev/sda2
(ornvme0n1p2
):/boot
(ext4, 1GiB) - Standard Partition/dev/sda3
(ornvme0n1p3
):fedora_vg
(LVM Physical Volume, ~230GiB) - Standard Partition- Inside
fedora_vg
:lv_root
:/
(ext4 or XFS, 50GiB) - Logical Volumelv_swap
:swap
(swap, 17GiB) - Logical Volumelv_home
:/home
(ext4 or XFS, ~163GiB) - Logical Volume
- Inside
- Look at the summary in the "Manual Partitioning" window. You should see your
- Apply Changes:
- Click
Done
at the top left of the "Manual Partitioning" window. - A "Summary of Changes" dialog box will appear. VERY IMPORTANT: Carefully review this summary. It lists all the partitions that will be created, formatted, and resized. Ensure you are not accidentally deleting or formatting a critical partition from another operating system if you are dual-booting.
- If the summary looks correct, click
Accept Changes
. If anything looks wrong, clickCancel
and go back to adjust your partitioning.
- Click
You have now successfully configured your custom partitioning scheme with LVM and hibernation support. You will be returned to the "Installation Summary" screen. DO NOT click "Begin Installation" yet! We still need to configure user accounts and the root password.
Troubleshooting Tips during Workshop:
- "Not enough free space":
Ensure you allocated enough space for each partition/LV. If you left a "Desired Capacity" blank, it should use the remaining space. If you specify sizes, ensure they add up to less than or equal to the available disk space. - Cannot create LVM partition:
Make sure you have selected "LVM" as the device type when creating the partition that will serve as your Physical Volume. - Accidental Deletion:
If you realize you've deleted the wrong partition, DO NOT click "Accept Changes". Click "Cancel" in the "Summary of Changes" dialog and restart the partitioning process or even the installer if necessary. If you accept the changes, the data is gone. - GPT/MBR confusion:
For new installations on UEFI systems, GPT is the correct choice. MBR is only for legacy BIOS systems or if you have a specific reason to use it. If your system is UEFI, you must have anEFI System Partition
.
By meticulously following these steps, you've demonstrated a deep understanding of disk partitioning and LVM, critical skills for any Linux user or administrator.
4. User Creation and Root Password Configuration
With the disk partitioning successfully configured, the next crucial step in the Fedora installation process is to set up user accounts and establish the system's security foundation. This involves creating a regular user account for your daily activities and configuring the powerful 'root' superuser account. Understanding the distinction between these two types of accounts and how to manage their privileges is fundamental to Linux security and system administration.
Creating a Standard User Account
In Linux, it is a best practice to perform your daily tasks as a standard, unprivileged user. This significantly enhances system security by limiting the potential damage that can be caused by malicious software or accidental commands. The regular user account created during installation will be your primary login.
-
Purpose of a Standard User:
- Principle of Least Privilege:
This security principle dictates that users should operate with the minimum necessary privileges to perform their tasks. Using a standard user account adheres to this, as it prevents accidental system-wide changes and limits the impact of security breaches. - Personal Data:
Your home directory (/home/your_username
) is where all your personal files, documents, downloads, browser settings, and application configurations are stored. This separation makes it easier to manage your personal data independently of the operating system files.
- Principle of Least Privilege:
-
Procedure in Anaconda:
- On the "Installation Summary" screen, under the "User Settings" section, click on "User Creation".
- A "Create User" dialog will appear.
- Full Name:
Enter your full name (e.g., "John Doe"). This is for display purposes. - Username:
This is the actual login name you will use (e.g.,john.doe
orjohndoe
). It should be lowercase and typically contain only letters, numbers, periods, or hyphens. It's a good practice to keep it simple and unique. Anaconda will often suggest a username based on your full name. - Password:
Enter a strong password for your user account.- Strength:
A strong password is a combination of uppercase and lowercase letters, numbers, and special characters. It should be at least 12-16 characters long. Avoid easily guessable passwords like birthdays, names, or common dictionary words. - Confirmation:
Re-enter the password in the "Confirm password" field to ensure accuracy. - Anaconda will provide a password strength indicator. Aim for a "Strong" or "Very Strong" rating.
- Strength:
- "Make this user administrator":
This is a crucial checkbox.- Recommendation:
Leave this checkbox checked. This grants your standard user account the ability to usesudo
(Substitute User Do) to temporarily elevate privileges to perform administrative tasks without logging in as the root user directly. This is the recommended and most secure way to manage a Linux system. - Why
sudo
is preferred over direct root login:- Accountability:
When usingsudo
, your specific username is logged for every administrative action. If you logged in directly as root, it would just show "root" performing the action, making it harder to trace who did what in a multi-user environment. - Security:
You're less likely to accidentally execute dangerous commands that could harm your system assudo
requires conscious password entry. Also, if a security vulnerability exists in an application running under your regular user, it cannot immediately compromise the entire system.
- Accountability:
- Recommendation:
- "Require a password to use this account":
This checkbox is usually enabled by default and should remain enabled. It ensures that your account is password-protected. - "Advanced":
Clicking this button provides more granular control, such as specifying the User ID (UID), Group ID (GID), primary group, secondary groups, and the home directory path. For most users, the defaults are perfectly fine, and you don't need to adjust these. - Click "Done" to create the user and return to the "Installation Summary" screen.
Setting a Strong Root Password Configuration
The root
account (also known as the superuser) is the most powerful account on a Linux system. It has unrestricted access and can perform any operation, including deleting critical system files or formatting disks. Because of this immense power, securing the root account is paramount.
-
Purpose of the Root Account:
- The root account is designed for system administration tasks that require elevated privileges, such as installing software, managing services, configuring network interfaces, and maintaining the file system.
- Traditionally, administrators would log in directly as
root
for these tasks. However, modern Linux distributions, including Fedora, strongly discourage direct root logins for daily use due to the security risks.
-
Procedure in Anaconda:
- On the "Installation Summary" screen, under the "User Settings" section, click on "Root Password".
- A "Root Password" dialog will appear.
- Password: Enter a strong password for the root account. This password should be different from your regular user account password. Again, use a combination of uppercase and lowercase letters, numbers, and special characters, and aim for a long length.
- Confirmation:
Re-enter the password in the "Confirm password" field. - "Lock root account":
This checkbox is crucial for security.- Recommendation:
Leave this checkbox checked. When checked, it disables direct login to the root account (via console or SSH). This forces administrators to usesudo
from their regular user account to perform administrative tasks. - Why lock the root account?:
- Enhanced Security:
Prevents brute-force attacks against the root account. If someone tries to guess the root password, they won't be able to directly log in. - Auditability:
As mentioned withsudo
, administrative actions are logged against your regular user account, providing better audit trails. - Reduced Risk of Accidental Damage:
By requiringsudo
, you are less likely to accidentally execute destructive commands while permanently logged in as root.
- Enhanced Security:
- If unchecked:
If you uncheck this, direct root login will be enabled. While sometimes used in specific server environments, it's generally not recommended for desktop workstations due to the increased security risk.
- Recommendation:
- Click "Done" to set the root password and return to the "Installation Summary" screen.
Understanding sudo
and its Importance
As previously discussed, sudo
is a program that allows a permitted user to execute a command as the superuser or another user, as specified by the security policy. It is the cornerstone of privilege escalation on most modern Linux systems.
- How it Works:
When you prepend a command withsudo
(e.g.,sudo dnf update
), the system asks for your user password (not the root password). If your user is configured to havesudo
privileges (which it will be if you checked "Make this user administrator" during creation), the command is executed with root privileges. sudoers
File:
The/etc/sudoers
file (and files in/etc/sudoers.d/
) defines which users or groups can usesudo
and what commands they can execute. The installer automatically adds your administrative user to thewheel
group, which is typically configured insudoers
to allowsudo
access.- Security Best Practices:
Always usesudo
for administrative tasks. Avoid logging in asroot
directly unless absolutely necessary (e.g., in a rescue environment wheresudo
might not be configured or available).
By meticulously configuring your standard user account with sudo
privileges and locking the root account, you establish a robust and secure foundation for your Fedora Linux system, adhering to modern security best practices. You are now ready for the final stage of the installation process.
Workshop: Securing Your Initial Installation
This workshop guides you through the critical steps of creating a regular user account and securing the root superuser account during the Fedora installation. These steps are fundamental for system security and responsible administration.
Project Goal: Create a secure standard user account with administrative privileges (via sudo
) and set a strong, locked root password.
Required Materials:
- Your computer in the Fedora Live environment, with disk partitioning already configured (from the previous workshop).
- A chosen username and strong passwords for both your standard user account and the root account (ensure they are different).
Step-by-Step Tutorial:
Part 1: Creating a Standard User Account
- Navigate to User Creation:
- You should be on the "Installation Summary" screen.
- Under the "User Settings" section, click on "User Creation".
- Fill in User Details:
- Full Name: Enter your full name (e.g., "Alice Smith"). This is for display.
- Username:
Enter your desired login username (e.g.,alice.smith
orasmith
). The installer might suggest one based on your full name. Ensure it's all lowercase and suitable for a system username. - Password:
Type a strong password for your user account.- Recommendation: At least 12-16 characters, combining uppercase and lowercase letters, numbers, and special symbols. Avoid dictionary words.
- Confirm password:
Re-type the password exactly to confirm. - Observe the password strength indicator. Aim for "Strong" or "Very Strong".
- Grant Administrator Privileges:
- Ensure the checkbox "Make this user administrator" is checked. This is crucial for allowing your user account to use
sudo
for administrative tasks. - Leave "Require a password to use this account" checked (this is the default and should remain).
- Ensure the checkbox "Make this user administrator" is checked. This is crucial for allowing your user account to use
- Complete User Creation:
- Click the
Done
button at the top left of the "Create User" window. You will be returned to the "Installation Summary" screen.
- Click the
Part 2: Setting and Locking the Root Password
- Navigate to Root Password Configuration:
- On the "Installation Summary" screen, under the "User Settings" section, click on "Root Password".
- Set the Root Password:
- Password:
Type a strong password for the root account. This password MUST be different from your standard user's password.- Recommendation: Use a unique, complex password following the strong password guidelines (length, character types).
- Confirm password:
Re-type the root password to confirm. - Again, observe the password strength indicator.
- Password:
- Lock the Root Account:
- Crucially, ensure the checkbox "Lock root account" is checked.
- Explanation: This disables direct login to the root account, forcing you to use
sudo
from your standard user account for administrative tasks. This is a vital security measure.
- Complete Root Password Configuration:
- Click the
Done
button at the top left of the "Root Password" window. You will return to the "Installation Summary" screen.
- Click the
Part 3: Verification and Preparation for Installation
- Review "Installation Summary":
- Take a moment to review the entire "Installation Summary" screen.
- Ensure that all sections are configured correctly:
- Localization:
Language, Keyboard, Time & Date. - System:
Installation Destination (your disk partitioning). - User Settings:
User Creation (User name, administrator privileges) and Root Password (Root password set, account locked).
- Localization:
- There should be no red exclamation marks or warnings next to any section.
- Proceed to Installation:
- If everything looks correct and complete, click the "Begin Installation" button at the bottom right of the "Installation Summary" screen.
Troubleshooting Tips during Workshop:
- Password Strength Warning:
If the installer warns that your password is too weak, it is highly recommended to choose a stronger one. For a learning environment, you might be tempted to use a simple one, but practice good security habits from the start. - Root Account Unlocked:
If you accidentally left the root account unlocked, you can go back to the "Root Password" section and check the "Lock root account" box. - "User creation is incomplete":
If you receive this warning, go back to the "User Creation" section and ensure all fields are filled out and passwords are confirmed.
By successfully completing this workshop, you've not only configured your system's access but also implemented key security best practices for your new Fedora Linux installation. The actual installation process will now commence, leveraging all the configurations you have carefully set up.
5. Finalizing the Installation and First Boot
With all the necessary configurations in place—from disk partitioning to user account setup—you are now ready to initiate the final phase of the Fedora Linux installation. This involves reviewing a summary of your choices, allowing the Anaconda installer to write the operating system to your disk, and then performing the crucial first boot into your newly installed Fedora system.
Reviewing the Installation Summary
Before the installer commits any changes to your disk, it provides a comprehensive summary of all the settings you have configured. This is your last opportunity to review and confirm that everything is set up precisely as you intend.
- Location:
After configuring disk partitioning, user creation, and root password, you will be returned to the "Installation Summary" screen. This screen acts as a dashboard, with each section (Localization, System, User Settings) indicating whether it's complete or requires attention. - Purpose of Review:
- Verification:
Confirm that the selected language, keyboard layout, and time zone are correct. - Critical Check:
Double-check the "Installation Destination" summary. This is the most important part to verify. Ensure that the correct disk is selected, and the partitioning scheme (e.g.,/boot/efi
,/boot
, LVM with/
,swap
,/home
) aligns with your plan. If you are dual-booting, ensure you haven't accidentally selected your existing operating system's partition for formatting. - User & Root:
Confirm that your user account is created with administrator privileges and that the root account is locked (if that was your intention).
- Verification:
- Identifying Issues:
If any section has a warning icon (often a red circle with an exclamation mark), it indicates that a necessary configuration is incomplete or problematic. Click on that section to address the issue before proceeding. - Committing to Installation:
Once you are absolutely certain that all settings are correct and you are comfortable with the changes that will be made to your disk, the "Begin Installation" button will become active.
Initiating the Installation Process
- Click "Begin Installation":
Once satisfied with your review, click the "Begin Installation" button at the bottom right of the "Installation Summary" screen. - Installation Progress:
The installer will start copying files, creating file systems, installing packages, and setting up the bootloader.- Progress Bar:
You will see a progress bar indicating the installation status. - Detailed Information:
The installer might display information about the currently installing package or component. - Background Processes:
While the installation is in progress, the Fedora Live environment remains active. You can continue to browse the web, use the file manager, or explore other applications. This can be useful for looking up information or troubleshooting if you encounter any unexpected delays, though it's generally best to let the installer work without too much interference.
- Progress Bar:
- Duration:
The installation process can take anywhere from 15 minutes to over an hour, depending on your computer's hardware (especially disk speed and CPU), the speed of your USB drive, and whether you have an internet connection (which allows for package updates during installation).
Monitoring Progress and Completion
- Patience is Key:
Avoid interrupting the installation process once it has begun. Do not shut down your computer, remove the USB drive prematurely, or force reboot. Interrupting the installation can lead to a corrupted system that won't boot. - Installation Complete:
Once the installation is finished, the progress bar will disappear, and a message will appear (usually at the bottom of the installer window or on the "Installation Summary" screen) indicating that Fedora Linux has been successfully installed. The button will change from "Begin Installation" to "Finish Installation" or "Reboot System".
Rebooting the System
- Click "Finish Installation" / "Reboot System":
Click the button to restart your computer. - Remove Installation Media:
The installer will usually prompt you to remove the USB drive before rebooting. If not, physically remove the Fedora installation USB drive from your computer as soon as the system starts to reboot (or after the screen goes black). This is crucial to prevent your computer from booting back into the Live environment instead of your newly installed system. - First Boot from Disk:
- Your computer should now attempt to boot from its internal hard drive or SSD where Fedora was installed.
- If you used a one-time boot menu (e.g.,
F12
) during the initial boot, your system's permanent boot order should still prioritize your internal disk, so it will boot automatically. - If you permanently changed the boot order in BIOS/UEFI to boot from the USB drive, you might need to re-enter BIOS/UEFI settings during this first reboot and change the boot order back to prioritize your internal hard drive/SSD (specifically, the Fedora boot manager, which will appear as "Fedora" in the boot device list).
- You should see the GRUB boot menu, which will typically list "Fedora Linux" as the default option. It might also list other operating systems if you dual-booted.
- Press
Enter
on "Fedora Linux" or wait for the countdown to expire. - Fedora will continue its boot sequence, displaying system messages.
Post-Installation Setup (Welcome Screen, Initial Updates)
Upon the first successful boot into your new Fedora system, you might encounter a post-installation setup wizard or a welcome screen.
- Welcome Screen / Initial Setup Wizard:
- Fedora Workstation typically presents a "Welcome" or "Initial Setup" wizard after the first boot. This wizard helps you with:
- Privacy Settings:
Location services, problem reporting. You can enable or disable these based on your preferences. - Third-Party Repositories:
This is an important step. Fedora offers to enable third-party repositories, which provide access to proprietary software, multimedia codecs (like MP3 playback), and device drivers (like NVIDIA drivers) that are not included in the default Fedora repositories due to licensing or open-source philosophy. It is highly recommended to enable these for a richer desktop experience and better hardware support. - Online Accounts:
Integration with Google, Microsoft, Nextcloud, or other online accounts for calendar, email, and contacts synchronization. You can set this up now or later. - Set Up Enterprise Login (Optional):
For enterprise environments. - Create User (Optional):
If you did not create a user during installation, this step would appear. (Since you did, it won't for your main user).
- Privacy Settings:
- Walk through these screens, making your selections, and click "Next" or "Done" as appropriate.
- Finally, you will be prompted to "Start Using Fedora Linux". Click this.
- Fedora Workstation typically presents a "Welcome" or "Initial Setup" wizard after the first boot. This wizard helps you with:
- Initial System Updates:
- After the welcome wizard, you will likely be greeted by the GNOME desktop.
- It is critically important to immediately perform a full system update. This ensures your system has the latest security patches, bug fixes, and software versions available since the ISO was released.
- How to update:
- Using GNOME Software Center:
You might see a notification about available updates. Open the "Software" application (search for "Software" in Activities or find it in the applications menu). Go to the "Updates" tab and click "Download" or "Update All". - Using Terminal (Recommended for students):
Open a terminal (search for "Terminal" in Activities). Enter your user password when prompted (this is the password you set for your regular user account during installation).sudo
: Executes the command with superuser privileges.dnf
: The default package manager for Fedora.update
: Downloads and installs available updates for all installed packages.--refresh
: Ensures the package repositories are synchronized with the latest metadata before checking for updates.- The update process might take a considerable amount of time, downloading hundreds of megabytes or even gigabytes of data, depending on how old your ISO is.
- If a new kernel is installed, or critical system components are updated, the terminal will prompt you to reboot. It's always a good idea to reboot after major system updates to ensure all changes take effect.
- Using GNOME Software Center:
- Why update immediately?:
Newly installed systems often run on software versions that were current when the ISO was compiled, which could be several months old. Updates patch security vulnerabilities, fix bugs, and improve stability and performance.
By following these steps, you will have successfully installed Fedora Linux on your system and performed the essential initial configurations, setting you on the path to exploring the power and flexibility of your new operating system.
Workshop: Performing Post-Installation System Updates and Basic Configuration
This workshop will guide you through the crucial first steps after your Fedora Linux installation is complete: performing a full system update and making some basic initial configurations. This ensures your system is secure, stable, and ready for use.
Project Goal:
Successfully log in to your newly installed Fedora system, perform a full system update, and configure a few essential basic settings.
Required Materials:
- Your computer with Fedora Linux successfully installed (from the previous steps).
- An active internet connection (wired or Wi-Fi).
- Your regular user account username and password.
Step-by-Step Tutorial:
Part 1: First Login to Your New Fedora System
- Boot Your System:
Ensure your computer is powered on and the Fedora boot menu (GRUB) appears. Select "Fedora Linux" (it's usually the default) and pressEnter
or wait for the timeout. - Login Screen:
You will be greeted by the GNOME login screen.- Click on your user account (the one you created during installation).
- Enter your user account password.
- Press
Enter
or click "Sign In".
- Initial Setup Wizard (if present):
- On the first login, Fedora Workstation often presents a "Welcome" or "Initial Setup" wizard.
- Privacy Settings:
Configure your privacy preferences (e.g., Location Services, Automatic Problem Reporting). Read the descriptions and make your choices, then clickNext
. - Third-Party Repositories:
This is important. Click the toggle toON
to enable access to proprietary drivers and multimedia codecs. This will greatly enhance your Fedora experience. ClickNext
. - Online Accounts:
You can link online accounts (Google, Microsoft, Nextcloud, etc.) now or skip this step and do it later. ClickNext
. - Ready to Go:
Click "Start Using Fedora Linux".
Part 2: Performing a Full System Update (Essential!)
It is crucial to update your system immediately after installation to get the latest security patches, bug fixes, and software versions.
- Open the Terminal:
- Click "Activities" in the top-left corner of the screen or press the
Super
key (Windows key). - In the search bar, type
Terminal
. - Click on the "Terminal" application icon to open it.
- Click "Activities" in the top-left corner of the screen or press the
- Execute the Update Command:
- In the terminal, type the following command:
- Press
Enter
. - You will be prompted for your password. This is your user password (the one you just used to log in), not the root password. Type it and press
Enter
. (Note: The password will not be displayed as you type, which is normal for security.) dnf
(the package manager) will now download updated repository metadata, then check for available updates.- It will list all packages that need to be updated and ask for confirmation (
Is this ok [y/N]:
). Typey
and pressEnter
. - Wait for the download and installation process to complete. This can take a significant amount of time and download size, depending on how many updates are available.
- Reboot if Necessary:
- After the
dnf update
command finishes, if a new kernel was installed or critical system components were updated, the terminal might suggest or explicitly prompt you to reboot. - To reboot, type the following command in the terminal:
- Press
Enter
and provide your password if prompted.
- After the
Part 3: Basic Post-Installation Configurations
After the update and reboot, you can configure some basic settings.
- Explore GNOME Settings:
- Click "Activities" and search for
Settings
. Open the "Settings" application. - Background:
Go to "Background" and choose a desktop background that you like. - Appearance:
Explore themes, light/dark mode, and accent colors. - Notifications:
Customize how applications send notifications. - Sound:
Verify your audio input/output devices and adjust volumes. - Power:
Set power saving options for your laptop or desktop. - Privacy:
Review and adjust privacy settings, such as location services and screen lock behavior. - Users:
You can manage user accounts here, including changing passwords or adding new users.
- Click "Activities" and search for
- Install Common Software (Example: VLC Player):
- Open the "Software" application (search for "Software" in Activities).
- Use the search bar to find applications (e.g.,
VLC
). - Click on the application and then click the
Install
button. - You might be prompted for your user password to confirm the installation.
- This is the graphical way to install software.
- Alternatively, using the terminal:
Type
y
and pressEnter
when prompted.
- Install GNOME Tweaks (Optional but Recommended for GNOME users):
- GNOME Tweaks (or
gnome-tweaks
) provides additional customization options for the GNOME desktop that aren't available in the standard "Settings" application. - In the terminal:
- After installation, open "Tweaks" (search for "Tweaks" in Activities) and explore its options, such as extensions, fonts, and top bar settings.
- GNOME Tweaks (or
Troubleshooting Tips during Workshop:
sudo
not working:
Ifsudo
gives an error like "User is not in the sudoers file," it means you did not check "Make this user administrator" during installation. You'll need to boot into rescue mode or a Live environment to fix this. (For now, assume this won't happen if you followed instructions).- Internet Connection Lost:
If updates fail due to a lost internet connection, verify your network setup in "Settings" -> "Network" and retry thesudo dnf update --refresh
command. - Software not found:
If you can't find a specific piece of software in the "Software" center or withdnf install
, it might be in a third-party repository that you haven't enabled, or it might have a different package name. Try searching online for "install [Software Name] Fedora" to find specific instructions.
By diligently working through this workshop, you've secured your Fedora installation, updated it to its latest state, and performed essential initial configurations, preparing you for a productive and enjoyable experience with your new Linux system.
Troubleshooting Common Installation Issues
Even with careful preparation, sometimes unexpected issues can arise during or immediately after the Fedora Linux installation. This section is designed to help you diagnose and resolve some of the most common problems encountered by new users, providing practical solutions and explaining the underlying concepts.
Boot Issues
Boot issues are among the most frustrating problems, as they prevent you from accessing your system. They typically manifest as a blank screen, error messages from GRUB, or an inability to boot into either Fedora or your previous operating system (in a dual-boot scenario).
a. Black Screen After Installation
- Symptom:
The computer boots, but after the GRUB menu (or immediately if GRUB is hidden), the screen goes black, sometimes with a blinking cursor, and nothing else happens. - Common Causes:
- Graphics Driver Problems:
The most frequent cause. The default open-source graphics drivers might not initialize correctly with your specific GPU, or your monitor's resolution/refresh rate is not detected properly. - Kernel Parameters:
Missing or incorrect kernel parameters in GRUB. - UEFI/BIOS Mode Mismatch:
Attempting to boot an OS installed in UEFI mode on a system configured for Legacy BIOS, or vice-versa.
- Graphics Driver Problems:
- Solutions:
- Temporary Graphics Mode (nomodeset):
- Reboot your computer.
- At the GRUB menu (you might need to press
Esc
orShift
rapidly during boot if the menu doesn't appear by default), highlight "Fedora Linux". - Press the
e
key to edit the boot entry. - Locate the line starting with
linux
orlinuxefi
. - Navigate to the end of this line and add
nomodeset
(ensure there's a space before it). - Press
F10
orCtrl+X
to boot with the modified parameters. - If you can boot into the desktop, this confirms a graphics driver issue. You will need to install the correct proprietary drivers (e.g., NVIDIA) or troubleshoot your open-source drivers after you're logged in.
- Permanent Fix:
Once booted, ifnomodeset
works, you need to make this change permanent (or install proprietary drivers). For a simple permanentnomodeset
: This is a temporary workaround. The ultimate solution is to install proper graphics drivers.
- Check UEFI/BIOS Mode:
- Restart your computer and enter your BIOS/UEFI settings (e.g.,
F2
,Del
). - Verify that your boot mode (UEFI vs. Legacy/CSM) matches how Fedora was installed. If you installed in UEFI mode, ensure your system is configured to boot in UEFI mode and CSM (Compatibility Support Module) is disabled. If you installed in Legacy mode, ensure CSM is enabled.
- Ensure Secure Boot and Fast Boot are disabled as they can sometimes interfere.
- Restart your computer and enter your BIOS/UEFI settings (e.g.,
- Temporary Graphics Mode (nomodeset):
b. GRUB Rescue Prompt or GRUB Errors
- Symptom:
Instead of the GRUB menu, you see agrub rescue>
prompt, or GRUB fails with an error like "error: no such partition", "unknown filesystem", or "invalid arch-independent file name". - Common Causes:
- Missing or Corrupted GRUB Installation:
GRUB was not installed correctly to the Master Boot Record (MBR) or EFI System Partition (ESP). - Partition Table Corruption:
The disk's partition table was corrupted. - Incorrect UUIDs/Paths:
GRUB cannot find the necessary partitions or files because the UUIDs or paths in its configuration are wrong (e.g., after resizing partitions or changing disk order). - Dual-Boot Overwrite:
Another OS installer overwrote the GRUB bootloader.
- Missing or Corrupted GRUB Installation:
- Solutions (GRUB Reinstallation):
This often requires booting from a Fedora Live USB.- Boot from Fedora Live USB:
Boot your computer from the Fedora Workstation Live USB (the same one you used for installation). - Open a Terminal:
Once in the Live environment, open a terminal. - Identify Partitions:
- Use
lsblk -f
to identify your Fedora partitions:- Your root partition (
/
, oftenext4
,XFS
, orBtrfs
) - Your
/boot
partition (if separate,ext4
) - Your
/boot/efi
partition (if UEFI,vfat
) - Note their
/dev/sdXN
or/dev/nvme0n1pN
names.
- Your root partition (
- Use
- Mount Partitions:
(Replace
# Assuming /dev/sdXN is your Fedora root partition sudo mount /dev/sdXN /mnt # If you have a separate /boot partition: sudo mount /dev/sdYN /mnt/boot # If you have a separate /boot/efi partition (UEFI systems): sudo mount /dev/sdZN /mnt/boot/efi
sdXN
,sdYN
,sdZN
with your actual partition names.) - Chroot into the Installed System:
- Reinstall GRUB:
- For UEFI systems:
(Replace
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Fedora --recheck /dev/sdX
/dev/sdX
with your entire disk, e.g.,/dev/sda
or/dev/nvme0n1
, NOT a partition number.) - For Legacy BIOS/MBR systems:
(Replace
/dev/sdX
with your entire disk, e.g.,/dev/sda
.)
- For UEFI systems:
- Generate GRUB Configuration:
- Exit Chroot and Reboot: Remember to remove the Live USB.
- Boot from Fedora Live USB:
c. "No operating system found" or boots directly into Windows (Dual-boot)
- Symptom:
The computer doesn't show the GRUB menu and either says "No operating system found" or boots directly into an existing Windows installation. - Common Causes:
- Boot Order Incorrect:
The BIOS/UEFI boot order is not set to prioritize the Fedora boot manager. - GRUB Not Installed to Correct Drive/ESP:
GRUB was installed to the wrong disk or partition. - Windows Overwrote GRUB:
After installing Fedora, you installed or reinstalled Windows, and Windows overwrote the GRUB bootloader.
- Boot Order Incorrect:
- Solutions:
- Adjust BIOS/UEFI Boot Order:
- Reboot and enter BIOS/UEFI settings.
- Go to the "Boot" section.
- In a UEFI system, look for "Fedora" in the boot order list. Move it to the top. If "Fedora" is missing, GRUB might not have been properly installed to the ESP.
- In a Legacy BIOS system, ensure the correct disk containing Fedora is prioritized.
- Save changes and exit.
- Reinstall GRUB (as described in the "GRUB Rescue" section):
This is often necessary if Windows has overwritten the bootloader. Boot from Live USB and reinstall GRUB, ensuring it points to the correct ESP (for UEFI) or MBR (for Legacy BIOS).
- Adjust BIOS/UEFI Boot Order:
Disk Detection Problems
Sometimes, the installer simply doesn't see your hard drive or SSD.
- Symptom:
The Anaconda installer shows no disks available for installation, or only sees the USB drive. - Common Causes:
- SATA Mode (IDE/AHCI):
Your disk controller is set to IDE mode instead of AHCI mode in BIOS/UEFI. - RAID Configuration:
If your disks are configured in a hardware RAID array (e.g., Intel RST, AMD RAIDXpert), Linux might not have native drivers for it during installation. - Faulty Drive/Connection:
A physical problem with the drive or its cables.
- SATA Mode (IDE/AHCI):
- Solutions:
- Change SATA Mode to AHCI:
- Reboot and enter BIOS/UEFI settings.
- Look for "SATA Mode," "SATA Configuration," or "Storage" options.
- Change the setting from "IDE" (or "RAID") to "AHCI".
- Caution: If you have Windows installed on the same disk, changing this setting can prevent Windows from booting. You might need to adjust Windows registry settings before changing to AHCI, or repair Windows boot after. It's best to make this change before installing any OS.
- Disable RAID/Intel RST:
- If your system uses Intel Rapid Storage Technology (RST) or a similar pseudo-RAID solution, you might need to disable it in BIOS/UEFI and switch to AHCI mode.
- This usually requires a specific procedure if Windows is already installed to avoid data loss or boot issues. Consult your motherboard/PC manufacturer's documentation for disabling RST for Linux installation.
- Check Physical Connections:
- Ensure the SATA data and power cables (for HDDs/SATA SSDs) or NVMe slot (for NVMe SSDs) are securely seated.
- Test with a different drive or cable if possible.
- Change SATA Mode to AHCI:
Network Connectivity Issues During Installation
While not always a blocker, internet connectivity during installation allows for downloading updates and additional packages, which can improve the out-of-the-box experience.
- Symptom:
The installer reports "No network device found" or fails to connect to the internet during package download. - Common Causes:
- Missing Drivers:
The network interface card (NIC) requires a driver that is not included in the Live environment kernel. - Incorrect Configuration:
DHCP issues, wrong Wi-Fi password, or static IP misconfiguration. - Hardware Problem:
Faulty network card or cable.
- Missing Drivers:
- Solutions:
- Verify Cable/Wi-Fi Password:
Double-check your Ethernet cable connection or Wi-Fi password (case-sensitive). - Use a Different Network Adapter:
If available, try a USB Wi-Fi adapter or a different Ethernet port/cable. - Check Network Settings in Live Environment:
- In the Fedora Live desktop, go to "Settings" -> "Network".
- Ensure your wired or wireless connection is enabled and correctly configured (usually DHCP for wired and correct SSID/password for Wi-Fi).
- Try manually configuring an IP address if you suspect DHCP issues (advanced).
- Research Proprietary Drivers:
If your NIC requires a proprietary driver (common with some Wi-Fi cards), you might need to install Fedora offline and then manually install the driver post-installation (which will require an alternative way to get the driver files, e.g., downloading on another computer).
- Verify Cable/Wi-Fi Password:
Installation Freezing or Crashing
- Symptom:
The Anaconda installer freezes, crashes, or encounters an unexpected error during the installation process. - Common Causes:
- Corrupted Installation Media:
The USB drive itself is corrupted or was improperly created. - Faulty RAM:
Bad RAM modules can cause system instability and crashes during intensive operations like installation. - Overheating:
Insufficient cooling can lead to component failure or instability. - Disk Errors:
Bad sectors on the target disk. - Hardware Incompatibility:
Rare, but specific hardware might conflict with the kernel used in the installer.
- Corrupted Installation Media:
- Solutions:
- Verify Installation Media:
- Re-download the Fedora ISO and verify its checksum.
- Re-create the bootable USB drive using a reliable tool like BalenaEtcher, preferably using a different USB drive.
- Use the "Test media & install Fedora-Workstation-Live X.X" option at the Fedora boot menu to check the USB drive's integrity before proceeding.
- Run a Memory Test (Memtest86+):
- Most Fedora Live USBs include Memtest86+ (often found in the "Troubleshooting" section of the GRUB menu).
- Boot into Memtest86+ and let it run for several passes (at least 4-8 hours, or overnight) to check for RAM errors. If errors are found, you might have faulty RAM that needs to be replaced.
- Check Disk Health:
- In the Live environment, use tools like
gnome-disks
(Disks utility) orsmartctl
(fromsmartmontools
package, might need to be installed) to check the health of your target disk. Look for SMART errors or bad sectors.
- In the Live environment, use tools like
- Monitor Temperatures:
During installation, check your CPU and GPU temperatures. If they are excessively high, it could indicate a cooling problem. - Try Alternative Installer (Advanced):
If the graphical installer consistently fails, you might try a text-based installation (if available for Fedora) or a network installation (minimal image), but this is much more complex.
- Verify Installation Media:
General Troubleshooting Advice
- Read Error Messages:
Don't just click "OK" or "Cancel". Read the error messages carefully. They often provide clues about the root cause of the problem. - Consult Documentation and Forums:
The Fedora Project website, its official documentation, and community forums (e.g., Ask Fedora, Reddit's r/Fedora) are excellent resources. Search for your specific error message or hardware combination. - Provide Details:
When asking for help online, provide as much detail as possible:- Exact Fedora version.
- Specific error messages (copy-paste if possible).
- Your computer's make and model, and key hardware components (CPU, GPU, RAM, storage).
- How you created the installation media.
- Any custom partitioning or BIOS/UEFI settings you changed.
- Take Photos:
If you get a non-booting system or error messages on the screen, take a clear photo with your phone. It can be invaluable for others to help you. - Persistence:
Linux installation can sometimes be a learning curve. Be persistent, and don't be afraid to seek help from the community.
Troubleshooting is an integral part of learning Linux. By understanding these common issues and their solutions, you'll be better equipped to handle unforeseen challenges and gain a deeper insight into how your system works.
Workshop: Diagnosing and Resolving a Simulated Installation Problem
This workshop simulates a common post-installation boot problem (GRUB corruption) and guides you through the process of diagnosing and resolving it using the Fedora Live environment. This hands-on experience will build your troubleshooting skills, which are invaluable for any Linux user.
Project Goal:
Simulate a GRUB boot issue and successfully use the Fedora Live environment to repair the bootloader, allowing your installed Fedora system to boot normally.
Required Materials:
- Your computer with Fedora Linux already installed (preferably on a clean, non-critical disk for this exercise).
- Your bootable Fedora Workstation USB drive.
- An understanding of your installed Fedora's partition layout (e.g., where
/
,/boot
, and/boot/efi
are located).
Step-by-Step Tutorial:
Part 1: Simulating a GRUB Corruption (DO NOT do this on a critical production system!)
- Boot into your Installed Fedora System:
Ensure your Fedora system boots normally. - Open a Terminal:
Go to Activities and search for "Terminal". - "Corrupt" the GRUB Bootloader (Carefully!):
- For UEFI Systems:
We will overwrite the GRUB EFI file on the ESP.- First, identify your EFI System Partition (ESP). You can use
lsblk -f
and look for thevfat
partition mounted at/boot/efi
. Note its device name (e.g.,/dev/sda1
or/dev/nvme0n1p1
). - Now, use a command to partially corrupt it. This is a simplified "corruption" for educational purposes. We'll zero out a small part of the EFI bootloader.
- Enter your password.
- First, identify your EFI System Partition (ESP). You can use
- For Legacy BIOS/MBR Systems:
We will overwrite the MBR.- Identify your main disk (e.g.,
/dev/sda
). - Enter your password.
- Identify your main disk (e.g.,
- Verify "Corruption":
After running the command, try rebooting your system:sudo reboot
. - Expected Outcome: Your system should now fail to boot into Fedora. You might see a
grub rescue>
prompt, "No operating system found," or it might boot directly into Windows if you dual-boot. This confirms our "simulation" worked.
- For UEFI Systems:
Part 2: Diagnosing the Problem (Simulated)
- Observe the Boot Failure:
Note any error messages or what happens (or doesn't happen) on screen. This is your first clue. - Attempt to Boot from Live USB:
Insert your Fedora Workstation Live USB drive. - Boot from Live USB:
Restart your computer and use the one-time boot menu (e.g.,F12
) or change BIOS/UEFI settings to boot from the Live USB. - Select "Start Fedora-Workstation-Live X.X":
Boot into the Live environment.
Part 3: Resolving the GRUB Issue
- Open a Terminal in the Live Environment:
Once on the Live desktop, open a terminal. -
Identify Your Installed Fedora Partitions:
- Use the command
lsblk -f
to list all block devices and their file systems. - Look for your Fedora partitions:
- Your root partition (
/
): Typicallyext4
,XFS
, orBtrfs
. Note its device name (e.g.,/dev/sda3
or/dev/mapper/fedora_vg-root
if using LVM). - Your separate
/boot
partition (if you created one): This will beext4
and usually smaller (e.g.,1G
). Note its device name (e.g.,/dev/sda2
). - Your
EFI System Partition
(/boot/efi
) for UEFI systems: This will bevfat
and relatively small (e.g.,500M
). Note its device name (e.g.,/dev/sda1
). - Example: If you used LVM and
/dev/sda
is your disk:/dev/sda1
(vfat, for/boot/efi
)/dev/sda2
(ext4, for/boot
)/dev/sda3
(LVM2_member)/dev/mapper/fedora_vg-root
(ext4/XFS/Btrfs, for/
)/dev/mapper/fedora_vg-home
(ext4/XFS/Btrfs, for/home
)/dev/mapper/fedora_vg-swap
(swap, forswap
)
- Your root partition (
- Use the command
-
Mount the Installed Fedora System's Partitions (Chroot Environment):
- Mount the Root Partition:
- Mount the
/boot
Partition (if separate): - Mount the
/boot/efi
Partition (for UEFI systems only): - Bind Mount Essential Directories:
- Chroot into the Installed System:
Your terminal prompt should now change, indicating you are in the chroot environment (e.g.,
(chroot) [root@localhost /]#
).
-
Reinstall and Update GRUB:
- For UEFI Systems (most common for Fedora):
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Fedora --recheck /dev/sda
- Replace
/dev/sda
with your actual physical disk where Fedora is installed (e.g.,/dev/nvme0n1
). Do NOT use a partition number here! --bootloader-id=Fedora
is the name that will appear in your UEFI boot options.
- Replace
- For Legacy BIOS/MBR Systems:
- Replace
/dev/sda
with your actual physical disk where Fedora is installed (e.g.,/dev/sdb
). Do NOT use a partition number here!
- Replace
- Generate GRUB Configuration File: This step ensures GRUB knows where your kernel and other system files are located.
- This command should run without major errors and report that it's adding various boot entries.
- For UEFI Systems (most common for Fedora):
-
Exit Chroot and Reboot:
- Type
exit
and pressEnter
to exit the chroot environment. - Unmount the mounted partitions:
- Reboot your computer:
- Crucially, remove the Fedora Live USB drive as soon as the system begins to reboot (or after the screen goes black) to ensure it boots from your internal drive.
- Type
Part 4: Verification
- Observe the Boot Process:
Your computer should now boot normally, presenting the GRUB menu and then launching into your installed Fedora system. - Log In:
Log in to your Fedora desktop. - Confirm Functionality:
Open a terminal and runsudo dnf update
to ensure the system can communicate with repositories.
Troubleshooting during Workshop:
lsblk -f
Confusion:
If you're unsure which partition is which, try mounting them one by one (e.g.,sudo mount /dev/sdaX /mnt_test
) and exploring their contents (ls /mnt_test
). For Btrfs,sudo mount -o subvolid=0 /dev/sdaX /mnt_test
to mount the top-level Btrfs volume and thenls /mnt_test/@
to see subvolumes.- GRUB Commands Fail:
Double-check your partition paths (/dev/sdaX
) and ensure you used the correct command for your boot mode (UEFI vs. Legacy BIOS). Read the error messages carefully. chroot
error:
Ifchroot
fails, ensure all necessary directories (/sys
,/proc
,/dev
,/run
) are bind-mounted correctly and your root partition is mounted at/mnt
.
By successfully navigating this simulated problem, you've acquired practical skills in Linux bootloader repair, a fundamental skill for any system administrator or advanced user. This exercise reinforces the importance of understanding disk layouts and command-line tools for system recovery.
Conclusion and Next Steps
Congratulations on completing your Fedora Linux installation! You've embarked on a significant journey, from understanding Fedora's core philosophy and preparing your installation media to mastering complex disk partitioning strategies and securing your system. This comprehensive guide has equipped you with the knowledge and practical skills to confidently install Fedora and begin your exploration of the Linux operating system.
Summary of the Installation Process
Throughout this guide, we covered the essential stages of installing Fedora Linux:
- Preparation:
We started by delving into Fedora's characteristics, system requirements, and the critical steps of downloading and verifying the installation ISO. You learned how to create a reliable bootable USB drive using tools like BalenaEtcher, Rufus, or thedd
command, and how to configure your BIOS/UEFI settings for a smooth boot process. - Live Environment Exploration:
You gained hands-on experience booting into the Fedora Live environment, an invaluable tool for testing hardware compatibility (network, graphics, audio, input devices) before committing to the full installation. - Initial Configuration:
We navigated the Anaconda installer, meticulously setting up your preferred language, keyboard layout, and time zone, laying the groundwork for your localized system. - Deep Dive into Disk Partitioning:
This was arguably the most detailed section, where you gained a profound understanding of disk concepts such as MBR vs. GPT, the role of LVM, various file systems (ext4
,XFS
,Btrfs
), swap space, and the critical EFI System Partition. You explored and implemented different custom partitioning strategies, including LVM with separate/home
and hibernation support, and the advanced Btrfs subvolume setup. This mastery of disk management is a cornerstone of Linux administration. - User and Security Setup:
You learned the importance of creating a standard user account withsudo
privileges for daily tasks and securing the powerfulroot
account by setting a strong password and locking direct login. This adheres to fundamental Linux security best practices. - Finalization and First Boot:
We concluded with the final review of your settings, initiating the installation, monitoring its progress, and performing the crucial first boot into your newly installed Fedora system. You then learned to perform essential post-installation tasks like updating the system and configuring basic settings. - Troubleshooting:
Crucially, we covered common installation issues and provided detailed solutions for boot problems (GRUB errors, black screen), disk detection issues, network problems, and installation crashes. The troubleshooting workshop empowered you with practical skills to diagnose and resolve real-world problems.
Resources for Further Learning
Installing Fedora is just the beginning of your Linux journey. The vast and vibrant Linux ecosystem offers endless opportunities for learning and growth. Here are some essential resources to continue your exploration:
- Fedora Project Official Documentation:
The primary source for all things Fedora. It contains comprehensive guides on using Fedora, managing packages, configuring the system, and troubleshooting. - Ask Fedora Community Forum:
A community-driven platform where you can ask questions, share your experiences, and get help from other Fedora users and developers. - Fedora Magazine:
Features articles on new Fedora releases, software reviews, tutorials, and community news. - Linux Command Line Tools:
- "The Linux Command Line" by William Shotts:
A highly recommended free online book that teaches you the fundamentals of the Linux command line in a clear and practical way. Essential for any aspiring Linux user. man
pages:
Built-in manual pages for almost every command. Just typeman [command_name]
(e.g.,man dnf
,man ls
) in your terminal for detailed information.tldr
:
A community-maintained collection of simplified and practical examples for common command-line tools. Install it viasudo dnf install tldr
.
- "The Linux Command Line" by William Shotts:
- Online Learning Platforms:
Websites like Coursera, edX, Udemy, and LinkedIn Learning offer structured courses on Linux administration, scripting, and various open-source technologies. - Official Documentation for GNOME/KDE Plasma:
If you're using Fedora Workstation (GNOME) or a KDE Spin, familiarize yourself with the official documentation for your desktop environment.- GNOME Documentation: https://help.gnome.org/
- KDE Plasma Documentation: https://docs.kde.org/stable5/en/kde-workspace/plasma-desktop/index.html
Basic Post-Installation Tasks
Now that your system is installed and updated, here are some common tasks you might want to perform:
- Install Your Favorite Software:
- Use the GNOME Software application to browse and install popular applications (web browsers, media players, office suites, development tools).
- Alternatively, use the
dnf
command-line package manager: Examples:firefox
,vlc
,libreoffice
,git
,code
.
- Install Proprietary Drivers (if needed):
- If you have a dedicated NVIDIA GPU, you'll likely want to install the proprietary NVIDIA drivers for optimal performance, especially for gaming or professional workloads. Fedora provides instructions on how to do this, often through third-party repositories like RPM Fusion.
- For some Wi-Fi adapters or other hardware, you might also need specific drivers.
- Configure GNOME Tweaks (for GNOME users):
- Install
gnome-tweaks
(sudo dnf install gnome-tweaks
). - Use it to customize various aspects of your GNOME desktop, such as fonts, themes, extensions, and startup applications.
- Install
- Set Up Cloud Sync (Optional):
- Integrate with cloud storage services like Google Drive, Nextcloud, or Dropbox (via web accounts in Settings, or dedicated clients).
- Learn Basic Terminal Commands:
- Start with simple commands:
ls
,cd
,pwd
,mkdir
,rm
,cp
,mv
,cat
,grep
,nano
(orvi
/vim
). - Practice using
sudo
anddnf
. - Understand file permissions (
chmod
,chown
).
- Start with simple commands:
- Explore the File System Hierarchy:
- Understand the purpose of common directories:
/bin
,/etc
,/home
,/usr
,/var
,/tmp
,/opt
,/mnt
,/media
,/srv
.
- Understand the purpose of common directories:
- Backup Strategy:
- Plan for regular backups of your important data. Tools like
Deja Dup
(Gnome Disks Backup),rsync
, orBorgBackup
can be invaluable. If you used Btrfs, explore its snapshot capabilities.
- Plan for regular backups of your important data. Tools like
Embrace the Journey
Linux is more than just an operating system; it's a philosophy and a community. The journey of learning Linux is continuous and rewarding. You've taken a significant first step by confidently installing Fedora. Embrace the challenges, experiment, and never stop learning. The power and flexibility of Linux are now at your fingertips. Welcome to the world of open source!