Jump to content

Anaconda (installer)

From Alfawiki
Anaconda
Company typeFree and open-source software
IndustrySystem installation software
ProductsLinux system installer
OwnerRed Hat (implied from association with Red Hat Enterprise Linux)

Anaconda is a widely utilized free and open-source system installer embraced by numerous Linux distributions such as Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, Rocky Linux, AlmaLinux, CentOS, MIRACLE LINUX, Qubes OS, Fedora, Sabayon Linux, Bazzite Linux, and BLAG Linux and GNU. Additionally, it has been implemented by various lesser-known or discontinued distributions including Progeny Componentized Linux, Asianux, and Foresight Linux.

Functionality

Anaconda offers installation capabilities through both graphical user interface and text-based modes, supporting deployment across a wide variety of hardware environments. It is compatible with architectures such as IA-32, Itanium, DEC Alpha, IBM ESA/390, PowerPC, and ARMv8. Installation media can be sourced locally from devices like CD-ROMs or hard drives, as well as remotely via network protocols including FTP, HTTP, and NFS. The installer supports automated setups via kickstart configuration files, enabling unattended installations. Before proceeding, Anaconda performs checks on system hardware and available resources to confirm suitability.

Technology

The installer is predominantly written in Python with some segments developed in C. Its graphical interface is built using the GTK+ 3 toolkit alongside PyGObject, with design facilitated by the Glade Interface Designer. For environments lacking graphical support, such as IBM ESA/390 mainframes, a dedicated text-mode frontend is provided.

Starting with Fedora 42, a contemporary web-based user interface was introduced for Anaconda on the Workstation variant, with intentions to extend this enhanced UI to additional Fedora editions in subsequent versions.

Under the hood

Anaconda includes utilities and commands tailored for users requiring specialized installation configurations or for troubleshooting the installation process or operating system setup.

It accommodates an extensive array of boot parameters to adjust installation behavior. During installation, users can access a root shell on TTY2 to examine the environment.

Important files within the installation context include:

  • /tmp/anaconda.log – logs generated by Anaconda (also recorded in the journal)
  • /root/lorax-packages.log – details packages and versions used to build the installation image
  • /mnt/install/ks.cfg – kickstart configuration file applied during setup (if present)

After completing installation, Anaconda preserves critical files on the target system for future reference:

  • Installation logs located at /var/log/anaconda
  • Kickstart configuration reflecting chosen options stored at /root/anaconda-ks.cfg

The saved anaconda-ks.cfg file can be reused or modified to duplicate similar installations.

See also

External links