Configurare l'ambiente di sviluppo WSL

Guida dettagliata alle procedure consigliate per la configurazione di un ambiente di sviluppo WSL. Informazioni su come eseguire il comando per installare la shell Bash predefinita che usa Ubuntu o che può essere impostata per installare altre distribuzioni Linux, usare i comandi WSL di base, configurare Visual Studio Code o Visual Studio, Git, Windows Credential Manager, database come MongoDB, Postgres o MySQL, configurare l'accelerazione GPU, eseguire app GUI e altro ancora.

Introduzione

Sottosistema Windows per Linux viene fornito con il sistema operativo Windows, ma è necessario abilitarlo e installare una distribuzione Linux prima di iniziare a usarlo.

Per usare il comando semplificato --install, è necessario eseguire una build recente di Windows (Build 20262+). Per controllare la versione e il numero della build, premi il tasto Windows + R, digita winver e seleziona OK. Puoi eseguire l'aggiornamento usando il menu Impostazioni o Assistente Windows Update.

Se si preferisce installare una distribuzione Linux diversa da Ubuntu o si preferisce completare manualmente questi passaggi, vedere la pagina di installazione di WSL per altri dettagli.

Aprire PowerShell (o un prompt dei comandi di Windows) e digitare:

wsl --install

Il comando --install esegue le azioni seguenti:

  • Abilita i componenti facoltativi della piattaforma delle macchine virtuali e di WSL
  • Scarica e installa il kernel più recente di Linux
  • Imposta WSL 2 come valore predefinito
  • Scarica e installa la distribuzione Ubuntu Linux (potrebbe essere necessario riavviare il computer)

Sarà necessario riavviare il computer durante questo processo di installazione.

PowerShell command line running wsl --install

Se si verificano problemi, vedere l'articolo sulla risoluzione dei problemi relativi all'installazione.

Configurare il nome utente e la password di Linux

Al termine del processo di installazione della distribuzione Linux con WSL, aprire la distribuzione (Ubuntu per impostazione predefinita) usando il menu Start. Verrà chiesto di creare un nome utente e una password per la distribuzione Linux.

  • Nome utente e Password sono specifici di ogni distribuzione di Linux installata e non hanno effetto sul nome utente di Windows.

  • Si noti che, durante l'immissione della password, non verrà visualizzato nulla sullo schermo. Questa operazione è denominata digitazione cieca. Non si vedrà ciò che si sta digitando, è del tutto normale.

  • Dopo aver creato Nome utente e Password, l'account sarà il tuo utente predefinito per la distribuzione ed eseguirà l'accesso automatico all'avvio.

  • Questo account verrà considerato l'amministratore di Linux, con la possibilità di eseguire comandi amministrativi sudo (Super User Do).

  • Ogni distribuzione Linux in esecuzione in WSL ha i propri account utente e le proprie password di Linux. Dovrai configurare un account utente di Linux ogni volta che aggiungi una distribuzione o esegui una reinstallazione o una reimpostazione.

Nota

Le distribuzioni Linux installate con WSL sono un'installazione per utente e non possono essere condivise con altri account utente di Windows. Si è verificato un errore di nome utente? StackExchange: quali caratteri usare o meno nei nomi utente in Linux?

Ubuntu command line enter UNIX username

Per modificare o reimpostare la password, aprire la distribuzione di Linux e immettere il comando: passwd. Ti verrà chiesto di immettere la password corrente, quindi di immettere la nuova password e infine di confermarla.

Se dimentichi la password per la distribuzione di Linux:

  1. Apri PowerShell e immetti la radice della distribuzione di WSL predefinita usando il comando: wsl -u root.

    Se devi aggiornare la password dimenticata in una distribuzione diversa da quella predefinita, usa il comando wsl -d Debian -u root, sostituendo Debian con il nome della distribuzione di destinazione.

  2. Dopo aver aperto la distribuzione di WSL a livello di radice all'interno di PowerShell, è possibile usare questo comando per aggiornare la password: passwd <username> dove <username> è il nome utente dell'account nella distribuzione la cui password è stata dimenticata.

  3. Ti verrà richiesto di immettere una nuova password UNIX e quindi di confermarla. Quando viene comunicato che la password è stata aggiornata, chiudere WSL all'interno di PowerShell usando il comando: exit.

