Skip to content

Downloading and Installing AlmaLinux

This guide provides AlmaLinux download channels, installation methods, and configuration recommendations to help you quickly deploy a stable and reliable system environment.

This guide is based on the latest stable release, AlmaLinux 10 (if you need a long-term maintenance older release, you can choose AlmaLinux 9). Before downloading, please confirm the current specific version number on the official page.

Quick Download

Select the version, architecture, image type, and a nearby region to get the direct ISO link and command-line download command:

curl -fLO https://mirrors.aliyun.com/almalinux/10/isos/x86_64/AlmaLinux-10-latest-x86_64-minimal.iso

链接使用官方 -latest- 软链,始终指向该版本最新小版本(当前 10.x / 9.x)。 下载后请用 sha256sum -c CHECKSUM 校验完整性。若某架构/类型组合在所选镜像不存在,请改用「官方下载页」。

Official Download Channels

International Official Sources

AlmaLinux Official Website

  • Official website: almalinux.org/get-almalinux
  • Update frequency: real-time sync
  • Supported protocols: HTTPS, HTTP
  • Download speed: recommended for users outside China

GitHub Release Page

bash
# Download via GitHub Releases
wget https://github.com/AlmaLinux/almalinux-deploy/releases/latest/download/almalinux-deploy.sh

China Mirror Sites

Alibaba Cloud Mirror

bash
# Alibaba Cloud mirror address
https://mirrors.aliyun.com/almalinux/

# ISO download example
wget https://mirrors.aliyun.com/almalinux/10/isos/x86_64/AlmaLinux-10-latest-x86_64-dvd.iso

Tsinghua University Mirror

bash
# Tsinghua University mirror address
https://mirrors.tuna.tsinghua.edu.cn/almalinux/

# Quick download
curl -O https://mirrors.tuna.tsinghua.edu.cn/almalinux/10/isos/x86_64/AlmaLinux-10-latest-x86_64-minimal.iso

USTC Mirror

bash
# USTC mirror address
https://mirrors.ustc.edu.cn/almalinux/

# Download command (10 is the latest version; for AlmaLinux 9, change the 10 in the path to 9)
wget https://mirrors.ustc.edu.cn/almalinux/10/isos/x86_64/AlmaLinux-10-latest-x86_64-boot.iso

NetEase Mirror

bash
# NetEase mirror address
https://mirrors.163.com/almalinux/

# Download link
https://mirrors.163.com/almalinux/10/isos/aarch64/

ISO Image Types

Full Edition (DVD)

AlmaLinux 10 DVD

bash
# File information
Filename: AlmaLinux-10-latest-x86_64-dvd.iso
Size: ~9.5 GB
Contents: full desktop environment + development tools
Best for: offline installation, full feature requirements

Included components:

  • GNOME desktop environment
  • Complete software package repository
  • Development toolchain (GCC, Python, etc.)
  • Multimedia support
  • Office software suite

AlmaLinux 9 DVD

bash
# File information
Filename: AlmaLinux-9-latest-x86_64-dvd.iso
Size: ~8.8 GB
Contents: desktop environment + server software
Best for: standard installation requirements

Minimal Edition (Minimal)

System Characteristics

bash
# File information
Filename: AlmaLinux-*-latest-x86_64-minimal.iso
Size: ~2.0 GB
Contents: core system components
Best for: servers, containers, custom deployments

# Included base components
- Linux kernel
- Core system libraries
- Package manager (DNF)
- Networking tools
- SSH server

Post-Installation Configuration

bash
# Install basic tools
sudo dnf groupinstall "Minimal Install"
sudo dnf install vim wget curl git

# Network configuration
sudo nmcli device status
sudo nmcli connection show

Boot Edition (Boot)

Network Installation Image

bash
# File information
Filename: AlmaLinux-*-latest-x86_64-boot.iso
Size: ~700 MB
Contents: boot environment + network installer
Best for: network installation, saving bandwidth

# Installation process
1. Boot the startup environment
2. Configure the network connection
3. Select an online software repository
4. Download and install the system

Verifying Download Integrity

SHA256 Checksums

bash
# Download the checksum file
wget https://mirrors.aliyun.com/almalinux/10/isos/x86_64/CHECKSUM

# Verify ISO integrity
sha256sum -c CHECKSUM --ignore-missing
# Or verify individually
sha256sum AlmaLinux-10-latest-x86_64-dvd.iso

# Expected output example
# AlmaLinux-10-latest-x86_64-dvd.iso: OK

