AWS
Amazon Linux
EC2
Cloud Computing
Operating Systems

Find if AWS instance is running Amazon Linux 1 or 2?

System Design practice on Codemia

Work through 120+ system design problems with detailed solutions, from rate limiters to multi-region storage.

Practice system design

In the dynamic world of cloud computing, understanding the specific operating system version running on your AWS instance can be crucial for many operational reasons. Amazon Web Services (AWS) offers instances running various operating systems, including Amazon Linux. Distinguishing whether an instance is running Amazon Linux 1 or Amazon Linux 2 is straightforward if you know where to look. This article details the methods of determining whether an AWS instance is running Amazon Linux 1 or Amazon Linux 2 by examining different system files and utilizing certain commands.

Understanding Amazon Linux

Amazon Linux is a Linux distribution provided by AWS. It is available in two main versions:

  1. Amazon Linux 1: The original version, offering a stable, secure, and high-performance execution environment. Support for it ended on December 31, 2020.
  2. Amazon Linux 2: A newer and enhanced version that comes with long-term support. It is designed for high performance and comes with additional features such as the latest software packages.

Why Determine the Linux Version?

Determining whether your AWS instance runs Amazon Linux 1 or 2 can be crucial for:

  • Applying correct security patches and updates.
  • Ensuring compatibility with software applications.
  • Migrating applications as part of modernization projects.
  • Understanding the support lifecycle and planning upgrades.

Identifying the Amazon Linux Version

Method 1: Checking `/etc/os-release` File

The easiest and most straightforward method is to inspect the `/etc/os-release` file, which is present on most modern Linux distributions. This file contains identifying information about the version of the operating system in a simple key-value format.

  • For Amazon Linux 1:
    The `/etc/os-release` file might not exist. Instead, check the `/etc/system-release` file. It typically contains a line like:
  • For Amazon Linux 2:
  • Command:
  • Sample Output for Amazon Linux 2:
  • Command to get AMI ID:
  • AMI Naming: AWS typically names AMIs with recognizable patterns. For example, an AMI with a name starting with `amzn2-ami` usually denotes Amazon Linux 2.
  • Upgrade and Support: It's crucial to migrate to Amazon Linux 2 if you are still running Amazon Linux 1, due to the lack of updates and patches beyond 2020.
  • Lifecycle Management: Ensure you incorporate regular checks during setup and configuration management workflows to automate version detection and classification.

Related reading
Course
Beginner
27 lessons
10 hours
System Design Fundamentals

Build a strong foundation in designing scalable, reliable distributed systems.

View the course
Track what you have practised

A free account saves your progress, solutions and study plan across every problem on Codemia.

System Design practice on Codemia

Work through 120+ system design problems with detailed solutions, from rate limiters to multi-region storage.

Practice system design

All Rights Reserved.