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/26 15:55] jypeter [Updating WSL 1 to WSL 2] Improved |
other:win10wsl [2022/08/30 09:40] jypeter [Disk usage] Added tar backup size example |
||
---|---|---|---|
Line 127: | Line 127: | ||
* Disk size after upgrading to //Ubuntu 20.04.4 LTS// with ''sudo apt update && sudo apt upgrade''\\ ''-rwxrwxrwx 1 root root 2.6G Aug 24 15:24 /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx'' | * Disk size after upgrading to //Ubuntu 20.04.4 LTS// with ''sudo apt update && sudo apt upgrade''\\ ''-rwxrwxrwx 1 root root 2.6G Aug 24 15:24 /mnt/c/Users/jypeter/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/ext4.vhdx'' | ||
+ | * Size of the [[other:win10wsl#creating_a_backup_of_the_linux_running_in_wsl|backup tar file]] of this installation, generated with ''%%wsl --export%%'': ~1.4 Gb | ||
==== Hyper-V requirements ==== | ==== Hyper-V requirements ==== | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | You can skip reading this WSL //requirement// if you are installing WSL for the first time, and are therefor directly installing WSL 2 | ||
+ | |||
+ | Come back later if you have problems | ||
+ | </WRAP> | ||
+ | |||
WSL 2 needs the //Virtual Machine Platform// to be enabled on your computer. If you have never used WSL before, you can probably go directly to the [[other:win10wsl#base_installation|Base installation]] section and ''wsl'' should install everything correctly | WSL 2 needs the //Virtual Machine Platform// to be enabled on your computer. If you have never used WSL before, you can probably go directly to the [[other:win10wsl#base_installation|Base installation]] section and ''wsl'' should install everything correctly | ||
- | If you have problems, or if you are updating WSL 1 to WSL 2, use ''systeminfo'' to check the [[https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/hyper-v-requirements?source=recommendations#verify-hardware-compatibility|Hyper-V requirements]] | + | If you have problems (e.g. [[https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#error-0x80370102-the-virtual-machine-could-not-be-started-because-a-required-feature-is-not-installed|The virtual machine could not be started because a required feature is not installed]]), or if you are updating WSL 1 to WSL 2, type ''systeminfo'' in a PowerShell to check if your machine meets the [[https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/hyper-v-requirements?source=recommendations#verify-hardware-compatibility|Hyper-V requirements]] |
+ | |||
+ | If you get a ''No'' for one of the ''Hyper-V requirements'', check the //virtualization// settings in your [[other:bios#entering_the_bios|computer BIOS]].\\ You can have a look at the [[https://en.wikipedia.org/wiki/X86_virtualization|x86 virtualization]] wikipedia page if you are wondering what ''VT-x'' and ''VT-d'' means for //Intel// processors (''AMD-v'' and ''AMD IOMMU'' for //AMD//) | ||
- | If you get a ''No'' for one of the ''Hyper-V requirements'', check the //virtualization// settings in your [[other:bios#entering_the_bios|computer BIOS]] | + | Example: HP laptop with an **Intel** CPU, and **virtualization not activated in the BIOS** |
+ | * //Hyper-V// section of the ''systeminfo'' output | ||
+ | * <code>Configuration requise pour Hyper-V: Extensions de mode du moniteur d’ordinateur virtuel : Oui | ||
+ | Virtualisation activée dans le microprogramme : Non | ||
+ | Traduction d’adresse de second niveau : Oui | ||
+ | Prévention de l’exécution des données disponible : Oui</code> | ||
+ | * //Virtualization// section of the [[other:bios#entering_the_bios|HP BIOS]]: you need to **enable ''Virtualization Technology (VTx)'' and ''Virtualization Technology for Directed I/O (VTd)''** in the BIOS, save the settings and finish booting | ||
+ | * {{ :other:hp_bios_vtx_vtd.png?direct&600 |}} | ||
+ | * //Hyper-V// section of the ''systeminfo'' output with **virtualization activated in the BIOS** (after activation and reboot) | ||
+ | * <code> Virtualisation activée dans le microprogramme : Oui</code> | ||
===== Base installation ===== | ===== Base installation ===== | ||
Line 334: | Line 353: | ||
===== After the base installation ===== | ===== After the base installation ===== | ||
- | Once you have completed the base installation steps, you'll get a Ubuntu machine, with a //root// and user account (pre-configured to use ''sudo'' for commands that need root access) and lots of pre-installed applications (but no graphics). | + | After completing the base installation steps, you get a //Ubuntu// machine with: |
+ | * a //root// and //user// account | ||
+ | * the //user// account is pre-configured to use ''sudo'' for commands that need root access | ||
+ | * pre-installed base Linux applications | ||
+ | * **no** graphics | ||
+ | * enough to play a bit with a Linux computer and test that the installation is working, but not enough to do some real work | ||
==== Opening a terminal ==== | ==== Opening a terminal ==== | ||
Line 464: | Line 488: | ||
==== Ubuntu packages installed ==== | ==== Ubuntu packages installed ==== | ||
- | <code>$ dpkg --list | + | <code>$ dpkg --list | head -n 10 |
Desired=Unknown/Install/Remove/Purge/Hold | Desired=Unknown/Install/Remove/Purge/Hold | ||
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend | | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend | ||
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) | |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) | ||
- | ||/ Name Version Architecture Description | + | ||/ Name Version Architecture Description |
- | +++-=====================-===============-===============-================================================ | + | +++-==============================-=================================-============-=============================================================================== |
- | ii accountsservice 0.6.45-1ubuntu1 amd64 query and manipulate user account information | + | ii accountsservice 0.6.55-0ubuntu12~20.04.5 amd64 query and manipulate user account information |
- | ii acl 2.2.52-3build1 amd64 Access control list utilities | + | ii adduser 3.118ubuntu2 all add and remove users and groups |
- | ii acpid 1:2.0.28-1ubunt amd64 Advanced Configuration and Power Interface event | + | ii alsa-topology-conf 1.2.2-1 all ALSA topology configuration files |
- | ii adduser 3.116ubuntu1 all add and remove users and groups | + | ii alsa-ucm-conf 1.2.2-1ubuntu0.13 all ALSA Use Case Manager configuration files |
- | + | ii apparmor 2.13.3-7ubuntu5.1 amd64 user-space parser utility for AppArmor | |
- | [...] | + | |
- | ii xterm 330-1ubuntu2 amd64 X terminal emulator | + | |
- | ii xxd 2:8.0.1453-1ubu amd64 tool to make (or reverse) a hex dump | + | |
- | ii xz-utils 5.2.2-1.3 amd64 XZ-format compression utilities | + | |
- | ii zerofree 1.0.4-1 amd64 zero free blocks from ext2, ext3 and ext4 file-s | + | |
- | ii zlib1g:amd64 1:1.2.11.dfsg-0 amd64 compression library - runtime | + | |
- | $ dpkg --list > /mnt/c/Scratch/jyp/pkg_initial_201601.txt | + | $ dpkg --list > /mnt/c/Scratch/jypeter/Ubuntu_Installed_List_`date +"%y-%m-%d"`.txt |
- | $ wc -l /mnt/c/Scratch/jyp/pkg_initial_201601.txt | + | $ wc -l /mnt/c/Scratch/jypeter/Ubuntu_Installed_List_*.txt |
- | 628 /mnt/c/Scratch/jypeter/pkg_initial_201601.txt</code> | + | 642 /mnt/c/Scratch/jypeter/Ubuntu_Installed_List_22-08-29.txt</code> |
- | Full (example) list of installed packages: {{:other:pkg_initial_201601.txt|pkg_initial_201601.txt}} | + | Full (example) list of installed packages: {{ :other:ubuntu_installed_list_22-08-29.txt |}} |
==== Update ubuntu ==== | ==== Update ubuntu ==== | ||
Line 977: | Line 995: | ||
> wsl --list --verbose | > wsl --list --verbose | ||
NAME STATE VERSION | NAME STATE VERSION | ||
- | * Ubuntu Running 1</code> | + | * Ubuntu Running 2</code> |
* [[other:win10wsl#rebooting_wsl|Stop WSL+Linux]] | * [[other:win10wsl#rebooting_wsl|Stop WSL+Linux]] | ||
* <code>> wsl --list --verbose | * <code>> wsl --list --verbose | ||
NAME STATE VERSION | NAME STATE VERSION | ||
- | * Ubuntu Running 1 | + | * Ubuntu Running 2 |
> wsl --shutdown | > wsl --shutdown | ||
- | > wsl --list --verbose | + | > wsl -l -v |
NAME STATE VERSION | NAME STATE VERSION | ||
- | * Ubuntu Stopped 1</code> | + | * Ubuntu Stopped 21</code> |
* Export the current Linux to a //tar// file: | * Export the current Linux to a //tar// file: | ||
+ | * FIXME ''wsl --export Ubuntu C:\Scratch\jypeter\WSL\WSL_Ubuntu_20.04.4_LTS_stdu_22-08-29.tar'' | ||
+ | * 1.4 Gb | ||
* <code> > wsl --export Ubuntu C:\Scratch\<your_login>\<your_login>_ubuntu-<ubuntu_version>-full_<some_date>.tar</code> | * <code> > wsl --export Ubuntu C:\Scratch\<your_login>\<your_login>_ubuntu-<ubuntu_version>-full_<some_date>.tar</code> | ||
* You can optionally open a new terminal (this will start again WSL+Ubuntu) to get some information about the created file (size and number of saved files/directories), and compress it in order to save some disk space | * You can optionally open a new terminal (this will start again WSL+Ubuntu) to get some information about the created file (size and number of saved files/directories), and compress it in order to save some disk space | ||
Line 1036: | Line 1056: | ||
===== Miscellaneous ===== | ===== Miscellaneous ===== | ||
- | ==== Updating WSL 1 to WSL 2 ==== | + | ==== Upgrading WSL 1 to WSL 2 ==== |
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | You will be able to run existing WSL 1 installations with WSL 2, so upgrading should not be a problem! | ||
+ | </WRAP> | ||
- | === Am I using WSL 1 or WSL 2 ? === | + | === Determining which version of WSL is installed === |
- | If you have never used WSL on this computer (and for **this user**), WSL 2 will be installed directly when you follow the [[other:win10wsl#base_installation|Base installation]] steps | + | If you have never used WSL on a computer, WSL 2 will be installed directly when you follow the [[other:win10wsl#base_installation|Base installation]] steps |
- | If you are not sure if you are currently using WSL 1 or WSL 2, you can check [[https://github.com/MicrosoftDocs/WSL/issues/1599|Is there an easy (PowerShell?) way to get more information about WSL?]] has been answered, or make the following checks | + | You can determine if your installed Linux distributions are running on WSL 1 or WSL 2 by typing ''wsl -l -v'' in a PowerShell, but if you are not sure if you are currently using WSL 1 or WSL 2 for running Linux, you can check if [[https://github.com/MicrosoftDocs/WSL/issues/1599|Is there an easy (PowerShell?) way to get more information about WSL?]] has been answered, or make the following checks |
* ''wsl --update'' will give the same output (i.e. the installed Linux kernel version) for both WSL 1 and WSL 2 | * ''wsl --update'' will give the same output (i.e. the installed Linux kernel version) for both WSL 1 and WSL 2 | ||
Line 1050: | Line 1075: | ||
Version du noyau : 5.10.102.1</code> | Version du noyau : 5.10.102.1</code> | ||
- | * ''wsl --status'' will display again the kernel version if you already have WSL 2, but will display a link to the WSL installation page if you are running WSL 1: https://aka.ms/wsl2-install | + | * ''wsl --status'' will display again the kernel version if you already have WSL 2, but **will display a link to the WSL installation page if you are running WSL 1**: https://aka.ms/wsl2-install |
* <code>PS C:\Users\jypeter> wsl --status | * <code>PS C:\Users\jypeter> wsl --status | ||
Distribution par défaut : Ubuntu | Distribution par défaut : Ubuntu | ||
Line 1063: | Line 1088: | ||
* For WSL 2, you also need to meet the [[other:win10wsl#hyper-v_requirements|Hyper-V requirements]] | * For WSL 2, you also need to meet the [[other:win10wsl#hyper-v_requirements|Hyper-V requirements]] | ||
- | === Updating! === | + | === Upgrading WSL === |
- | [[https://docs.microsoft.com/en-us/windows/wsl/install-manual#step-3---enable-virtual-machine-feature|Activate the Virtual Machine Platform]] (just the //Step 3// instructions) and reboot the computer | + | [[https://docs.microsoft.com/en-us/windows/wsl/install-manual#step-3---enable-virtual-machine-feature|Activate the Virtual Machine Platform]] (just the //Step 3// instructions) and **reboot the computer** |
- | After rebooting, go back to the [[other:win10wsl#updating_wsl_1_to_wsl_2|Am I using WSL 1 or WSL 2 ?]] section above, and check that you are now using WSL 2 | + | After rebooting, go back to the [[other:win10wsl#determining_which_version_of_wsl_is_installed|Determining which version of WSL is installed]] section above, and check that you are now using WSL 2 |
==== Potentially useful stuff ==== | ==== Potentially useful stuff ==== |