Installare WSL2 e Ubuntu 26.04 su Windows 11: Linux, systemd e Docker senza dual boot

Il Sottosistema Windows per Linux (WSL) permette di usare una distribuzione Linux completa dentro Windows 11, senza partizionare il disco né riavviare. Con WSL2 Linux gira in una macchina virtuale leggera con un vero kernel, e questo significa systemd, Docker e quasi tutti gli strumenti da server. L’installazione è un solo comando; il lavoro vero sta nelle impostazioni che le guide di solito saltano: memoria, posizione dei file e scelta fra Docker Desktop e Docker installato in Ubuntu.

In breve

  • Tempo: 15–30 minuti, più il download della distribuzione
  • Difficoltà: facile
  • Cosa serve: Windows 11 (o Windows 10 2004, build 19041 e successive), virtualizzazione attiva nel BIOS, account amministratore, qualche GB libero su C:
  • Risultato: Ubuntu 26.04 LTS in WSL2 con systemd, memoria limitata a piacere, Docker funzionante

Versioni: Windows 11 26H2, WSL dal Microsoft Store, Ubuntu 26.04 LTS “Resolute Raccoon”, Docker Engine 29.x · procedura verificata sulla documentazione ufficiale Microsoft e Docker al 4 novembre 2026.

Prerequisiti e backup

WSL2 richiede la virtualizzazione hardware (Intel VT-x o AMD-V/SVM) attiva nel firmware; la guida https://hardwarfare.it/guide/tutorial/attivare-secure-boot-tpm-virtualizzazione-bios/ spiega dove trovarla per ogni marca. La documentazione Microsoft ricorda anche che serve un processore con SLAT (Second Level Address Translation), introdotta con gli Intel Core di prima generazione (Nehalem) e con gli AMD Opteron: CPU più vecchie come i Core 2 Duo non possono eseguire WSL2.

Attenzione: WSL in sé non tocca i vostri file Windows, ma tutto ciò che salvate dentro Ubuntu vive in un disco virtuale. Se un giorno eliminate la distribuzione con wsl --unregister, Microsoft avverte che dati, impostazioni e software vengono persi in modo permanente. Il comando di esportazione per il backup è nella sezione “Come tornare indietro”.

Passo 1 · Installare WSL e Ubuntu

Aprite PowerShell come amministratore (clic destro, Esegui come amministratore) e lanciate:

wsl --install

Il comando abilita i componenti necessari e installa la distribuzione predefinita, Ubuntu; poi riavviate. Al primo avvio di Ubuntu la console decomprime i file e vi chiede un nome utente e una password Linux: sono indipendenti dall’account Windows, e la password vi servirà per sudo.

Se volete una versione precisa di Ubuntu, guardate l’elenco delle distribuzioni disponibili e installate quella giusta usando esattamente il nome della colonna NAME:

wsl --list --online
wsl --install -d NOME_DISTRIBUZIONE

La documentazione Microsoft segnala due casi pratici: se wsl --install mostra solo la guida dei comandi, WSL è già installato e dovete usare la forma con -d; se l’installazione resta ferma a 0,0%, aggiungete --web-download per scaricare la distribuzione direttamente invece che dallo Store.

Verifica: in PowerShell wsl -l -v deve mostrare la distribuzione con VERSION 2. Dentro Ubuntu, cat /etc/os-release deve indicare 26.04 e il nome in codice resolute. Se la versione è diversa, la distribuzione “Ubuntu” predefinita sul vostro PC punta a un’altra release: installate quella con il nome specifico preso da wsl --list --online.

Passo 2 · Aggiornare WSL e Ubuntu

WSL si aggiorna separatamente da Windows. In PowerShell:

wsl --update
wsl --version

Dentro Ubuntu aggiornate i pacchetti:

sudo apt update && sudo apt upgrade

Verifica: wsl --version mostra la versione di WSL e del kernel. Annotatela: Docker Desktop richiede almeno WSL 2.1.5.

Passo 3 · Attivare systemd

