After successfully installing Ubuntu 26.04 LTS in the previous chapter, now is the time to install the second Linux distribution in this series: Fedora Workstation 44. Although the basic principles of Linux installation remain similar, you will find some interesting differences between these two distributions, ranging from how the live environment works, the different installer appearance, to the default technology choices such as filesystem and swap management. Fedora uses an installer named Anaconda, which since Fedora 42 comes with a new web-based interface (WebUI) that is more compact and modern, replacing the old hub-and-spokes design that had been used for many years; starting with Fedora 43, this interface also became the default for all Spins and KDE editions, not just Workstation. Fedora Workstation 44 itself is released with GNOME 50 as the latest version of its desktop environment. Running these two systems in parallel inside VirtualBox will give you a broader perspective on the diversity of the Linux ecosystem and the philosophical differences behind each distribution.
Creating a Virtual Machine in VirtualBox
The first step is to prepare a new virtual machine (VM) where Fedora Workstation 44 will run. The process is similar to creating the VM for Ubuntu in the previous chapter, but there are some configuration details that need to be adjusted to Fedora's requirements.
Required Hardware Specifications
The Fedora Project specifies the following requirements for Fedora Workstation 44:
| Component | Minimum | Recommended |
|---|---|---|
| RAM | 2 GB | 4 GB or more |
| Disk space | 20 GB | 40 GB or more |
| Processor | x86_64 (64-bit) | x86_64 (64-bit) |
We will allocate resources above the minimum so that Fedora inside the VM runs comfortably for the learning purposes of this book.
Note about CPU architecture:
Since several recent releases, Fedora requires a processor with the x86-64-v2 baseline (supporting SSE4.2 and above). Very old 64-bit processors without this support will not be able to boot into Fedora 44. This is generally not a problem if VirtualBox is configured to pass through host CPU features, because almost all processors produced in the last 15 years already meet this requirement.
Creating a New VM
Open VirtualBox Manager, then follow these steps:
- Click the New button at the top of the VirtualBox Manager window to open the new VM creation dialog.
- In the Name and Operating System section, fill in the following information:
- Name: Type a VM name, e.g.,
Fedora Workstation 44. VirtualBox will automatically detect the OS type and version after you add the ISO file. - Folder: Leave as default, the location where VM files will be stored.
- ISO Image: Click the folder icon to the right of the field, then browse and select the Fedora Workstation 44 ISO file you downloaded in Chapter 5. The Type and Version fields will automatically be filled as Linux and Fedora (64-bit) after the file is selected.
- Name: Type a VM name, e.g.,
- The option Proceed with Unattended Installation prevents VirtualBox from running an unattended installation that bypasses the installer interface. Uncheck it so you can follow the installation process manually and understand each step.
- Click Next to proceed to the Hardware page.
- In the Hardware section, set resource allocation:
- Base Memory: Set to 4096 MB (4 GB). This ensures GNOME and Anaconda run smoothly inside the VM.
- Processors: Set to 2 vCPUs. Two virtual CPUs are sufficient for daily desktop use.
- Click Next to proceed to the Hard Disk page.
- In the Hard Disk section, select Create a Virtual Hard Disk Now and set its size to 50 GB. VirtualBox will create a virtual disk file in VDI format (VirtualBox Disk Image) which by default is dynamically allocated; the file will only use as much host disk space as the data actually stored, and will not immediately consume 50 GB.
- Click Next, review the configuration summary, then click Finish.
Your new VM now appears in the left panel of VirtualBox Manager.
Installation Process
Running the VM and Booting from ISO
- Select the Fedora Workstation 44 VM in VirtualBox Manager, then click the Start button.
- The VM will power on and display the GRUB boot menu with several options:
- Start Fedora-Workstation-Live: loads the GNOME live environment directly from the ISO.
- Test this media & start Fedora-Workstation-Live: runs an integrity check of the ISO file first before loading the system. This option is useful if you want to ensure the ISO is not corrupted before installation.
- Troubleshooting: boot troubleshooting menu.
- Select Start Fedora-Workstation-Live and press Enter. Fedora will load the live environment from the ISO into memory. This process takes one to three minutes depending on the host computer's speed.
- After the live environment finishes loading, you will be greeted by the Fedora GNOME Desktop running directly from the ISO. This is a temporary session; any changes you make here will not be saved after the VM is restarted.
- Click the Activities button in the top-left corner (or press the Super key) to start the installation, then search for Install to Hard Drive in the search box. Click that icon to launch the Anaconda WebUI.
Note: The system runs entirely in RAM memory on the live environment. Heavy workloads such as opening many applications at once can slow down the system if your VM is only allocated 2 GB of RAM. Allocating 4 GB as recommended will make the experience smoother.
Language Selection
The first page that appears after the Anaconda WebUI opens is the Welcome screen.
- Choose the language to be used during the installation process on the Welcome screen. Options include Indonesian for Bahasa Indonesia or English for English. Choosing English is often easier for learning purposes because most documentation, tutorials, and support forums are available in English. The language choice here does not affect the installed operating system's language; the system language can be changed after installation via Settings.
- Click Next to proceed after selecting the language.
Installation Method
Method 1: Use Entire Disk
The only partitioning option directly available in the Fedora 44 Anaconda WebUI is Use entire disk; Fedora will automatically partition and format the entire selected disk. All data previously on that disk will be completely erased. This is suitable for installation in a VirtualBox VM because the virtual disk is indeed empty and dedicated to Fedora.
Click on the available virtual disk to select it, ensure the Use entire disk option is selected, then click Next to continue.
Behind the scenes, all partition creation logic, filesystem selection, and mount point configuration in Anaconda—whether in automatic or manual workflows—is handled by Blivet, a Python library that serves as Anaconda's storage management backend. You will not interact directly with Blivet, but knowing its name is useful if you ever encounter that term in an error message or installation log.
Anaconda will create the following partition layout automatically when using this configuration on a UEFI-based system:
| Partition | Size | Filesystem | Mount Point | Function |
|---|---|---|---|---|
| EFI System Partition (ESP) | ~600 MB | FAT32 | /boot/efi | Boot loader for UEFI |
| /boot | ~1–2 GB | ext4 | /boot | Kernel and initramfs |
| Root | Remaining space | Btrfs | / | Operating system and data |
Anaconda automatically creates two Btrfs subvolumes inside the Btrfs root partition:
- root: mounted as
/, containing the entire operating system. - home: mounted as
/home, containing all users' directories and data.
Separating /home into its own subvolume makes snapshot operations and system recovery easier later on.
Why Btrfs?
Fedora Workstation uses Btrfs as the default filesystem since Fedora 33. Btrfs is a modern filesystem that supports snapshots (instant backups of filesystem state), transparent data compression, and built-in data integrity checking. This differs from Ubuntu which uses ext4, a more conservative but very mature and stable filesystem. The choice of Btrfs reflects Fedora's philosophy as a distribution that always adopts the latest technologies.
Note about Swap:
Fedora has not used a traditional swap partition or swap file since Fedora 33. Instead, Fedora uses zram, a mechanism that compresses data in RAM itself and stores it back into a swap area that also resides in RAM. This is managed automatically bysystemd-zram-generatorwithout requiring additional disk space. zram-based swap is much faster than disk-based swap because read/write operations happen within RAM.
Disk Encryption (Optional)
There is an option Encrypt my data that allows you to encrypt the entire disk contents using LUKS (Linux Unified Key Setup), the standard disk encryption commonly used in Linux, still on the Storage Configuration page.
You will be prompted to create a passphrase if this option is enabled. This passphrase will be required every time the system is powered on, before GRUB loads the system, so that data on the disk cannot be accessed at all without the correct passphrase.
- All data on the disk will be transparently encrypted. You use the system as usual with no difference after entering the passphrase at boot.
- Do not forget the encryption passphrase. There is no recovery mechanism if the passphrase is lost; data on the disk cannot be recovered.
- LUKS encryption adds a small computational overhead that is usually unnoticeable on modern hardware.
Encryption is not necessary for installation in a VirtualBox VM used for learning purposes; leave the Encrypt my data option disabled.
Method 2: Custom Partitioning with GParted (Before Installation)
The Fedora 44 Anaconda WebUI does not provide a manual partitioning interface directly inside the installer. Partitions must be prepared in advance using an external tool such as GParted inside the live environment before launching Anaconda if you want to use your own partition scheme, for example to leave space for dual boot or to create a specific layout.
Note: Manual partitioning is only recommended for users who already understand disk partitioning concepts. Use Use entire disk for installation in a VM and for learning purposes.
Here is the complete custom partitioning workflow:
Step 1: Enter the Live Environment, Do Not Install Immediately
Close or ignore the welcome screen that appears when the Fedora GNOME live environment finishes loading. Do not click Install to Hard Drive yet.
Step 2: Install GParted
GParted is not available by default in the Fedora live environment. Open a Terminal and run:
sudo dnf install gparted -yThis command downloads and installs GParted from the Fedora repositories. Internet connection in the live environment is required.
Step 3: Create Partition Table and Partitions
Open GParted via the Activities Overview. You will be prompted to enter the password to run it with administrator privileges.
Perform the following steps in GParted:
- Select the disk to use from the dropdown menu in the top-right corner of GParted.
- Create a new partition table: Device > Create Partition Table > GPT (required for UEFI systems).
- Create the following partitions:
Partition Size Filesystem Flags EFI 600 MB FAT32 esp, boot Swap 2–4 GB linux-swap - Root 20 GB or more Btrfs or ext4 - Home Remaining space Btrfs or ext4 - - Make sure the EFI partition gets the esp and boot flags: right-click on the EFI partition > Manage Flags > check
espandboot. These flags are mandatory so that the UEFI system can recognize that partition as the ESP. - Click the Apply button (green checkmark icon) in the toolbar to apply all changes to the disk.
Why create a manual swap partition if Fedora already uses zram?
As explained earlier, Fedora uses zram as a replacement for traditional swap by default. However, zram does not support hibernation (saving the entire RAM contents to disk and then powering off the computer completely). If you need hibernation functionality, a traditional disk-based swap partition like in the table above is still needed in addition to zram. For learning purposes in a VM, this feature is generally not required.
Step 4: Run Anaconda and Assign Mount Points
Run Anaconda from the desktop after partitions have been created in GParted. Anaconda will detect the existing partitions when it reaches the Storage Configuration page and allow you to manually assign mount points for each partition.
Continue using Use entire disk for the purposes of this book; select the available virtual disk, ensure that option is selected, then click Next to continue.
Starting and Completing the Installation
The Fedora 44 Anaconda WebUI goes directly to the confirmation page after storage configuration. User account creation is not done inside Anaconda; this step will be done after the installation finishes and the system is rebooted for the first time.
- Review the configuration you have made, i.e., language and the disk to be used. Use the navigation buttons to go back to previous pages if anything needs to be changed.
- Click Erase data and install to begin the installation process. Anaconda will start formatting the disk, creating partitions, and copying all necessary packages.
- The installation screen will display a progress bar and information about the ongoing process, such as partition creation, package installation, bootloader configuration, and so on. This process usually takes 10 to 20 minutes depending on the host computer's speed.
- A Exit to live desktop button will appear after the installation finishes. Click that button, then shut down the VM.
- Remove the ISO manually via Settings > Storage > IDE Controller, then power on the VM again.
First Login to Fedora
After the VM restarts, a Setup window appears to complete the final stage, i.e., account creation and some other configurations. Click Start Setup to begin.
- Privacy: configure Location Services and anonymous diagnostic reporting. You can disable both if you do not want to share data.
- Time Zone: choose your time zone.
- Third-Party Repositories: Fedora offers the option to enable third-party repositories, including RPM Fusion and proprietary drivers. Enabling this option is highly recommended because it will simplify the installation of additional software not available in the official Fedora repositories.
- Create Account: create the first user account by filling in Full Name, Username, and Password. Make sure the password you create is strong enough. This account automatically gets
sudoaccess via thewheelgroup. - Setup Complete: setup finished, click Start Using Fedora Linux.
System Update After Installation
A mandatory step after installing Fedora or any Linux distribution is to update the system. These updates ensure you get all security fixes, bug fixes, and improvements that have been released since the ISO file was created. Fedora is known as a fast-moving distribution in adopting updates, so there may be several new packages available right after installation finishes.
Fedora 44 uses DNF5 as the default package manager—as has been the case since Fedora 41—which is a new generation of DNF rewritten in C++ for better performance and more efficient memory usage compared to Python-based DNF4. Although there are significant internal changes, the command syntax remains compatible with previous DNF; the commands you already know still work in the same way.
Updating via GNOME Software (GUI)
Fedora includes GNOME Software, a graphical application center that also serves as a system update tool.
- Press the Super key to open the Activities Overview, type
Software, then press Enter to open GNOME Software. - Click the Updates tab; the application will automatically check for available updates.
- A list of packages will be displayed if updates are available. Click Update to start the update process.
- GNOME Software will prompt for a restart after the process finishes if the update includes kernel updates or core system components. Click Restart to restart the VM.
Updating via Terminal
The most direct and commonly used way to update Fedora is through the terminal using the dnf command. This method gives full visibility into all packages being updated.
Open a Terminal and run the following command:
sudo dnf upgradeThe dnf upgrade command does two tasks at once: it refreshes the package list database from all registered repositories and installs the latest versions of all packages that have updates. This differs from apt which separates these two operations into apt update and apt upgrade; DNF combines them into one command.
You will be prompted to confirm by typing y when the question "Is this ok [y/N]:" appears. DNF will display the list of packages to be updated, download size, and installation size before asking for confirmation.
Restart after the process finishes if the update list includes the Linux kernel:
sudo rebootThe installation of Fedora Workstation 44 in VirtualBox is now complete. You now have two Linux systems running side by side: Ubuntu 26.04 LTS and Fedora Workstation 44, each with its own characteristics and approach. Ubuntu comes with a philosophy of stability and ease of use, while Fedora is committed to the latest technologies and full openness. Operating both in parallel is a very effective way to build a comprehensive understanding of Linux.

