WSL (Windows Subsystem for Linux o Sottosistema Windows per Linux) è uno strumento che Microsoft ha aggiunto nelle ultime versioni di Windows 10 che permette di installare ed eseguire le principali distribuzioni Linux all’interno di una normale finestra.
L’implementazione di WSL più recente utilizza la virtualizzazione (Hyper-V): in questo modo le distribuzioni Linux che si installeranno e si eseguiranno da Windows 10 appariranno come se fossero in esecuzione su una qualunque macchina fisica. Tutti i comandi sono così supportati, così come quelli di rete, ma è possibile far sì che la distribuzione Linux interagisca non soltanto con il suo file system ma anche con quello usato in Windows.
Le distribuzioni Linux installate con WSL potranno accedere al contenuto delle unità di memorizzazione Windows e il sistema operativo potrà leggere e scrivere sulle partizioni Linux utilizzate all’interno delle macchine virtuali.
Nell’articolo Linux in Windows: come, quando e perché utilizzarlo abbiamo visto come usare WSL per installare distribuzioni Linux in Windows 10.
Ciò che va evidenziato è che la seconda versione di WSL rende compatibile Hyper-V con le soluzioni per la virtualizzazione e containerizzazione di terze parti: sullo stesso sistema è quindi possibile far convivere anche Virtualbox, VMware, Docker e così via.
Guida all’utilizzo delle funzioni di esportazione e backup in WSL
Abbiamo detto che WSL permette di installare ed eseguire tutte le principali distribuzioni Linux con la possibilità, con un impegno minimo, di eseguire anche programmi dotati di interfaccia grafica.
In attesa che Microsoft introduca il supporto diretto in WSL delle distribuzioni Linux dotate di desktop environment, nell’articolo WSL 2, creare in Windows 10 un collegamento ai programmi Linux abbiamo visto addirittura com’è possibile creare un collegamento in Windows 10 per avviare un programma Linux dotato di interfaccia grafica. Ciò che fino a qualche tempo sembrava fantascienza diventa oggi possibile, soprattutto grazie al “cambio di visione” di Microsoft sotto la guida di Satya Nadella.
Aprendo il prompt dei comandi di Windows 10 quindi digitando wsl -l
è possibile ottenere una lista delle distribuzioni Linux installate sul sistema in uso. Nell’esempio, come si vede, si sono installate Ubuntu e Kali Linux.
All’interno di ciascuna distribuzione Linux eseguita con WSL si installeranno programmi e se ne personalizzeranno la configurazione e il funzionamento. Come fare per creare una copia di backup dell’installazione Linux per usarla successivamente sullo stesso sistema o su altre macchine Windows 10?
La procedura è molto semplice. Per esportare un’installazione Linux utilizzata con WSL basta digitare quanto segue al prompt dei comandi:
Nell’esempio la distribuzione chiamata nome-distro (effettuare le opportune sostituzioni, ad esempio Ubuntu-20.04) verrà esportata e salvata sul desktop in forma compressa (archivio .tar
).
L’archivio compresso così creato potrà essere trasferito altrove, ad esempio copiato su un altro PC Windows 10 con WSL installato.
Per ripristinare la distribuzione sullo stesso sistema o su altre macchine Windows 10 sarà sufficiente digitare i comandi che seguono:
md %userprofile%\linux
wsl --import nome-distro-nuovo %userprofile%\linux %userprofile%\Desktop\nome-distro.tar
Cosa si è fatto? In prima battuta si è chiesto di creare una sottocartella linux
all’interno della cartella del profilo utente in uso (%userprofile%
).
Per secondo si è utilizzato il comando wsl --import
per richiedere l’importazione del file .tar
creato in precedenza sul desktop di Windows 10. La distribuzione sarà gestita in WSL con il nome nome-distro-nuovo e salvata come immagine VHDX (formato per la virtualizzazione di Microsoft, predefinito per Hyper-V) nella cartella %userprofile%\linux
.
Per avviare la distribuzione basterà infine digitare wsl -d
seguito dal nome corretto.
Nel caso in cui si volesse rimuovere una distribuzione aggiunta a WSL insieme con tutti i dati in essa presenti basterà digitare quanto segue al prompt dei comandi:
WSL provvederà a rimuovere la distribuzione specificata e a cancellare i file memorizzati nella cartella corrispondente (nel nostro esempio in %userprofile%\linux
).