systemd è il gestore dei servizi di Ubuntu, quello che avvia Docker, SSH o un database all’accensione. In WSL si attiva per distribuzione dal file /etc/wsl.conf. Controllate prima cosa c’è:

cat /etc/wsl.conf

Se manca la sezione [boot] con systemd=true, aggiungetela con un editor (sudo nano /etc/wsl.conf):

[boot]
systemd=true

Poi chiudete WSL da PowerShell, così che la modifica venga letta al prossimo avvio:

wsl --shutdown

Verifica: riaprite Ubuntu e lanciate systemctl list-unit-files --type=service: deve elencare i servizi con il loro stato. Se risponde che il sistema non è stato avviato con systemd, la sezione [boot] non è stata letta: ricontrollate il file e ripetete wsl --shutdown.

Passo 4 · Limitare memoria e processori con .wslconfig

Di default la macchina virtuale di WSL2 può usare il 50% della RAM di Windows e tutti i processori logici, più uno swap pari al 25% della memoria. Su un PC da 16 GB con Docker e un browser aperti è facile sentire il rallentamento. Le impostazioni globali stanno nel file %UserProfile%.wslconfig, che non esiste finché non lo create (per esempio notepad $env:USERPROFILE.wslconfig da PowerShell):

[wsl2]
memory=6GB
processors=4
swap=4GB

I valori sono un esempio per un PC da 16 GB e 8 core: adattateli. Microsoft consiglia di modificare queste opzioni dall’app Impostazioni WSL, che si trova nel menu Start, invece che a mano: il risultato è lo stesso file.

Le modifiche si applicano solo quando la macchina virtuale si è fermata del tutto. La documentazione parla di una “regola degli 8 secondi” dopo la chiusura di tutte le shell; il modo più sicuro è wsl --shutdown.

Verifica: dentro Ubuntu, free -h deve mostrare un totale vicino al valore di memory e nproc il numero di processori scelto.

Passo 5 · Dove tenere i file (e perché conta)

La regola di Microsoft è semplice: se lavorate con strumenti Linux, tenete i file nel file system di Linux (/home/VOSTRO_UTENTE/progetti); se lavorate con strumenti Windows, nel file system di Windows. Accedere ai file di Windows da Linux passa per /mnt/c/... ed è sensibilmente più lento, cosa che si nota con git, npm o con Docker su migliaia di piccoli file.

Il passaggio fra i due mondi resta comodo: da Ubuntu explorer.exe . apre la cartella corrente in Esplora file, e da Windows scrivendo wsl$ nella barra degli indirizzi vedete il file system di tutte le distribuzioni.

Passo 6 · Docker: Desktop o Engine dentro Ubuntu

Docker Desktop (WSL 2 backend)Docker Engine in Ubuntu
InstallazioneProgramma Windows, motore in una distribuzione separata docker-desktopPacchetti apt dal repository Docker
RequisitiWSL 2.1.5 o successivosystemd attivo (passo 3)
Comandi docker da PowerShellSìSolo dentro Ubuntu (o con wsl docker ...)
Per chiChi vuole un’interfaccia grafica e integrazione con WindowsChi vuole lo stesso ambiente di un server Ubuntu

Opzione A · Docker Desktop

Installate Docker Desktop per Windows, apritelo e in Settings > General verificate che Use WSL 2 based engine sia attivo (lo è di default sui sistemi compatibili). In Settings > Resources > WSL Integration abilitate Ubuntu e premete Apply. La documentazione Docker chiede di disinstallare prima qualsiasi Docker Engine o Docker CLI installato dentro la distribuzione, per evitare conflitti: non mescolate le due opzioni.

Opzione B · Docker Engine in Ubuntu 26.04

Ubuntu Resolute 26.04 LTS è nell’elenco delle versioni supportate da Docker. Rimuovete eventuali pacchetti in conflitto, aggiungete il repository ufficiale e installate:

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc docker-buildx podman-docker containerd runc | cut -f1)
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Per usare docker senza sudo aggiungete il vostro utente al gruppo docker, sapendo che la documentazione Docker avverte che il gruppo concede privilegi equivalenti a root:

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