GPG Signature Verification

bash
# Import the official GPG key
curl -O https://repo.almalinux.org/almalinux/RPM-GPG-KEY-AlmaLinux
gpg --import RPM-GPG-KEY-AlmaLinux

# Download the signature file
wget https://mirrors.aliyun.com/almalinux/10/isos/x86_64/CHECKSUM.asc

# Verify the signature
gpg --verify CHECKSUM.asc CHECKSUM

Creating a Bootable Drive

Creating on Linux

Using the dd Command

Always confirm the target device before writing

dd erases all data on the target device. Before running it, use lsblk / lsblk -d to confirm the USB drive's device name (the /dev/sdb below is only an example); writing to the wrong device will erase your hard drive.

bash
# View the device list
lsblk -d

# Create the bootable drive (replace /dev/sdb with your actual USB device)
sudo dd if=AlmaLinux-10-latest-x86_64-dvd.iso of=/dev/sdb bs=4M status=progress oflag=sync

# Safely eject
sudo eject /dev/sdb

Using GNOME Disks

bash
# Install the graphical tool
sudo dnf install gnome-disk-utility

# Launch the application
gnome-disks

# Steps
1. Select the USB device
2. Click "Format Disk"
3. Select "Restore Disk Image"
4. Select the ISO file

Creating on Windows

Using Rufus

bash
# Tool features
- Free and open source
- Supports UEFI/Legacy
- Automatic download feature
- Multilingual interface

# Steps
1. Download the official version of Rufus
2. Insert the USB device
3. Select the AlmaLinux ISO
4. Choose GPT as the partition scheme
5. Choose UEFI as the target system
6. Start creating

Using balenaEtcher

bash
# Cross-platform tool
- Supports Windows/macOS/Linux
- Clean and easy-to-use interface
- Automatic verification feature

# How to use
1. Download and install balenaEtcher
2. Flash from file - select the ISO
3. Select target - select the USB
4. Flash! - start creating

Creating on macOS

Using the dd Command

Always confirm the target device before writing

dd erases all data on the target device. Before running it, use diskutil list to confirm the USB drive's device name (the /dev/disk2 below is only an example); writing to the wrong device will erase your hard drive.

bash
# View devices
diskutil list

# Unmount the device (replace /dev/disk2 with your actual USB device)
diskutil unmountDisk /dev/disk2

# Create the bootable drive
sudo dd if=AlmaLinux-10-latest-x86_64-dvd.iso of=/dev/rdisk2 bs=1m

# Eject the device
diskutil eject /dev/disk2

The Installation Process in Detail

BIOS/UEFI Configuration

UEFI Settings

bash
# Recommended UEFI settings
Secure Boot: can be enabled (AlmaLinux supports it)
Boot Mode: UEFI
Legacy Support: disabled
Fast Boot: disabled (during installation)
CSM: disabled

Legacy BIOS Settings

bash
# Legacy BIOS settings
Boot Order: USB-HDD first
Legacy Boot: enabled
UEFI Boot: disabled
SATA Mode: AHCI

Installation Boot Options

Standard Installation

bash
# Boot menu options
1. Install AlmaLinux 10
   - Graphical installation interface
   - Recommended for most users

2. Test this media & install AlmaLinux 10
   - Media integrity check
   - Verification before installation

3. Troubleshooting
   - Troubleshooting options
   - Compatibility mode

Customizing Kernel Parameters

bash
# Press the Tab key to edit boot parameters

# Add common parameters
quiet splash                    # Silent boot
nomodeset                      # Disable KMS (graphics card compatibility)
acpi=off                       # Disable ACPI (old hardware)
text                           # Text-mode installation
inst.vnc inst.vncpassword=pwd  # VNC remote installation

Installation Configuration Wizard

1. Language and Keyboard Settings

bash
# Recommended settings
Language: Simplified Chinese (China)
Keyboard: Chinese
Timezone: Asia/Shanghai

# English environment settings
Language: English (United States)
Keyboard: US
Timezone: Asia/Shanghai

2. Network Configuration

bash
# Wired network
Device: enp0s3 (example)
Configuration: automatically obtain IP (DHCP)
Hostname: almalinux.localdomain

# Static IP configuration
IP address: 192.168.1.100/24
Gateway: 192.168.1.1
DNS: 8.8.8.8,114.114.114.114

3. Disk Partitioning

