Azure Linux is designed to provide a consistent platform for cloud devices and services and enhances Microsoft’s ability to stay current on Linux updates.
What is Azure Linux?
Azure Linux is an internal Linux distribution for Microsoft’s cloud infrastructure and edge products and services. Azure Linux is designed to provide a consistent platform for these devices and services and will enhance Microsoft’s ability to stay current on Linux updates. This initiative is part of Microsoft’s increasing investment in a wide range of Linux technologies, such as SONiC and Windows Subsystem for Linux (WSL). Azure Linux is being shared publicly as part of Microsoft’s commitment to Open Source and to contribute back to the Linux community. Azure Linux does not change our approach or commitment to any existing third-party Linux distribution offerings.Core capabilities
Package generation
Produces the desired set of RPM packages from SPEC files and source files
Image generation
Produces the desired image artifacts like ISOs or VHDs from a given set of packages
Minimal footprint
Consumes limited disk and memory resources with faster boot times
Security focused
Provides a minimal attack surface with fewer services and attack vectors
Key features
Lightweight architecture
Whether deployed as a container or a container host, Azure Linux consumes limited disk and memory resources. The lightweight characteristics of Azure Linux also provides faster boot times and a minimal attack surface. By focusing the features in the core image to just what is needed for our internal cloud customers there are fewer services to load, and fewer attack vectors.Flexible package system
Azure Linux has been engineered with the notion that a small common core set of packages can address the universal needs of first party cloud and edge services while allowing individual teams to layer additional packages on top of the common core to produce images for their workloads.Dual update models
When security vulnerabilities arise, Azure Linux supports both a package-based update model and an image based update model. Leveraging the common RPM Package Manager system, Azure Linux makes the latest security patches and fixes available for download with the goal of fast turn-around times.Build system overview
The Azure Linux build system enables a simple build process that consists of several phases:Toolchain stage
Builds a bootstrap toolchain and then builds the official toolchain. The official toolchain is used in the subsequent package build stage. Building is highly scripted and serialized in this stage.
Package stage
Uses outputs from the toolchain stage to build any package not built in toolchain stage. Packages are built in parallel during this stage.
Get started
Getting started
Quick start guide to download, build, and run Azure Linux
Build guide
Learn how to build Azure Linux end-to-end
Security features
Explore the built-in security capabilities
How it works
Deep dive into the build system architecture
Acknowledgments
Any Linux distribution, including Azure Linux, benefits from contributions by the open software community. We gratefully acknowledge all contributions made from the broader open source community, in particular:- GNU and the Free Software Foundation
- The Fedora Project for SPEC files, particularly with respect to Qt, DNF and content in the SPECS-EXTENDED folder
- The Photon OS Project for SPEC files originating from the Photon distribution
- Linux from Scratch