Fedora Linux: A Complete Beginner’s Guide to Installation

What is Fedora?

Fedora Linux is a modern, powerful, and secure Linux distribution sponsored by Red Hat.
It’s known for its focus on cutting-edge technologies, stability, and openness.
Fedora is an excellent choice for both beginners and advanced users who want a clean and up-to-date operating system.

Why Choose Fedora?

✅ Latest software – you get updates sooner than most other distros
✅ Stability & security – excellent update system and SELinux by default
✅ Modern look – clean GNOME desktop (or other editions)
✅ Great for developers – official repos, Flatpak, Podman
✅ No ads, no telemetry
✅ Works perfectly for dualboot with Windows


What You’ll Need

  • 💻 A computer with Windows and free disk space
  • 💾 USB flash drive (min. 4 GB, 8 GB or more recommended)
  • 🌐 Internet connection (recommended)
  • 📥 Fedora Workstation ISO image
  • 🛠 A USB writing tool (e.g. Rufus or balenaEtcher)

1️⃣ Download the Fedora ISO

  1. Go to getfedora.org
  2. Choose Fedora Workstation
  3. Click Download Now
  4. Save the file, for example:
    Fedora-Workstation-Live-x86_64-39-1.5.iso

2️⃣ Create a Bootable USB (Windows)

  1. Download and launch Rufus
  2. Select your USB drive
  3. In Boot selection, choose the Fedora ISO
  4. Set:
    • Partition scheme: GPT (for UEFI)
    • File system: FAT32
  5. Click Start and confirm that all data on the USB will be erased

📌 Note: This will permanently erase all data on the USB drive.


3️⃣ Prepare Windows for Dualboot

  1. In Windows, open Disk Management
  2. Locate your main disk (e.g. C:) → right-click → Shrink Volume
  3. Enter the amount of space for Fedora (e.g. 50,000 MB for 50 GB)
  4. Confirm – you’ll see Unallocated space

📌 This process does not erase your Windows data, it only frees up space.


4️⃣ Boot from USB

  1. Insert the USB drive
  2. Restart and press your boot menu key (F12, ESC, DEL, or F2)
  3. Select the USB device
  4. The Fedora live environment will load → click Install to Hard Drive

5️⃣ Installing Fedora + Partition Setup

After choosing language and keyboard:

⚙ 5.1 Select Custom Partitioning

  • Choose Custom
  • You will see NTFS (Windows) and EFI partitions:
    • Do not delete NTFS or EFI partitions
    • Find the unallocated space you just created in Windows

🧩 5.2 Create New Partitions in Free Space

Mount Point File System Size Note
/boot/efi FAT32 300 MB Use existing EFI (do not format)
swap swap 2–4 GB Optional, or use swapfile
/ ext4/btrfs 20+ GB Root (system)
/home ext4/btrfs rest User data

📌 Important:

  • Mark /boot/efi but do not format it – or Windows may not boot
  • Leave NTFS partitions untouched
  • Do not assign mount points to Windows partitions

When done → Done → Accept changes


6️⃣ User Setup

  • Enter full name and computer name
  • Choose a username and password
  • Optional: enable auto-login

7️⃣ Start Installation

  • Click Begin Installation
  • Wait 10–20 minutes
  • Click Finish installation
  • Reboot and remove the USB drive

8️⃣ Booting into Fedora / Windows

After reboot, you’ll see the GRUB menu:

  • Fedora Linux → Fedora
  • Windows Boot Manager → Windows

🎉 Congratulations! You now have a fully working Fedora + Windows dualboot system.


💡 Post-Installation Tips

  • Install software via GNOME Software or the terminal:
    sudo dnf install package_name
    
  • Enable RPM Fusion for multimedia & extra packages:
    sudo dnf install \
    https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
    https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
    
  • Keep your system updated:
    sudo dnf upgrade
    
  • Recommended apps:
    • GIMP, VLC, LibreOffice, Steam (Flatpak)
    • GNOME Tweaks – customize GNOME look and feel

📜 Fedora Linux – Essential Terminal Commands

Basic Commands

Command Description
pwd Show current directory
ls List directory contents
cd .. Go one level up
mkdir name Create a directory
rm file Delete a file

Package Management (DNF)

Command Description
sudo dnf upgrade Update the system
sudo dnf install pkg Install a package
sudo dnf remove pkg Remove a package
sudo dnf search term Search for a package

Service Management (systemd)

Command Description
systemctl status Show all service statuses
sudo systemctl start service Start a service
sudo systemctl enable service Enable at boot

Disks & Files

Command Description
df -h Disk usage info
lsblk List block devices
mount Show mounted drives