Miłośnicy systemu operacyjnego Windows czy administratorzy z pewnością wiele razy korzystali i spotykali się z PowerShellem. Jest to wieloplatformowe rozwiązanie do automatyzowania zadań, które składa się z kilku elementów. Przede wszystkim z powłoki wraz z wierszem poleceń, ale też języka skryptów, zarządzania konfiguracją. Dzięki PowerShellowi możemy administrować, zarządzać, wdrażać, automatyzować i tak dalej.  

Ta Microsoftowa powłoka wyróżnia się na tle innych popularnych środowisk tym, że akceptuje nie tylko wierszowe polecenia i zwraca je, ale także akceptuje i zwraca obiekty platformy .NET. PowerShell, jak i inne popularne powłoki, obsługuje aliasy, historię poleceń, potrafi przewidywać polecenia, dopełniać je, obsługuje potoki i ma coś na kształt linuxowego mana – czyli pomocnika do komend. 

O PowerShellu można by powiedzieć i napisać wiele, ale w tym artykule zajmiemy się instalacją i uruchomieniem tej powłoki w systemie Linux, a konkretnie Debian. Zerknijmy na tabelkę przygotowaną przez zespół Microsoft w kontekście obsługiwania poszczególnych wersji systemu Debian. 

Jak widać, bez problemu najnowsza wersja powłoki działa w Debianie aż do wersji 9. 8 wersja Debiana nie jest już obsługiwana od dawna, więc i wsparcia dla tej wersji i niższych już po prostu nie ma.

Warto wspomnieć o tym, że PowerShell dostarczany z Microsoftu, wspiera możliwość uruchomienia powłoki na procesorach opartych o architekturę ARM w najnowszej wersji oznaczonej numerem kodowym 7.2.

Instalowanie PowerShella w systemie Debian 11

Pobieranie paczki.

Paczkę instalacyjną w postaci pakietu .deb możemy pobrać z oficjalnego repozytorium na githubie.

https://github.com/PowerShell/PowerShell/releases/download/v7.2.4/powershell-lts_7.2.4-1.deb_amd64.deb

Jeśli jednak nie chcemy każdorazowo pamiętać o aktualizowaniu PowerShella ręcznie, poprzez podmianę paczki, warto skorzystać z menadżera pakietów. Wtedy, podczas standardowej aktualizacji, którą i tak cyklicznie wykonujemy (a przynajmniej powinniśmy), PowerShell automatycznie będzie się aktualizował.

Niezbędne kroki przedinstalacyjne. Instalacja niezbędnych pakietów.

sudo apt update  && sudo apt install -y curl gnupg apt-transport-https

Pobranie klucza GPG.

curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Dodanie repozytorium PowerShella do APT’a.

sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-bullseye-prod bullseye main" > /etc/apt/sources.list.d/microsoft.list'
sudo apt update
sudo apt install -y powershell

Uruchomienie PowerShella.

pwsh

Instalowanie PowerShella w systemie Debian 10

W starszej wersji Debiana instalacja jest mniej więcej podobna, ale jednak nieco inna, dlatego warto o niej wspomnieć. Powyższy sposób dotyczy systemu Debian 11.

W Debian 10 pobieramy paczkę dla menadżera pakietów z kluczem do repozytorium (jeśli chcemy, aby menadżer pakietów zarządzał paczkami Powershella).

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

Instalujemy klucz.

sudo dpkg -i packages-microsoft-prod.deb

Instalujemy PowerShella.

sudo apt update
sudo apt install -y powershell 

Uruchomienie PowerShella.

pwsh

W ten sposób mamy zainstalowaną powłokę znaną administratorom z systemu Windows. Nie będziemy zajmować się instalacją w niższych wersjach Debiana. Jest ona mniej więcej podobna do wersji z Debiana 10.

Instalacja w systemie z procesorem ARM

Jak zerkniemy w oficjalne repozytorium PowerShella na githubie, zauważymy wszystkie wersje, które są dostępne do instalacji.

Dla wersji 7.2

https://github.com/PowerShell/PowerShell/releases/tag/v7.2.4

Zarówno dla 32 jak i 64-bitowych wersji procesora ARM jesteśmy w stanie zainstalować powłokę od MS.

Przedinstalacyjne wymagania.

sudo apt-get update

Instalujemy bibliotekę libssl z wyłączeniem wersji 1.0.X.

sudo apt-get install '^libssl1.0.[0-9]$' libunwind8 -y

Pobieramy najnowszą wersję PowerShella dla systemu opartego o architekturę ARM.

wget https://github.com/PowerShell/PowerShell/releases/download/v7.2.4/powershell-7.2.4-linux-arm32.tar.gz

Instalacja.

mkdir ~/powershell
tar -xvf ./powershell-7.2.4-linux-arm32.tar.gz -C ~/powershell

Uruchomienie powłoki.

~/powershell/pwsh

Aby ułatwić sobie pracę, możemy utworzyć dodatkowo link symboliczny do powłoki.

sudo ln -s ~/powershell/pwsh /usr/local/bin/pwsh