Verifica: docker run hello-world deve scaricare l’immagine di prova e stampare il messaggio di benvenuto. Con l’opzione B, systemctl status docker deve mostrare il servizio attivo. Per Compose e i primi container, continuate con https://hardwarfare.it/ai-software/linux/installare-docker-compose-ubuntu-debian/.

Se qualcosa va storto

  • “Error: 0x80370102 The virtual machine could not be started because a required feature is not installed.” Microsoft indica di attivare il componente facoltativo Piattaforma macchina virtuale (Virtual Machine Platform), verificare la virtualizzazione nel BIOS e riavviare. Controllate anche che l’hypervisor sia abilitato all’avvio con bcdedit /enum | findstr -i hypervisorlaunchtype (PowerShell come amministratore): se il valore è Off, correggetelo con bcdedit /set hypervisorlaunchtype Auto e riavviate. VMware e VirtualBox devono essere in versioni compatibili con Hyper-V o spenti.
  • “WslRegisterDistribution failed with error 0x8007019e”: il componente Sottosistema Windows per Linux non è abilitato. Attivatelo dalla finestra delle funzionalità facoltative di Windows (Windows + R, optionalfeatures), oppure rilanciate wsl --install.
  • “Installation failed with error 0x80070003”: Microsoft indica due cause. La prima è la virtualizzazione disattivata nel BIOS (come per 0x80370102); la seconda è che WSL gira solo sull’unità di sistema. In Impostazioni > Sistema > Archiviazione, nelle impostazioni di archiviazione avanzate, controllate che i nuovi contenuti vengano salvati su C:.
  • Le modifiche a .wslconfig o wsl.conf non hanno effetto: WSL era ancora in esecuzione. wsl --list --running deve rispondere che non ci sono distribuzioni in esecuzione prima di riaprire Ubuntu.
  • Docker Desktop non vede Ubuntu: l’integrazione va abilitata per ogni distribuzione in WSL Integration; se avevate installato anche Docker Engine dentro Ubuntu, rimuovetelo.

Come tornare indietro

Prima di qualsiasi esperimento rischioso, esportate la distribuzione in un file tar e reimportatela se serve:

wsl --export Ubuntu D:Backupubuntu.tar
wsl --import Ubuntu-ripristinata D:WSLUbuntu-ripristinata D:Backupubuntu.tar

Per eliminare definitivamente una distribuzione (perdendone i dati) usate wsl --unregister NOME_DISTRIBUZIONE. Per annullare i limiti di risorse basta cancellare .wslconfig e lanciare wsl --shutdown.

Guide collegate

  • https://hardwarfare.it/guide/tutorial/attivare-secure-boot-tpm-virtualizzazione-bios/: per l’errore 0x80370102
  • https://hardwarfare.it/ai-software/linux/installare-docker-compose-ubuntu-debian/: il passo successivo una volta che Docker funziona
  • https://hardwarfare.it/guide/tutorial/dual-boot-windows-11-ubuntu-26-04/: se vi serve Linux con accesso diretto all’hardware

La nostra lettura: per sviluppo, script e container WSL2 ha reso il dual boot superfluo per la maggior parte degli utenti. Le due impostazioni che fanno la differenza sono il limite di memoria e la posizione dei file: con progetti in /home e una RAM ben dosata, Windows e Linux convivono senza che uno rallenti l’altro.

Articolo redatto con il supporto di strumenti di intelligenza artificiale e verificato dalla redazione. Come usiamo l'AI · Come lavoriamo

Redazione HardWarfare
Redazione HardWarfarehttps://hardwarfare.it/chi-siamo/
La redazione di HardWarfare segue hardware PC, gaming, smartphone, sicurezza informatica e mercato tech. Ogni articolo parte da fonti primarie linkate in calce, viene verificato da un revisore diverso da chi lo scrive e si aggiorna quando i fatti cambiano. Scriveteci da Contatti per segnalazioni e correzioni.

Da non perdere

Articoli correlati

LASCIA UN COMMENTO

Scrivi il tuo commento!
Inserisci il tuo nome