This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
other:win10wsl [2022/08/12 15:58] jypeter [Prerequisites] Started preparing for WSL 2 |
other:win10wsl [2022/08/24 15:32] jypeter [Base installation] Added the kernel update step |
||
---|---|---|---|
Line 16: | Line 16: | ||
===== What is WSL ? ===== | ===== What is WSL ? ===== | ||
- | //Windows Subsystem for Linux// (**WSL**) lets you **run a Linux distribution on your Windows computer**, without the overhead of a traditional virtual machine (VM) or dual-boot setup | + | //Windows Subsystem for Linux// (**WSL**) lets you **run a Linux distribution on your Windows computer**, without the overhead of a traditional Virtual Machine (VM) or dual-boot setup |
More reading: | More reading: | ||
- | * [[https://docs.microsoft.com/en-us/windows/wsl/about|What is the Windows Subsystem for Linux?]] | + | * [[https://docs.microsoft.com/en-us/windows/wsl/about|What is the Windows Subsystem for Linux? (and WSL 2)]] |
- | * [[https://docs.microsoft.com/en-us/windows/wsl/about#what-is-wsl-2|What is WSL 2?]] | + | |
* [[https://wiki.ubuntu.com/WSL#What_is_WSL.3F|What is WSL?]] on the Ubuntu wiki site | * [[https://wiki.ubuntu.com/WSL#What_is_WSL.3F|What is WSL?]] on the Ubuntu wiki site | ||
===== Prerequisites ===== | ===== Prerequisites ===== | ||
Line 27: | Line 26: | ||
* A computer running [[https://docs.microsoft.com/en-us/windows/wsl/install-manual#step-2---check-requirements-for-running-wsl-2|Windows 11 or Windows 10, Version 1903, Build 18362 or later]] | * A computer running [[https://docs.microsoft.com/en-us/windows/wsl/install-manual#step-2---check-requirements-for-running-wsl-2|Windows 11 or Windows 10, Version 1903, Build 18362 or later]] | ||
- | * [[other:win10maintain#checking_the_installed_version|Check the installed version on your computer]] | + | * [[other:win10maintain#checking_the_installed_version|Check the installed version on your computer]]\\ If you don't have the Windows version required for running WSL, you can: |
- | * [[other:win10misc#windows_10_versions|Check the available Windows versions]] | + | * [[other:win10misc#windows_10_versions|Check the available Windows versions]] |
- | * [[other:win10maintain#updating_windows_10|See if you can update your Windows]] if your installed version is not the most recent available version | + | * [[other:win10maintain#updating_windows_10|Check if you can update Windows]] |
Line 38: | Line 37: | ||
==== Disk space ==== | ==== Disk space ==== | ||
+ | |||
+ | <code>stdu@sadira034:~$ ls -lh /mnt/c/Users/jypeter/AppData/Local/Temp/swap.vhdx | ||
+ | -rwxrwxrwx 1 root root 63M Aug 24 14:52 /mnt/c/Users/jypeter/AppData/Local/Temp/swap.vhdx | ||
+ | |||
+ | stdu@sadira034:~$ ls -lh /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx | ||
+ | -rwxrwxrwx 1 root root 1.2G Aug 24 15:20 /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx | ||
+ | |||
+ | stdu@sadira034:~$ sudo apt update && sudo apt upgrade | ||
+ | [sudo] password for stdu: | ||
+ | Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB] | ||
+ | Get:2 http://archive.ubuntu.com/ubuntu focal InRelease [265 kB] | ||
+ | [...] | ||
+ | 278 upgraded, 32 newly installed, 0 to remove and 0 not upgraded. | ||
+ | Need to get 174 MB of archives. | ||
+ | After this operation, 305 MB of additional disk space will be used. | ||
+ | Do you want to continue? [Y/n] Y | ||
+ | [...] | ||
+ | |||
+ | stdu@sadira034:~$ ls -lh /mnt/c/Users/jypeter/AppData/Local/Temp/swap.vhdx | ||
+ | -rwxrwxrwx 1 root root 63M Aug 24 14:52 /mnt/c/Users/jypeter/AppData/Local/Temp/swap.vhdx | ||
+ | |||
+ | stdu@sadira034:~$ ls -lh /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx | ||
+ | -rwxrwxrwx 1 root root 2.6G Aug 24 15:24 /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx | ||
+ | </code> | ||
FIXME | FIXME | ||
Line 53: | Line 76: | ||
===== Base installation ===== | ===== Base installation ===== | ||
- | * [[https://support.microsoft.com/en-us/help/4027538/windows-create-a-system-restore-point|Create a system restore point]] ([[https://support.microsoft.com/fr-fr/help/4027538/windows-create-a-system-restore-point|Créer un point de restauration système]]), and give it a meaningful name (e.g. //Before installing WSL//), in the unlikely case you have to restore it later | + | * [[https://support.microsoft.com/en-us/help/4027538/windows-create-a-system-restore-point|Create a system restore point]] ([[https://support.microsoft.com/fr-fr/help/4027538/windows-create-a-system-restore-point|Créer un point de restauration système]]), and give it a meaningful name (e.g. //Before installing WSL//), in the very unlikely case you have to restore it later (i.e. go back to a state where //WSL// was not activated) |
- | * Follow **closely** the steps listed in [[https://docs.microsoft.com/en-us/windows/wsl/install-win10|WSL Windows 10 Installation Guide]]. <wrap hi>Open this [[https://docs.microsoft.com/en-us/windows/wsl/install-win10|WSL Windows 10 Installation Guide]] in another window, so that you can **read the useful hints below at the same time!**</wrap> | + | * The steps below (based on [[https://docs.microsoft.com/en-us/windows/wsl/install|Install Linux on Windows with WSL]]) will work if you have //Windows 10 version 2004 and higher (Build 19041 and higher) or Windows 11// |
- | * When you have to //Open PowerShell as Administrator//, go to ''Start''=>''W''=>''Windows PowerShell'' then right-clik on ''Windows PowerShell'' and select //Run as Administrator// | + | * If you have an older Windows version (at least //Version 1903, Build 18362//), follow the [[https://docs.microsoft.com/en-us/windows/wsl/install-manual|Manual installation steps for older versions of WSL]] |
- | * FIXME At this stage, we could try to restore/clone a previously installed/customized/backed-up version of Ubuntu if we have one (see [[other:win10wsl#restoring_a_wsl_backup|Restoring a WSL backup]]) | + | |
- | * In the //Install your Linux Distribution of Choice//, we will use the very easy //install from the Microsoft Store// option | + | * Open a ''Powershell'' in //administrator// mode |
- | * Open the **Microsoft Store** with: ''Start''=>''Microsoft Store'' | + | * ''Start''=>''W''=>''Windows PowerShell'' then right-click on ''Windows PowerShell'' and select //Run as Administrator// |
- | * In the **Microsoft Store**, just search //Linux// and select the //generic// **Ubuntu** (select the //Ubuntu// that has **no version number after the name**) | + | * Use a [[https://wiki.lsce.ipsl.fr/pmip3/doku.php/other:win10apps#windows_terminal|Windows Terminal]], if you have already installed it. Use ''CTRL''+<left click> on ''Windows Powershell'' in the pull-down menu to get a ''Powershell'' in //administrator// mode |
- | * Select ''Get'' (''Télécharger'') to download the installer package. You can ignore (''No thanks'') the popups asking you to use a Microsoft account, if you are not using a Microsoft account yet on this machine | + | |
- | * Select ''Launch'' (''Lancer'') to start the installation, and give a user name (e.g. your LSCE login) and password (something that you can remember, but maybe not the same password as your LSCE account) | + | * Determine which Linux distributions are (directly) available for installation.\\ We will use the default ''Ubuntu'' distribution |
- | * Type some basic Linux commands to check that things are working, e.g. check the available disks\\ <code>$ df -h | + | * ''Ubuntu'' will always automatically upgrade to the latest ''LTS'' release available (contrary to ''Ubuntu-<even_number>.04'' that will stick to the specified ''<even-number>'' release) |
+ | * We could specify a specific Linux version (or even [[https://docs.microsoft.com/en-us/windows/wsl/use-custom-distro|import any Linux distribution]], or [[https://docs.microsoft.com/en-us/windows/wsl/build-custom-distro|create a custom Linux distribution]]!) | ||
+ | * <code>PS C:\> wsl --list --online | ||
+ | |||
+ | NAME FRIENDLY NAME | ||
+ | * Ubuntu Ubuntu | ||
+ | Debian Debian GNU/Linux | ||
+ | kali-linux Kali Linux Rolling | ||
+ | openSUSE-42 openSUSE Leap 42 | ||
+ | SLES-12 SUSE Linux Enterprise Server v12 | ||
+ | Ubuntu-16.04 Ubuntu 16.04 LTS | ||
+ | Ubuntu-18.04 Ubuntu 18.04 LTS | ||
+ | Ubuntu-20.04 Ubuntu 20.04 LTS</code> | ||
+ | |||
+ | * Install the latest //Ubuntu LTS// version available\\ This step will run pretty quickly\\ <code>PS C:\> wsl --install -d Ubuntu | ||
+ | Installation en cours : Plateforme de machine virtuelle | ||
+ | Plateforme de machine virtuelle a été installé. | ||
+ | Installation en cours : Sous-système Windows pour Linux | ||
+ | Sous-système Windows pour Linux a été installé. | ||
+ | Téléchargement en cours : Noyau WSL | ||
+ | Installation en cours : Noyau WSL | ||
+ | Noyau WSL a été installé. | ||
+ | Téléchargement en cours : Ubuntu | ||
+ | L’opération demandée est réussie. Les modifications ne seront pas effectives avant que le système ne soit réamorcé.</code> | ||
+ | |||
+ | * Reboot the computer and be patient | ||
+ | * This step will take some time (make sure you have 15-30 mn available). Windows will install and configure what it needs for running //WSL+Ubuntu//, reboot, and install some more //stuff// | ||
+ | * The final installation step will take place when you open your Windows session. A terminal opens, displaying the final installation of Ubuntu, and asking you for a username and password, and giving you access to a ''bash'' prompt | ||
+ | * <code>Installing, this may take a few minutes... | ||
+ | Please create a default UNIX user account. The username does not need to match your Windows username. | ||
+ | For more information visit: https://aka.ms/wslusers | ||
+ | Enter new UNIX username: stdu | ||
+ | New password: | ||
+ | Retype new password: | ||
+ | passwd: password updated successfully | ||
+ | Installation successful! | ||
+ | To run a command as administrator (user "root"), use "sudo <command>". | ||
+ | See "man sudo_root" for details. | ||
+ | |||
+ | Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.10.16.3-microsoft-standard-WSL2 x86_64) | ||
+ | |||
+ | * Documentation: https://help.ubuntu.com | ||
+ | * Management: https://landscape.canonical.com | ||
+ | * Support: https://ubuntu.com/advantage | ||
+ | |||
+ | System information as of Tue Aug 23 17:32:20 CEST 2022 | ||
+ | |||
+ | System load: 0.0 Processes: 8 | ||
+ | Usage of /: 0.4% of 250.98GB Users logged in: 0 | ||
+ | Memory usage: 0% IPv4 address for eth0: 172.20.23.145 | ||
+ | Swap usage: 0% | ||
+ | |||
+ | stdu@sadira034:~$ echo $SHELL | ||
+ | /bin/bash</code> | ||
+ | |||
+ | * Get some basic information about your new ''Ubuntu'' installation | ||
+ | * <code>stdu@sadira034:~$ lsb_release -a | ||
+ | No LSB modules are available. | ||
+ | Distributor ID: Ubuntu | ||
+ | Description: Ubuntu 20.04 LTS | ||
+ | Release: 20.04 | ||
+ | Codename: focal | ||
+ | |||
+ | stdu@sadira034:~$ uname -a | ||
+ | Linux sadira034 5.10.16.3-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux | ||
+ | |||
+ | stdu@sadira034:~$ cat /proc/version | ||
+ | Linux version 5.10.16.3-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Fri Apr 2 22:23:49 UTC 2021 | ||
+ | |||
+ | stdu@sadira034:~$ df -h | ||
Filesystem Size Used Avail Use% Mounted on | Filesystem Size Used Avail Use% Mounted on | ||
- | rootfs 238G 58G 181G 25% / | + | /dev/sdb 251G 1.1G 238G 1% / |
- | none 238G 58G 181G 25% /dev | + | tmpfs 6.2G 0 6.2G 0% /mnt/wsl |
- | none 238G 58G 181G 25% /run | + | tools 472G 112G 361G 24% /init |
- | none 238G 58G 181G 25% /run/lock | + | none 6.2G 0 6.2G 0% /dev |
- | none 238G 58G 181G 25% /run/shm | + | none 6.2G 4.0K 6.2G 1% /run |
- | none 238G 58G 181G 25% /run/user | + | none 6.2G 0 6.2G 0% /run/lock |
- | cgroup 238G 58G 181G 25% /sys/fs/cgroup | + | none 6.2G 0 6.2G 0% /run/shm |
- | C:\ 238G 58G 181G 25% /mnt/c | + | none 6.2G 0 6.2G 0% /run/user |
- | D:\ 932G 8.1G 924G 1% /mnt/d</code> | + | tmpfs 6.2G 0 6.2G 0% /sys/fs/cgroup |
- | * Update your Ubuntu Linux with: | + | drivers 472G 112G 361G 24% /usr/lib/wsl/drivers |
- | * ''sudo apt update && sudo apt upgrade'' | + | lib 472G 112G 361G 24% /usr/lib/wsl/lib |
- | * Use the Left arrow to select ''<Yes>''+''Enter'' when some services have to be restarted | + | C:\ 472G 112G 361G 24% /mnt/c |
- | * [[other:win10wsl#updating_wsl_and_ubuntu|More details about updating WSL and/or Ubuntu]] (you can safely skip this for now) | + | D:\ 480G 2.6G 478G 1% /mnt/d</code> |
+ | |||
+ | * Get some disk usage information about your ''WSL'' installation | ||
+ | * From Windows, the installed files are located in\\ ''C:\Users\jypeter\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc'' | ||
+ | * From (inside) WSL, the installed files are in\\ ''/mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/'' | ||
+ | * <code>stdu@sadira034:/mnt/c/Users/jypeter/AppData/Local/Packages$ find /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/ -type f -print | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/Settings/roaming.lock | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/Settings/settings.dat | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/SystemAppData/Helium/User.dat | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/SystemAppData/Helium/User.dat.LOG1 | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/SystemAppData/Helium/User.dat.LOG2 | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/SystemAppData/Helium/UserClasses.dat | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/SystemAppData/Helium/UserClasses.dat.LOG1 | ||
+ | /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/SystemAppData/Helium/UserClasses.dat.LOG2 | ||
+ | |||
+ | stdu@sadira034:/mnt/c/Users/jypeter/AppData/Local/Packages$ ls -lh /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx | ||
+ | -rwxrwxrwx 1 root root 1.2G Aug 24 11:37 /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx</code> | ||
+ | * Note: location of the //vhdx swap file//: | ||
+ | * From windows: ''C:\Users\jypeter\AppData\Local\Temp\swap.vhdx'' | ||
+ | * From WSL:\\ <code>stdu@sadira034:~$ ls -lh /mnt/c/Users/jypeter/AppData/Local/Temp/swap.vhdx | ||
+ | -rwxrwxrwx 1 root root 63M Aug 24 14:52 /mnt/c/Users/jypeter/AppData/Local/Temp/swap.vhdx</code> | ||
+ | |||
+ | * Update //Ubuntu// with: ''sudo apt update && sudo apt upgrade'' | ||
+ | * <code>stdu@sadira034:~$ lsb_release -a | ||
+ | No LSB modules are available. | ||
+ | Distributor ID: Ubuntu | ||
+ | Description: Ubuntu 20.04 LTS | ||
+ | Release: 20.04 | ||
+ | Codename: focal | ||
+ | |||
+ | stdu@sadira034:~$ sudo apt update && sudo apt upgrade | ||
+ | [sudo] password for stdu: | ||
+ | Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB] | ||
+ | Get:2 http://archive.ubuntu.com/ubuntu focal InRelease [265 kB] | ||
+ | [...] | ||
+ | 278 upgraded, 32 newly installed, 0 to remove and 0 not upgraded. | ||
+ | Need to get 174 MB of archives. | ||
+ | After this operation, 305 MB of additional disk space will be used. | ||
+ | Do you want to continue? [Y/n] Y | ||
+ | [...] | ||
+ | |||
+ | stdu@sadira034:~$ lsb_release -a | ||
+ | No LSB modules are available. | ||
+ | Distributor ID: Ubuntu | ||
+ | Description: Ubuntu 20.04.4 LTS | ||
+ | Release: 20.04 | ||
+ | Codename: focal</code> | ||
+ | * [[other:win10wsl#updating_wsl_and_ubuntu|More details about updating WSL and/or Ubuntu]] (you can safely skip this for now) | ||
+ | |||
+ | * Update the //Linux kernel// used by WSL, after stopping the running WSL instances | ||
+ | * <code>PS C:\> wsl --status | ||
+ | Distribution par défaut : Ubuntu | ||
+ | Version par défaut : 2 | ||
+ | |||
+ | La dernière mise à jour effectuée du Sous-système Windows pour Linux date du 23/08/2022 | ||
+ | Les mises à jour WSL automatiques sont activées. | ||
+ | |||
+ | Version du noyau : 5.10.16 | ||
+ | |||
+ | PS C:\> wsl -l -v | ||
+ | NAME STATE VERSION | ||
+ | * Ubuntu Running 2 | ||
+ | |||
+ | PS C:\> wsl --terminate Ubuntu | ||
+ | |||
+ | PS C:\> wsl -l -v | ||
+ | NAME STATE VERSION | ||
+ | * Ubuntu Stopped 2 | ||
+ | |||
+ | PS C:\> wsl --update | ||
+ | Recherche de mises à jour en cours... Veuillez patienter | ||
+ | Téléchargement de mises à jour en cours... Veuillez patienter. | ||
+ | Installation en cours des mises à jour... Veuillez patienter | ||
+ | Cette modification sera effective au prochain redémarrage complet de WSL. Pour forcer un redémarrage, exécutez « wsl --shutdown ». | ||
+ | Version du noyau : 5.10.102.1 | ||
+ | |||
+ | PS C:\> wsl --status | ||
+ | [...] | ||
+ | Version du noyau : 5.10.102.1 | ||
+ | PS C:\> wsl cat /proc/version | ||
+ | Linux version 5.10.102.1-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Wed Mar 2 00:30:59 UTC 2022</code> | ||
===== After the base installation ===== | ===== After the base installation ===== | ||