Aggiornare i pacchetti

È consigliabile aggiornare regolarmente i pacchetti usando la gestione pacchetti preferita per la distribuzione. Per Ubuntu o Debian, usare il comando:

sudo apt update && sudo apt upgrade

Windows non aggiorna automaticamente le distribuzioni di Linux. Si tratta di un'attività che la maggior parte degli utenti di Linux preferisce controllare autonomamente.

Aggiungere altre distribuzioni

Per aggiungere altre distribuzioni Linux, è possibile eseguire l'installazione tramite Microsoft Store, tramite il comando --import o trasferire localmente la propria distribuzione personalizzata. È anche possibile configurare immagini WSL personalizzate per la distribuzione aziendale nell'organizzazione.

Configurare Windows Terminal

Windows Terminal può eseguire qualsiasi applicazione con un'interfaccia della riga di comando. Le principali funzionalità includono più schede e riquadri, il supporto per i caratteri Unicode e UTF-8, un motore di rendering del testo con accelerazione della GPU e la possibilità di personalizzare temi, testo, colori, sfondo e scelte rapide.

Ogni volta che viene installata una nuova distribuzione di WSL Linux, verrà creata una nuova istanza all'interno di Windows Terminal che può essere personalizzata in base alle preferenze.

È consigliabile usare WSL con Windows Terminal, soprattutto se si prevede di usare più righe di comando. Vedere la documentazione di Windows Terminal per informazioni su come configurarla e personalizzare le tue preferenze, tra cui:

Windows Terminal screenshot

Archiviazione file

  • Per aprire il progetto WSL in Esplora file di Windows, immettere: explorer.exe .
    Assicurarsi di aggiungere il punto alla fine del comando per aprire la directory corrente.

  • Archiviare i file di progetto nello stesso sistema operativo degli strumenti che si prevede di usare.
    Per la massima velocità delle prestazioni, quindi, se si lavora con strumenti di Linux in una riga di comando di Linux (Ubuntu, OpenSUSE e così via) occorre archiviare i file nel file system di WSL. Se si usa una riga di comando di Windows (PowerShell, prompt dei comandi) con strumenti Windows, occorre archiviare i file nel file system di Windows. È possibile accedere ai file nei sistemi operativi, ma ciò può rallentare significativamente le prestazioni.

Ad esempio, quando archivi i file di progetto WSL:

  • Usa la directory radice del file system Linux: \\wsl$\<DistroName>\home\<UserName>\Project
  • Non la directory radice del file system Windows: C:\Users\<UserName>\Project o /mnt/c/Users/<UserName>/Project$

Windows File Explorer displaying Linux storage

Configurare il proprio editor di codice preferito

È consigliabile usare Visual Studio Code o Visual Studio, perché supportano direttamente lo sviluppo remoto e il debug con WSL. Visual Studio Code consente di usare WSL come ambiente di sviluppo completo. Visual Studio offre supporto WSL nativo per lo sviluppo multipiattaforma C++.

Utilizzare Visual Studio Code

Seguire questa guida dettagliata per iniziare a usare Visual Studio Code con WSL, che include l'installazione del pacchetto di estensione Sviluppo remoto. Questa estensione consente di eseguire WSL, SSH o un contenitore di sviluppo per la modifica e il debug con il set completo di funzionalità di Visual Studio Code. Scambiare rapidamente tra ambienti di sviluppo diversi e separati e apportare aggiornamenti senza doversi preoccupare dell'impatto sul computer locale.

Dopo aver installato e configurato VS Code, è possibile aprire il progetto WSL con un server remoto di VS Code immettendo: code .

