Computer >> 컴퓨터 >  >> 시스템 >> Linux

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

PowerShell은 이제 Windows, Linux, macOS 등 다양한 플랫폼에서 설치해 사용할 수 있는 오픈소스 크로스 플랫폼 셸이자 스크립팅 언어입니다. 이 글에서는 주요 리눅스 배포판(CentOS, RHEL, Debian, Kali, Mint, Ubuntu)에 PowerShell Core를 설치하는 방법을 단계별로 소개합니다. PowerShell에 익숙한 Windows 관리자라면 이 가이드를 통해 리눅스 환경에서도 기존 경험을 그대로 활용할 수 있을 것입니다.

  • 각 플랫폼별로 빌드된 PowerShell 패키지의 전체 목록은 Microsoft 공식 저장소에서 확인할 수 있습니다: https://github.com/PowerShell/PowerShell/releases
  • 리눅스 배포판 및 버전별 PowerShell 지원 현황은 다음 공식 문서를 참고하세요: https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-linux?view=powershell-7.2

현재 대부분의 리눅스 배포판 기본 저장소에는 PowerShell 패키지가 포함되어 있지 않습니다. 따라서 리눅스에 PowerShell을 설치하려면 먼저 Microsoft 저장소 패키지를 다운로드하고 GPG 키를 등록한 뒤, 리눅스 패키지 관리자를 통해 설치해야 합니다.

리눅스에는 .NET Core 기반의 PowerShell Core만 설치할 수 있으며, 클래식 Windows PowerShell 5.1은 설치할 수 없습니다. 이 글을 작성하는 시점 기준 최신 버전은 PowerShell Core 7.2 LTS입니다.

Ubuntu 20.04 및 Linux Mint 20에 PowerShell Core 설치

Ubuntu나 Linux Mint에 PowerShell을 설치하기 전에 먼저 패키지 목록을 업데이트합니다.

sudo apt-get update -y

Microsoft 저장소의 GPG 키를 다운로드합니다.

wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

다운로드한 Microsoft GPG 키를 설치합니다.

sudo dpkg -i packages-microsoft-prod.deb

packages.microsoft.com의 패키지 정보를 포함해 패키지 목록을 갱신합니다.

sudo apt-get update

PowerShell을 설치합니다.

sudo apt-get install powershell -y

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

이후 apt 패키지 관리자를 통해 PowerShell이 자동으로 업데이트됩니다.

sudo apt update

참고로, 시스템에 이전 버전의 PowerShell Core가 설치되어 있다면 업데이트 과정에서 기존 버전은 제거됩니다.

DEB 패키지를 직접 다운로드해 설치하는 방법도 있습니다.

wget -q https://github.com/PowerShell/PowerShell/releases/download/v7.2.0/powershell-lts_7.2.0-1.deb_amd64.deb
sudo dpkg -i powershell_7.2.0-1.deb_amd64.deb

의존성 문제를 해결하고 설치를 마무리합니다.

sudo apt-get install -f

Debian 11에 PowerShell Core 설치

Debian 11 Bullseye에 PowerShell Core 7.0 이상을 설치하려면 먼저 Microsoft 저장소의 GPG 키를 다운로드합니다.

wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb

다운로드한 GPG 키를 등록합니다.

sudo dpkg -i packages-microsoft-prod.deb

패키지 관리자의 앱 목록을 갱신합니다.

sudo apt update

PowerShell을 설치합니다.

sudo apt install -y powershell

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

패키지 업데이트를 실행하면 PowerShell도 함께 자동 업데이트됩니다.

sudo apt update

PowerShell 패키지만 개별적으로 업데이트하려면 다음 명령을 사용합니다.

sudo apt install powershell

RHEL(Red Hat Enterprise Linux) 및 CentOS에 PowerShell 설치

CentOS, Red Hat Enterprise Linux(RHEL), Oracle Linux에서는 동일한 방법으로 PowerShell을 설치할 수 있습니다.

