Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Come installare PowerShell su Raspberry Pi

Impariamo ad installare facilmente la command-line shell di Microsoft PowerShell su una single board Raspberry Pi
Impariamo ad installare facilmente la command-line shell di Microsoft PowerShell su una single board Raspberry Pi
Link copiato negli appunti

Gli amministratori di sistema e gli utenti avanzati che usano Windows si sono di sicuro ritrovarti a dover utilizzare in svariate occasioni PowerShell, la nota command-line shell che viene distribuita con il sistema operativo sviluppato da Microsoft. PowerShell non è solo un emulatore di terminale molto avanzato ma include anche un completissimo linguaggio di scripting. In rete esistono migliaia di script per PowerShell capaci di eseguire le più svariate operazioni in modo completamente automatizzato. In buona sostanza è un'alternativa di tutto rispetto a Bash, ovvero la shell che in genere viene implementata di base nelle distribuzioni Linux.

PowerShell nasce per ambiente Windows ma ne esiste una versione nativa anche per Linux. In questo tutorial parleremo di come installare PowerShell su Raspberry Pi OS, la distribuzione sviluppata dai coder della Raspberry Pi Foundation che si basa sui pacchetti di Debian. Tale guida permette quindi di beneficiare di tutti gli script dedicati a PowerShell anche sul sistema operativo del Pinguino. Questa configurazione software, unita alla versatilità di Bash, permette di semplificare notevolmente il workflow di tutti i sysadmin che necessitano di automatizzare una serie di task, anche molto complessi, su computer equipaggiati con Windows o Linux.

Requisiti hardware

Raspberry Pi

Raspberry Pi è animato da un SoC ARM a 64bit. PowerShell è pienamente compatibile con diverse architetture hardware tra cui anche ARM64. Gli utenti che quindi desiderano ottenere una postazione di lavoro Linux con PowerShell potranno acquistare l'ultima variante della board low-cost. Chi invece possiede un Raspberry Pi di vecchia generazione non deve preoccuparsi, è disponibile infatti una versione di PowerShell compatibile con i chip ARM a 32bit, quelli utilizzati su Raspberry Pi di prima e di seconda generazione.

Oltre al device, per terminare questo tutorial si devono reperire ovviamente un display, mouse, tastiera ed una microSD per ospitare il sistema operativo Raspberry Pi OS.

Configurazione di Raspberry Pi OS

Raspberry Pi OS

Prima di procedere all'installazione di PowerShell vera e propria è necessario installare alcuni pacchetti necessari. Apriamo quindi la shell, sfruttando la pratica shortcut da tastiera CTRL+ALT+T, e andiamo ad invocare la CLI del gestore di pacchetti APT:

sudo apt update && sudo apt install wget libssl1.1 libunwind8

Si tratta di due comandi concatenati, tramite l'attributo &&, la prima parte va ad indicare a Raspberry Pi OS di verificare la disponibilità di nuovi pacchetti aggiornati. La seconda parte avvia il download ed l'installazione di tre diversi programmi. wget è un pratico download manager da shell, è in grado di scaricare file e documenti semplicemente indicando il link della risorsa desiderata. libssl, invece, viene utilizzata da PowerShell per gestire le connessioni crittografate. libunwind8 è infine la libreria su cui è basato PowerShell ed è necessaria al suo corretto funzionamento.

Ultimata l'installazione di questi componenti software dobbiamo generare una directory dove posizionare tutti i file di PowerShell. Quindi torniamo in bash e scriviamo:

sudo mkdir -p /opt/microsoft/powershell/7

L'opzione -p serve per generare tutte le directory parenti.

Download e configurazione di PowerShell su Raspberry Pi OS

Siamo finalmente pronti per eseguire il download dell'installer di PowerShell cosi da avviare in seguito il suo setup. Per scaricare tale pacchetto affidiamoci a wget:

wget -O /tmp/powershell.tar.gz https://github.com/PowerShell/PowerShell/releases/download/v7.2.6/powershell-7.2.6-linux-arm64.tar.gz

La versione che abbiamo appena scaricato è compatibile con i sistemi ARM64, quindi con le moderne edizioni del Raspberry Pi. Se stiamo utilizzando una versione più datata dobbiamo invece fare riferimento a questo installer dedicato alle architetture hardware ARM a 32bit:

wget -O /tmp/powershell.tar.gz https://github.com/PowerShell/PowerShell/releases/download/v7.2.6/powershell-7.2.6-linux-arm32.tar.gz

Adesso dobbiamo decomprimere l'installer che attualmente si trova in formato tar.gz:

sudo tar zxf /tmp/powershell.tar.gz -C /opt/microsoft/powershell/7

Il file appena decompresso non dispone dei privilegi per essere eseguito, ecco perché, sfruttando sudo, è necessario attribuirli manualmente:

sudo chmod +x /opt/microsoft/powershell/7/pwsh

Arrivati a questo punto bisogna operare un piccolo tweak al sistema per ottenere un workflow ottimale con PowerShell. Tale modifica si compone nella creazione di un symbolic link tra l'eseguibile di PowerShell, chiamato pwsh, e la directory /user/bin/, dove in genere sono collocate una serie di librerie e di eseguibili dei diversi programmi del sistema operativo. Questo ci consente di sfruttare il comando pwsh, necessario per invocare PowerShell, direttamente da bash, senza aprire manualmente una sessione a parte.

Quindi torniamo nella shell e scriviamo:

sudo ln -s /opt/microsoft/powershell/7/pwsh /usr/bin/pwsh

Ora se lo desiderate potete anche eliminare il file compresso precedentemente scaricato cosi da liberare spazio sul disco fisso:

rm /tmp/powershell.tar.gz

Avvio di PowerShell su Raspberry Pi OS

Siamo quindi pronti per lanciare PowerShell direttamente da bash. Tramite la modifica fatta in precedenza non dovremo avviare manualmente l'eseguibile della command-line shell, basterà digitare il nome del programma sul terminale:

pwsh

Come output PowerShell dovrebbe restituire tale messaggio:

PowerShell 7.2.6
Copyright (c) Microsoft Corporation.
https://aka.ms/powershell
Type 'help' to get help.
PS /home/pi>

Come potete notare PowerShell si posiziona in automatico, esattamente come il normale emulatore di terminale della distribuzione, sulla home directory di sistema /home/pi. Ovviamente se avete rinominato l'account utente, o se ne state utilizzato uno diverso, al posto di pi verrà visualizzato il vostro username personale.

powershell

Per testare il corretto funzionamento di PowerShell basta iniziare a digitare qualche comando che conosciamo. Ad esempio, ecco come farci stampare una frase a schermo:

Write-Host Ciao a tutti!

Come risposta dovremmo ottenere proprio "Ciao a tutti!". Successivamente, se lo desideriamo, è possibile scaricare ed eseguire i diversi script per PowerShell di cui necessitiamo, cosi da sincerarci che l'installazione sia stata eseguita correttamente.

Se desideriamo uscire dalla sessione di PowerShell non dovremo fare altro che sfruttare la classica shorcut che viene utilizzata anche su bash per terminare l'esecuzione di un task: CTRL+C. In questo caso PowerShell interpreta l'input come se avessimo digitato il comando "exit" e procede in autonomia all'arresto.

Ti consigliamo anche