Assicurarsi di aggiungere il punto alla fine del comando per aprire la directory corrente.

VS Code with WSL extensions displayed

Usare Visual Studio

Seguire questa guida dettagliata per iniziare a usare Visual Studio con lo sviluppo multipiattaforma WSL per C++. Visual Studio 2022 consente di compilare ed eseguire il debug di progetti CMake in Windows, distribuzioni WSL e connessioni SSH dalla stessa istanza di Visual Studio.

Select a target system in Visual Studio 2022

Configurare la gestione delle versioni con Git

Seguire questa guida dettagliata per iniziare a usare Git in WSL e connettere il progetto al sistema di controllo della versione Git, insieme all'uso del gestore delle credenziali per l'autenticazione, usando i file Git Ignore, la comprensione delle terminazioni di riga Git e l'uso dei comandi Git predefiniti in VS Code.

Displaying git version in the command line

Configurare contenitori di sviluppo remoto con Docker

Seguire questa guida dettagliata per iniziare a usare i contenitori remoti Docker in WSL 2 e connettere il progetto a un contenitore di sviluppo remoto con Docker Desktop per Windows.

Docker Desktop screenshot

Configurare un database

Seguire questa guida dettagliata per iniziare a usare i database in WSL e connettere il progetto a un database nell'ambiente WSL. Introduzione a MySQL, PostgreSQL, MongoDB, Redis, Microsoft SQL Server e SQLite.

Running MongoDB in Ubuntu via WSL

Configurare l'accelerazione GPU per prestazioni più veloci

Seguire questa guida dettagliata per configurare il training di Machine Learning accelerato della GPU in WSL e sfruttare la GPU del computer (unità di elaborazione grafica) per accelerare i carichi di lavoro con prestazioni elevate.

Running GPU acceleration with WSL

Comandi WSL di base

Le distribuzioni Linux installate tramite WSL sono gestite in modo ottimale tramite PowerShell o il prompt dei comandi di Windows. Per un elenco di comandi di base con i quali acquisire familiarità nell'uso di WSL, vedere la guida di riferimento ai comandi WSL.

Inoltre, molti comandi sono interoperabili tra Windows e Linux. Ecco alcuni esempi:

  • Eseguire gli strumenti Linux da una riga di comando di Windows: aprire PowerShell e visualizzare i contenuti della directory di C:\temp> usando il comando Linux ls -la immettendo: wsl ls -la

  • Combinazione di comandi Linux e Windows: in questo esempio, il comando Linux ls -la viene usato per elencare i file nella directory, quindi il comando findstr di PowerShell viene usato per filtrare i risultati per le parole contenenti "git": wsl ls -la | findstr "git". Questa operazione può essere eseguita anche combinando il comando Windows dir con il comando Linux grep: dir | wsl grep git.

  • Eseguire uno strumento Windows direttamente dalla riga di comando WSL: <tool-name>.exe ad esempio, per aprire il file con estensione .bashrc (lo script della shell eseguito ogni volta che viene avviata la riga di comando Linux), immettere: notepad.exe .bashrc

  • Eseguire lo strumento Windows ipconfig.exe con lo strumento Linux Grep: da Bash immettere il comando ipconfig.exe | grep IPv4 | cut -d: -f2 o da PowerShell immettere ipconfig.exe | wsl grep IPv4 | wsl cut -d: -f2 Questo esempio illustra lo strumento ipconfig nel file system Di Windows usato per visualizzare i valori di configurazione di rete TCP/IP correnti e quindi filtrati in base al solo risultato IPv4 con grep, uno strumento Linux.

Montare un'unità esterna o USB

Seguire questa guida dettagliata per iniziare a montare un disco Linux in WSL 2.

wsl mount command screenshot

Eseguire app GUI Linux

Seguire questa esercitazione per informazioni su come configurare ed eseguire app con interfaccia utente grafica Linux in WSL.

Risorse aggiuntive