Install PowerShell on Linux

PowerShell can be installed on different Linux distributions. Most Linux platforms and distributions have a major release each year, and provide a package manager that is used to install PowerShell. This article describes what is currently supported and which package manager is used.

The rest of this article is a breakdown of each Linux distribution that PowerShell supports. All PowerShell releases remain supported until either the version of PowerShell reaches end-of-support or the Linux distribution reaches end-of-life.

For the best compatibility, choose a long-term release (LTS) version.

Alpine

The following table lists the supported PowerShell releases and the versions of Alpine they're supported on. These versions are supported until either the version of PowerShell reaches end-of-support or the version of Alpine reaches end-of-life.

  • A ✅ indicates that the version of the OS or PowerShell is still supported
  • A ❌ indicates that the version of the OS or PowerShell isn't supported
  • A 🟡 indicates the version of PowerShell is no longer supported on that version of the OS
  • When both the version of the OS and the version of PowerShell have ✅, that combination is supported
Alpine 7.0 (LTS) 7.1 7.2 (LTS-current)
✅ 3.12
✅ 3.11
❌ 3.10 🟡 🟡
❌ 3.9 🟡 🟡

PowerShell has not been tested on Alpine versions 3.13 and 3.14.

Note

CIM, PowerShell Remoting, and DSC are not supported on Alpine.

PowerShell is supported on Alpine for the following processor architectures.

Alpine 7.0 (LTS) 7.1 7.2 (LTS-current)
All supported versions x64 x64 x64

PowerShell has not been tested on Alpine using Arm processors.

For more information, see Install .NET on Alpine.

CentOS

CentOS 7 uses Yum as a package manager and CentOS 8 uses DNF.

The following table is a list of currently supported PowerShell releases and the versions of CentOS they are supported on. These versions remain supported until either the version of PowerShell reaches end-of-support or the version of CentOS reaches end-of-support.

  • A ✅ indicates that the version of the OS or PowerShell is still supported
  • A ❌ indicates that the version of the OS or PowerShell isn't supported
  • A 🟡 indicates the version of PowerShell is no longer supported on that version of the OS
  • When both the version of the OS and the version of PowerShell have ✅, that combination is supported
CentOS 7.0 (LTS) 7.1 (current) 7.2 (LTS-current)
✅ 8
✅ 7

Microsoft does not officially support PowerShell on the CentOS Stream releases. For more information, see Comparing CentOS Linux and CentOS Stream. CentOS Stream is community supported. For more information, see Community supported distributions.

PowerShell is supported on CentOS for the following processor architectures.

CentOS 7.0 (LTS) 7.1 (current) 7.2 (LTS-current)
All supported versions x64 x64 x64

For more information, see Install PowerShell on CentOS.

Debian

Debian uses APT (Advanced Package Tool) as a package manager.

The following table is a list of currently supported PowerShell releases and the versions of Debian they're supported on. These versions remain supported until either the version of PowerShell reaches end-of-support or the version of Debian reaches end-of-life.

  • A ✅ indicates that the version of the OS or PowerShell is still supported
  • A ❌ indicates that the version of the OS or PowerShell isn't supported
  • A 🟡 indicates the version of PowerShell is no longer supported on that version of the OS
  • When both the version of the OS and the version of PowerShell have ✅, that combination is supported
Debian 7.0 (LTS) 7.1 7.2 (LTS-current)
✅ 10
✅ 9
❌ 8 🟡

PowerShell is supported on Debian for the following processor architectures.

Debian 7.0 (LTS) 7.1 7.2 (LTS-current)
Version 9+ x64, Arm32, Arm64 x64, Arm32, Arm64 x64, Arm32, Arm64

For more information, see Install PowerShell on Debian.

Fedora

Fedora uses DNF as its package manager.

