Anaconda (installer): Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m linkage
Fixed link rockylinux
Tags: Mobile edit Mobile web edit
 
(179 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
{{Short description|Free and open-source system installer for Linux distributions}}
[[Image:Redhat-anaconda-screenshot.png|thumb|300px|Anaconda Installer - Installation type selection screen.]]
{{distinguish|Anaconda (Python distribution)}}
'''Anaconda''' is the installer for [[Red Hat Linux]] and [[Fedora Core]]. It is written in [[Python programming language|Python]] and [[C programming language|C]], with a [[PyGTK]] graphical frontend. A [[kickstart]] file can be used to automatically configure the installation, allowing users to run it with minimal supervision.
{{Infobox software
| name = Anaconda
| screenshot = [[File:Anaconda Installer on Fedora 37.png|frameless|upright=1.5]]
| screenshot size = 200px
| caption = Anaconda's installation summary screen for [[Fedora (operating system)|Fedora]] 37
| developer = Anaconda Team
| released = {{Start date and age|1999}}
| language = Multilingual
| latest release version = {{wikidata|property|preferred|references|edit|P348|P548=Q2804309}}
| latest release date = {{wikidata|qualifier|preferred|single|P348|P548=Q2804309|P577}}
| latest preview version =
| latest preview date =
| operating_system = Linux
| programming_language = [[Python (programming language)|Python]] and [[C (programming language)|C]]
| genre = [[System installer]]
| license = [[GNU General Public License|GPLv2]] ([[Free software]])
| website = {{URL|http://fedoraproject.org/wiki/Anaconda}}
}}


'''Anaconda''' is a [[Free and open-source software|free and open-source]] [[system installer]] for Linux distributions.
A port to [[Debian]] exists, which is maintained by [[Progeny Linux Systems|Progeny]].


Anaconda is used by [[Red Hat Enterprise Linux]], [[Oracle Linux]], [[Scientific Linux]], [[Rocky Linux]], [[AlmaLinux]], [[CentOS]], [[Miracle Linux|MIRACLE LINUX]], [[Qubes OS]], [[Fedora (operating system)|Fedora]], [[Sabayon Linux]] and [[BLAG Linux and GNU]], also in some less known and discontinued distros like [[Progeny Componentized Linux]], [[Asianux]], [[Foresight Linux]], [[Rpath Linux]] and [[VidaLinux]].<ref>{{Cite web|title=Anaconda/Distros - Fedora Project Wiki|url=https://fedoraproject.org/wiki/Anaconda/Distros|website=fedoraproject.org|access-date=2020-05-02}}</ref>
A port to [[Gentoo]] also exists. [[VidaLinux]] [[distro]] uses it.


== Functionality ==
[[Anaconda]]s are [[python]]s and eat [[lizard]]s hence the choice of naming - the [[SuSE]] logo being a lizard.
[[File:Anaconda text mode.png|alt=Anaconda text mode|thumb|Anaconda installing CentOS 7 in text mode]]


Anaconda offers a [[text-mode]] and GUI mode, so users can install on a wide range of systems. It is designed to be easily portable and supports a wide range of hardware platforms ([[IA-32]], [[Itanium]], [[DEC Alpha]], [[IBM ESA/390]], [[PowerPC]], [[ARMv8]]). It supports installing from local storage devices like CD-ROM drives and harddisks as well as from network resources via [[File Transfer Protocol|FTP]], [[File Transfer Protocol|HTTP]], or [[Network File System (protocol)|NFS]]. Installations can be automated with the use of a [[Kickstart (Linux)|kickstart]] file, that automatically configures the installation, allowing users to run it with minimal supervision. Before starting the OS installation process, the installer checks the system hardware and resource requirements. Only if the requirements are satisfied does it start the installation process.
==External links==


== Technology ==
*[http://fedora.redhat.com/projects/anaconda-installer/ Anaconda home page]
It is mainly written in [[Python (programming language)|Python]] with some modules written in [[C (programming language)|C]]. It has a graphical frontend that is based on [[GTK+|GTK+&nbsp;3]]/[[PyGObject]] and designed with the [[Glade Interface Designer]]. Anaconda also has a custom text frontend with support for computers with [[line printer]] like terminals, such as the [[IBM ESA/390]] [[Mainframe computer|mainframes]].
*[http://platform.progeny.com/anaconda/ Anaconda for Debian home page]


== Under the hood ==
{{compu-stub}}
The Anaconda installer provides various useful tools and commands for both users with specific installation needs as well as for debugging issues with the installer itself or OS installation in general.

Anaconda supports a rich set of options <ref name="Anaconda Boot Options">[https://anaconda-installer.readthedocs.io/en/latest/boot-options.html "Anaconda Boot Options"]</ref> that can be passed to the boot command line to influence installation behaviour. There is also a root shell running on TTY2 available for the user to inspect the installation environment during the installation run.

There are also various useful files in the installation environment:
* <code>/tmp/anaconda.log</code> - contains Anaconda related log messages (Anaconda also logs to <code>journal</code>)
* <code>/root/lorax-packages.log</code> - contains a list of names and versions of all packages that have been used to create the installation image
* <code>/mnt/install/ks.cfg</code> contains the kickstart used for the installation run (if any)

After a successful installation, Anaconda stores various important files from the installation run on the system itself. This makes it possible to check how the system was installed even at a later time.

* installation logs are stored in <code>/var/log/anaconda</code>
* a kickstart file describing option selected during the installation run is stored in <code>/root/anaconda-ks.cfg</code>

The <code>anaconda-ks.cfg</code> file found on a system can be used (possibly with small changes) to install a very similar system again.

== See also ==
* [[Calamares (software)|Calamares]]
* [[YaST]]
* [[Debian-Installer]]
* [[Ubiquity (software)|Ubiquity]]

== References ==
{{Reflist}}

== External links ==
{{Commons category}}
* {{Official website|http://fedoraproject.org/wiki/Anaconda}}

{{Red Hat}}
{{Portal bar|Linux|Free and open-source software}}

[[Category:Fedora Project]]
[[Category:Free software programmed in C]]
[[Category:Free software programmed in Python]]
[[Category:Linux installation software]]
[[Category:Red Hat software]]
[[Category:Software that uses GTK]]
[[Category:Software that uses PyGObject]]
[[Category:Software using the GPL license]]

Latest revision as of 00:20, 17 May 2024

Anaconda
Developer(s)Anaconda Team
Initial release1999; 25 years ago (1999)
Stable release
41.1-1[1] Edit this on Wikidata / 15 February 2024
Repository
Written inPython and C
Operating systemLinux
Available inMultilingual
TypeSystem installer
LicenseGPLv2 (Free software)
Websitefedoraproject.org/wiki/Anaconda

Anaconda is a free and open-source system installer for Linux distributions.

Anaconda is used by Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, Rocky Linux, AlmaLinux, CentOS, MIRACLE LINUX, Qubes OS, Fedora, Sabayon Linux and BLAG Linux and GNU, also in some less known and discontinued distros like Progeny Componentized Linux, Asianux, Foresight Linux, Rpath Linux and VidaLinux.[2]

Functionality[edit]

Anaconda text mode
Anaconda installing CentOS 7 in text mode

Anaconda offers a text-mode and GUI mode, so users can install on a wide range of systems. It is designed to be easily portable and supports a wide range of hardware platforms (IA-32, Itanium, DEC Alpha, IBM ESA/390, PowerPC, ARMv8). It supports installing from local storage devices like CD-ROM drives and harddisks as well as from network resources via FTP, HTTP, or NFS. Installations can be automated with the use of a kickstart file, that automatically configures the installation, allowing users to run it with minimal supervision. Before starting the OS installation process, the installer checks the system hardware and resource requirements. Only if the requirements are satisfied does it start the installation process.

Technology[edit]

It is mainly written in Python with some modules written in C. It has a graphical frontend that is based on GTK+ 3/PyGObject and designed with the Glade Interface Designer. Anaconda also has a custom text frontend with support for computers with line printer like terminals, such as the IBM ESA/390 mainframes.

Under the hood[edit]

The Anaconda installer provides various useful tools and commands for both users with specific installation needs as well as for debugging issues with the installer itself or OS installation in general.

Anaconda supports a rich set of options [3] that can be passed to the boot command line to influence installation behaviour. There is also a root shell running on TTY2 available for the user to inspect the installation environment during the installation run.

There are also various useful files in the installation environment:

  • /tmp/anaconda.log - contains Anaconda related log messages (Anaconda also logs to journal)
  • /root/lorax-packages.log - contains a list of names and versions of all packages that have been used to create the installation image
  • /mnt/install/ks.cfg contains the kickstart used for the installation run (if any)

After a successful installation, Anaconda stores various important files from the installation run on the system itself. This makes it possible to check how the system was installed even at a later time.

  • installation logs are stored in /var/log/anaconda
  • a kickstart file describing option selected during the installation run is stored in /root/anaconda-ks.cfg

The anaconda-ks.cfg file found on a system can be used (possibly with small changes) to install a very similar system again.

See also[edit]

References[edit]

  1. ^ "Release 41.1-1". 15 February 2024. Retrieved 18 February 2024.
  2. ^ "Anaconda/Distros - Fedora Project Wiki". fedoraproject.org. Retrieved 2020-05-02.
  3. ^ "Anaconda Boot Options"

External links[edit]