YUM에 Microsoft RedHat 저장소를 추가합니다.

curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo

yum(또는 dnf) 패키지 관리자로 최신 PowerShell Core를 설치합니다.

sudo yum install -y powershell

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

PowerShell 패키지를 업데이트하려면 다음 명령을 사용합니다.

sudo yum update powershell

RPM 파일을 통해 직접 설치할 수도 있습니다.

sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v7.2.0/powershell-lts-7.2.0-1.rh.x86_64.rpm

Kali Linux에 PowerShell Core 7.x 설치

Kali Linux에서는 아래 명령 한 줄로 PowerShell을 설치할 수 있습니다.

apt update && apt -y install powershell

Snap으로 리눅스에 PowerShell 설치

Snap을 이용하면 다양한 리눅스 배포판에 PowerShell을 설치할 수 있습니다. 이 방법은 공식적으로 PowerShell을 지원하지 않는 배포판에서 특히 권장됩니다.

Snap으로 PowerShell을 설치하는 명령은 다음과 같습니다.

sudo snap install powershell --classic

Snap에서는 PowerShell이 자동으로 업데이트되며, 수동으로 업데이트할 수도 있습니다.

sudo snap refresh powershell

리눅스에서 PowerShell 제거하기

배포판별로 PowerShell을 제거하는 명령은 다음과 같습니다.

  • Ubuntu/Linux Mint: sudo apt remove powershell
  • Debian: sudo apt remove powershell
  • Kali Linux: sudo apt -y remove powershell
  • CentOS/RHEL: sudo yum remove powershell
  • Snap으로 설치한 경우: sudo snap remove powershell

리눅스에서 PowerShell Core 실행 및 사용 방법

리눅스에서 PowerShell 셸을 실행하려면 다음 명령을 입력합니다.

pwsh

설치된 PowerShell 버전은 다음 명령으로 확인할 수 있습니다.

$PSVersionTable

PowerShell 명령을 입력할 때는 TAB 키를 눌러 코드 자동 완성 기능을 활용할 수 있습니다.

이 예제에서는 PowerShell Core 7.2.0이 설치되어 있습니다.

PSVersion 7.2.0
PSEdition Core
OS Linux 5.4.0-81-generic #91-Ubuntu SMP Thu Jul 15 19:09:17 UTC 2021
Platform Unix

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

PowerShell 셸에서 명령을 실행하면 bash에 비해 완료까지 몇 배 더 오래 걸리는 것을 확인할 수 있습니다. 다음과 같이 명령 실행 시간을 직접 비교해 보세요.

time pwsh -Command Get-History
time bash -c history

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

리눅스의 PowerShell에는 기본적으로 다음과 같은 내장 모듈이 포함되어 있습니다.

Get-Module –ListAvailable

  • Microsoft.PowerShell.Archive
  • Microsoft.PowerShell.Host
  • Microsoft.PowerShell.Management
  • Microsoft.PowerShell.Security
  • Microsoft.PowerShell.Utility
  • PackageManagement
  • PowerShellGet
  • PSReadLine
  • ThreadJob

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

VMware PowerCLI를 포함한 다른 모듈도 추가로 설치할 수 있습니다.

현재 날짜를 확인하려면:

Get-Date

호스트 업타임(가동 시간)을 확인하려면:

Get-Uptime

현재 디렉터리의 내용을 확인하려면:

Dir

또는:

Get-ChildItem

리눅스 배포판(Ubuntu·Debian·CentOS·Kali)에 PowerShell Core 설치하는 방법

리눅스의 PowerShell 명령은 대소문자를 구분하지 않습니다.

PowerShell 명령 실행 기록을 표시하려면:

History

명령에 대한 도움말을 보려면:

Get-Help Get-History

bash에서 PowerShell 스크립트를 실행하려면:

pwsh /home/sysops/CheckSpace.ps1

다음 글에서는 PowerShell을 활용한 리눅스 관리 및 자동화 시나리오에 대해 더 자세히 다룰 예정입니다.