The following table lists the supported PowerShell releases and the versions of Fedora they're supported on. These versions are supported until either the version of PowerShell reaches end-of-support or the version of Fedora reaches end-of-life.

  • A ✅ indicates that the version of the OS or PowerShell is still supported
  • A ❌ indicates that the version of the OS or PowerShell isn't supported
  • A 🟡 indicates the version of PowerShell is no longer supported on that version of the OS
  • When both the version of the OS and the version of PowerShell have ✅, that combination is supported
Fedora 7.0 (LTS) 7.1 (current) 7.2 (LTS-current)
✅ 32 🟡 🟡
❌ 31 🟡 🟡
❌ 30 🟡 🟡

PowerShell has not been tested on Fedora versions 33 and 34.

PowerShell is supported on Fedora for the following processor architectures.

Fedora 7.0 (LTS) 7.1 (current) 7.2 (LTS-current)
All supported versions x64 x64 x64

For more information, see Install .NET on Fedora.

Red Hat Enterprise Linux (RHEL)

RHEL 7 uses yum and RHEL 8 uses the dnf package manager.

The following table is a list of currently supported versions of PowerShell and the versions of RHEL they are supported on. These versions remain supported until either the version of PowerShell reaches end-of-support or the version of RHEL reaches end-of-support.

  • A ✅ indicates that the version of the OS or PowerShell is still supported
  • A ❌ indicates that the version of the OS or PowerShell isn't supported
  • A 🟡 indicates the version of PowerShell is no longer supported on that version of the OS
  • When both the version of the OS and the version of PowerShell have ✅, that combination is supported
RHEL 7.0 (LTS) 7.1 7.2 (LTS-current)
✅ 8
✅ 7

PowerShell is supported on RHEL for the following processor architectures.

RHEL 7.0 (LTS) 7.1 7.2 (LTS-current)
All supported versions x64 x64 x64, Arm64

For more information, see Install PowerShell on RHEL.

Ubuntu

Ubuntu uses APT (Advanced Package Tool) as a package manager.

The following table is a list of currently supported PowerShell releases and the versions of Ubuntu they are supported on. These versions remain supported until either the version of PowerShell reaches end-of-support or the version of Ubuntu reaches end-of-support.

  • A ✅ indicates that the version of the OS or PowerShell is still supported
  • A ❌ indicates that the version of the OS or PowerShell isn't supported
  • A 🟡 indicates the version of PowerShell is no longer supported on that version of the OS
  • When both the version of the OS and the version of PowerShell have ✅, that combination is supported
Ubuntu 7.0 (LTS) 7.1 7.2 (LTS-current)
✅ 20.04 (LTS)
✅ 18.04 (LTS)
❌ 16.04 (LTS) 🟡 🟡

Only the LTS releases of Ubuntu are officially supported. Microsoft does not support interim releases or their equivalent. Interim releases are community supported. For more information, see Community supported distributions.

PowerShell is supported on Ubuntu for the following processor architectures.

Ubuntu 7.0 (LTS) 7.1 7.2 (LTS-current)
All supported versions x64, Arm32, Arm64 x64, Arm32, Arm64 x64, Arm32, Arm64

For more information, see Install PowerShell on Ubuntu.

Raspberry Pi OS

Raspberry Pi OS (formerly Raspbian) is a free operating system based on Debian.

Important

.NET is not supported on ARMv6 architecture devices, including Raspberry Pi Zero and Raspberry Pi devices prior to Raspberry Pi 2.

For more information, see Install PowerShell on Raspberry Pi OS.

Community supported distributions

There are many distributions of Linux that are not officially supported by Microsoft. In some cases, PowerShell may be supported by the community for these releases. For more information, see Community support for PowerShell on Linux.

Alternate installation methods

There are three other ways to install PowerShell on Linux, including Linux distributions that aren't officially supported. You can try to install PowerShell using the PowerShell Snap Package. You can also try deploying PowerShell binaries directly using the Linux tar.gz. For more information, see Alternate ways to install PowerShell on Linux.