Automatic Partitioning
bash
# Default LVM partition scheme
/boot      - 1024 MB  (ext4)
/          - 50 GB    (xfs, LVM)
/home      - remaining space (xfs, LVM)
swap       - 4 GB     (LVM)
Manual Partitioning
bash
# Recommended server partitioning
/boot/efi  - 600 MB   (FAT32, UEFI system)
/boot      - 1024 MB  (ext4)
/          - 50 GB    (xfs)
/var       - 20 GB    (xfs)
/var/log   - 10 GB    (xfs)
/home      - 50 GB    (xfs)
/tmp       - 5 GB     (xfs)
swap       - 8 GB

4. Software Selection

Predefined Environments
bash
# Server environments
- Minimal Install          # Minimal installation
- Server                  # Basic server
- Server with GUI         # Server with graphical interface
- Workstation             # Workstation

# Development environments
- Custom Operating System  # Custom system
Additional Software Groups
bash
# Development tools
- Development Tools       # GCC compiler
- Platform Development    # Platform development
- Python 3               # Python environment

# System tools
- System Tools           # System management tools
- Security Tools         # Security tools
- Network Servers        # Network services

5. User Configuration

Root User
bash
# Security recommendations
Root password: strong password (8+ characters, including numbers + letters + symbols)
SSH access: recommended to disable root login
Alternative: create an administrator user
Regular User
bash
# User creation
Username: almalinux (example)
Full name: AlmaLinux User
Password: strong password
Administrator privileges: check "Make this user administrator"

Post-Installation Configuration

System Updates

bash
# Update packages
sudo dnf update -y

# Reboot the system
sudo reboot

# Check the system version
cat /etc/almalinux-release
uname -r

Installing Basic Tools

bash
# Development tools
sudo dnf groupinstall "Development Tools" -y
sudo dnf install git vim wget curl htop -y

# Networking tools
sudo dnf install net-tools traceroute nmap -y

# System monitoring
sudo dnf install cockpit -y
sudo systemctl enable --now cockpit.socket

Firewall Configuration

bash
# Check the firewall status
sudo firewall-cmd --state

# Open common ports
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https

# Open the Cockpit management port
sudo firewall-cmd --permanent --add-service=cockpit

# Reload firewall rules
sudo firewall-cmd --reload

SELinux Configuration

bash
# Check the SELinux status
getenforce

# View the SELinux mode
sestatus

# Temporarily set to permissive mode (if needed)
sudo setenforce 0

# Permanent change (edit the configuration file)
sudo vim /etc/selinux/config
# SELINUX=enforcing  # Enforcing mode
# SELINUX=permissive # Permissive mode
# SELINUX=disabled   # Disabled mode

Service Management

bash
# View system service status
systemctl list-units --type=service

# Enable common services
sudo systemctl enable NetworkManager
sudo systemctl enable firewalld
sudo systemctl enable chronyd

# Disable unneeded services
sudo systemctl disable bluetooth
sudo systemctl mask bluetooth

Troubleshooting Common Issues

Installation Issues

Boot Failure

bash
# Problem: cannot boot from USB
Solutions:
1. Check the BIOS boot order
2. Confirm the USB was created correctly
3. Try a different USB port
4. Disable Secure Boot to test

Hardware Compatibility

bash
# Problem: graphics card driver issues
Boot parameter: nomodeset

# Problem: network card not recognized
Solutions:
1. Check the hardware compatibility list
2. Use a USB network adapter
3. Install from CD/DVD

Partition Errors

bash
# Problem: disk partitioning failed
Things to check:
1. Whether the disk has bad sectors
2. Whether the RAID configuration is correct
3. Whether there is enough disk space
4. The partition table type (GPT/MBR)

Post-Installation Issues

Network Connectivity

bash
# Configure a wired network
sudo nmcli device connect enp0s3

# Configure a wireless network
sudo nmcli device wifi list
sudo nmcli device wifi connect "SSID" password "password"

# Check the connection status
ping -c 4 8.8.8.8

Repository Configuration

bash
# Back up the original repository configuration
sudo cp /etc/yum.repos.d/almalinux.repo /etc/yum.repos.d/almalinux.repo.bak

# Switch to a China-based mirror
sudo sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/almalinux*.repo
sudo sed -i 's|^#baseurl=https://repo.almalinux.org|baseurl=https://mirrors.aliyun.com|g' /etc/yum.repos.d/almalinux*.repo

# Clean and rebuild the cache
sudo dnf clean all
sudo dnf makecache

With this guide, you can smoothly complete the download, installation, and basic configuration of AlmaLinux, laying a solid foundation for subsequent system use.

Released under the MIT License