-
Notifications
You must be signed in to change notification settings - Fork 833
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to run WSL: Catastrophic Failure #11319
Comments
Hi I'm an AI powered bot that finds similar issues based off the issue title. Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it. Thank you! Open similar issues:
Closed similar issues:
|
Some additional information I found in the Event Viewer:
When checking the default installation location for Windows 11, everything points to the C: drive. |
Are you able to get more logs using the instructions from here? https://learn.microsoft.com/en-us/windows/win32/appxpkg/troubleshooting?redirectedfrom=MSDN Edit: Sorry about that I should have asked for these from the start. |
@pmartincic AppxPackagingOM/Microsoft-Windows-AppxPackging/OperationThere's a bunch of these Warnings:
AppxDeployment-Server/Microsoft-Windows-AppXDeploymentServer/OperationalThings seem a little worse:
And the output from
I can see the error about installing on G: (which is a drive I have), but everything should be pointing to the C: (system) drive. I've not explicity changed anything to point to anything other than C:. |
Oh I don't think this is you, Just gathering logs from this and another bug to throw at the appx folks. |
Let me know if you need anything else! |
@pmartincic Out of a matter of interest, do you know of any failsafe way to rebuild/ repair WSL? I'm not worried about saving the distros (they're already gone). I've tried all the troubleshooting guides, completely uninstalling it and random support articles. It's a bit of a productivity killer, so short of rebuilding the computer I'm a bit stumped. |
@kieronlanning, reproducing something similar, that is what I'm trying to figure out. Ideally it'll end up in the installer so that no manual steps are needed; we'll see what happens. |
Sorry for the hangup. I'm testing a fix that I think will avoid us getting in this state, but I'm not sure about getting out of it. If you still have this environment can you collect logs via the below script that github won't let me add as an attachment? #
# GetDeploymentLogs-Desktop.ps1 is a PowerShell script designed to collect
# various logs and system information to diagnose App deployment problems.
# To run this script from Explorer, right-click on its icon and choose "Run with PowerShell".
#
# All command line parameters are reserved for use internally by the script.
# Users should launch this script from Explorer.
#
param(
[switch]$Force = $false,
[switch]$EnableTracing = $false
)
function PrintMessageAndExit($ErrorMessage, $ReturnCode)
{
Write-Host $ErrorMessage
if (!$Force)
{
Pause
}
exit $ReturnCode
}
$ScriptPath = $null
try
{
$ScriptPath = (Get-Variable MyInvocation).Value.MyCommand.Path
$ScriptDir = Split-Path -Parent $ScriptPath
}
catch {}
# Get the ID and security principal of the current user account
$myWindowsID=[System.Security.Principal.WindowsIdentity]::GetCurrent()
$myWindowsPrincipal=new-object System.Security.Principal.WindowsPrincipal($myWindowsID)
# Get the security principal for the Administrator role
$adminRole=[System.Security.Principal.WindowsBuiltInRole]::Administrator
# Check to see if we are currently running "as Administrator"
if ($myWindowsPrincipal.IsInRole($adminRole))
{
# We are running "as Administrator" - so change the title and background color to indicate this
$Host.UI.RawUI.WindowTitle = $myInvocation.MyCommand.Definition + "(Elevated)"
clear-host
}
else
{
# We are not running "as Administrator" - so relaunch as administrator
# Create a new process object that starts PowerShell
$newProcess = new-object System.Diagnostics.ProcessStartInfo "PowerShell";
# Specify the current script path and name as a parameter
$newProcess.Arguments = $myInvocation.MyCommand.Definition + ' -ExecutionPolicy Unrestricted'
# Indicate that the process should be elevated
$newProcess.Verb = "runas";
# Start the new process
[System.Diagnostics.Process]::Start($newProcess) > $null;
# Exit from the current, unelevated, process
exit
}
$LogsFolderName = 'AppxLogs' + (get-date -uformat %s)
$LogsDestinationPath = $env:TEMP + '\' + $LogsFolderName
$CabPath = $LogsDestinationPath + '.zip'
$SystemEventLogsPath = $env:windir + '\System32\winevt\Logs\'
$WULogsPath = $env:windir + '\Logs\windowsupdate\'
$UpgradeLogs = $env:windir + '\Panther\'
$SystemEventLogFileList =
@(
"Microsoft-Windows-AppXDeployment%4Operational.evtx",
"Microsoft-Windows-AppXDeploymentServer%4Operational.evtx",
"Microsoft-Windows-AppxPackaging%4Operational.evtx",
"Microsoft-Windows-StateRepository%4Operational.evtx",
"Microsoft-Windows-AppReadiness%4Admin.evtx",
"Microsoft-Windows-AppReadiness%4Operational.evtx",
"Microsoft-Windows-TWinUI%4Operational.evtx",
"Microsoft-Windows-AppModel-Runtime%4Admin.evtx",
"Microsoft-Windows-AppHost%4Admin.evtx",
"Microsoft-Windows-ApplicationResourceManagementSystem%4Operational.evtx",
"Microsoft-Windows-CoreApplication%4Operational.evtx",
"Microsoft-Windows-AppID%4Operational.evtx",
"Microsoft-Windows-AppLocker%4EXE and DLL.evtx",
"Microsoft-Windows-AppLocker%4Packaged app-Execution.evtx",
"Microsoft-Windows-AppLocker%4Packaged app-Deployment.evtx",
"Microsoft-Windows-AppLocker%4MSI and Script.evtx",
"Microsoft-Windows-CodeIntegrity%4Operational.evtx",
"Microsoft-Windows-Kernel-StoreMgr%4Operational.evtx",
"Microsoft-Windows-Store%4Operational.evtx",
"Microsoft-Client-Licensing-Platform%4Admin.evtx",
"Microsoft-WS-Licensing%4Admin.evtx",
"Microsoft-Windows-PackageStateRoaming%4Operational.evtx",
"Microsoft-Windows-DeviceSync%4Operational.evtx",
"Microsoft-Windows-SettingSync%4Debug.evtx",
"Microsoft-Windows-SettingSync%4Operational.evtx",
"Microsoft-Windows-SettingSync-Azure%4Debug.evtx",
"Microsoft-Windows-SettingSync-Azure%4Operational.evtx",
"System.evtx",
"Application.evtx",
"Microsoft-Windows-WER-Diag%4Operational.evtx",
"Microsoft-Windows-AppID%4Operational.evtx",
"Microsoft-Windows-ApplicabilityEngine%4Operational.evtx",
"Microsoft-Windows-WindowsUpdateClient%4Operational.evtx",
"Microsoft-Windows-Winlogon%4Operational.evtx",
"Microsoft-Windows-Shell-Core%4ActionCenter.evtx",
"Microsoft-Windows-Shell-Core%4Operational.evtx",
"Microsoft-Windows-User Profile Service%4Operational.evtx"
)
$SourceDestinationPairs =
(
(($UpgradeLogs + 'setup*.log'), ($LogsDestinationPath + '\Panther\')),
(($WULogsPath + '*.etl'), ($LogsDestinationPath + '\WindowsUpdate\')),
(($env:windir + '\Logs\CBS\CBS.log'), ($LogsDestinationPath + '\CBS\')),
(($env:windir + '\Logs\DISM\DISM.log'), ($LogsDestinationPath + '\DISM\')),
(($env:ProgramData + '\Microsoft\Windows\AppxProvisioning.xml'), ($LogsDestinationPath + '\')),
(($env:ProgramData + '\Microsoft\Windows\AppRepository\StateRepository*'), ($LogsDestinationPath + '\StateRepository\')),
(($env:ProgramData + '\Microsoft\Windows\WER\*'), ($LogsDestinationPath + '\WER\'))
)
$RegExportsDestinationPath = $LogsDestinationPath + '\RegistryExports\'
New-Item -ItemType Directory -Force -Path $RegExportsDestinationPath > $null
$RegistrySourceDestinationPairs =
(
(("HKEY_LOCAL_MACHINE\System\SetUp\Upgrade\AppX"), ($RegExportsDestinationPath + '\UpgradeAppx.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModel\StateRepository"), ($RegExportsDestinationPath + '\StateRepository.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\OOBE"), ($RegExportsDestinationPath + '\OOBE.reg')),
(("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MUI\UILanguages"), ($RegExportsDestinationPath + '\UILanguages.reg')),
(("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FastCache"), ($RegExportsDestinationPath + '\Fastcache.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Appx"), ($RegExportsDestinationPath + '\AppxPolicies.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx"), ($RegExportsDestinationPath + '\Appx.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppReadiness"), ($RegExportsDestinationPath + '\AppReadiness.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel"), ($RegExportsDestinationPath + '\AppModelSettings.reg')),
(("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModel"), ($RegExportsDestinationPath + '\AppModel.reg'))
)
Write-Host 'Creating Destination Folder and Gathering Logs ' $LogsDestinationPath
New-Item -ItemType Directory -Force -Path $LogsDestinationPath > $null
Write-Progress -Activity 'Collecting Logs' -Id 10041
$EventLogsFolderPath = ($LogsDestinationPath + '\EventLogs\')
New-Item -ItemType Directory -Force -Path $EventLogsFolderPath > $null
# Copy Event Logs
foreach ($EventLogFile in $SystemEventLogFileList)
{
$EventLogFilePath = ($SystemEventLogsPath + $EventLogFile)
Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPath -Force
}
foreach ($SDPair in $SourceDestinationPairs)
{
New-Item -ItemType Directory -Force -Path $SDPair[1] > $null
Copy-Item -Path $SDPair[0] -Destination $SDPair[1] -Recurse -Force > $null
}
foreach ($RegistrySDPair in $RegistrySourceDestinationPairs)
{
reg export $RegistrySDPair[0] $RegistrySDPair[1] /y > $null
}
$AppDataPath = $env:LOCALAPPDATA + '\Packages'
$WindowsAppPath = $env:ProgramFiles + '\WindowsApps'
$AppRepositoryPath = $env:ProgramData + '\Microsoft\Windows\AppRepository'
Get-AppxPackage -AllUsers > ($LogsDestinationPath + '\GetAppxPackageAllUsersOutput.txt')
dir -Path $AppDataPath -Recurse -Force -ErrorAction SilentlyContinue > ($LogsDestinationPath + '\AppDataFolderList.txt')
dir -Path $WindowsAppPath -Force -ErrorAction SilentlyContinue > ($LogsDestinationPath + '\WindowsAppFolderList.txt')
dir -Path $AppRepositoryPath -Force -ErrorAction SilentlyContinue > ($LogsDestinationPath + '\AppRepositoryFileList.txt')
Write-Progress -Activity 'Creating Zip Archive' -Id 10041
Add-Type -Assembly "System.IO.Compression.FileSystem";
[System.IO.Compression.ZipFile]::CreateFromDirectory($LogsDestinationPath, $CabPath);
Write-Progress -Activity 'Done' -Completed -Id 10041
Write-Warning "Note: Below Zip file contains system, app and user information useful for diagnosing Application Installation Issues."
Write-Host 'Please upload zip and share a link : '
Write-Host $CabPath
Pause |
@pmartincic I'm away until late Friday, so I'll do it this-weekend. Thanks for the effort! |
My other question is, do you notice that if you install via downloading the msix directly and using You'll have to do this first.
|
Thank you, this helped me a lot! |
@pmartincic The generated file was too large for GH, so I've re-zipped it using 7zip (17mb instead of 32mb). However, I needed to change the extension to .zip rather than .7z otherwise the upload wasn't accepted. Any problems, and I'll do a sharing link. Also, is there the terminal output: Creating Destination Folder and Gathering Logs C:\Users\Kieron\AppData\Local\Temp\AppxLogs1711780076
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-Windows-ApplicationResourceManagementSystem%4Operational.evtx' because it does not exist.
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-WS-Licensing%4Admin.evtx' because it does not exist.
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-Windows-PackageStateRoaming%4Operational.evtx' because it does not exist.
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-Windows-SettingSync%4Debug.evtx' because it does not exist.
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-Windows-SettingSync%4Operational.evtx' because it does not exist.
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-Windows-SettingSync-Azure%4Debug.evtx' because it does not exist.
Copy-Item: P:\sync-projects\GetDeploymentLogs-Desktop.ps1:161
Line |
161 | Copy-Item -Path $EventLogFilePath -Destination $EventLogsFolderPa …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path 'C:\WINDOWS\System32\winevt\Logs\Microsoft-Windows-SettingSync-Azure%4Operational.evtx' because it does not exist.
WARNING: Note: Below Zip file contains system, app and user information useful for diagnosing Application Installation Issues.
Please upload zip and share a link : |
Trying the After some clean-up, I've managed to get Debian (my default) installed. Ubuntu doesn't seem to be in a very healthy place: Installing: Ubuntu
Ubuntu has been installed.
Launching Ubuntu...
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x80071772
Error: 0x80071772 The specified file is encrypted and the user does not have the ability to decrypt it. Tried removing it via the Store etc, and then re-installing but the error is always the same. |
I also had such an error, you need to change the standard thawing of new downloads to the system drive (C:) as in the picture: You also need to move the Linux distribution to the system drive in the settings in the "Apps" section Good luck! |
I have this problem, it seems to want to install to my secondary HDD (D:). The primary drive is an M.2 SSD and shows up as Disk 1 instead of Disk 0 in task manager and diskpart. I read online this is because SATA drives are started before M.2 drives during startup. (Using "--no-distribution" to install wsl because it's a dependency for a specific program) |
Try to do as shown in the first photo - #11319 (comment) |
Thanks for the suggestion, but this was already discounted. |
I also had this issue in #11327. I found that installing the msixbundle release instead of the MSI was a workaround for this issue, and it allowed me to use WSL again. If it doesn't work on the first try you can try downloading the MSI release, running |
I also removed ALL previous versions of WSL like this: Remove-AppxPackage MicrosoftCorporationII.WindowsSubsystemForLinux_<version>.0_x64__8wekyb3d8bbwe -AllUsers
Remove-AppxPackage MicrosoftCorporationII.WindowsSubsystemForLinux_<version>.0_x64__8wekyb3d8bbwe Only I don't know how to get the versions I had installed, so I just removed the last 3 versions from the release, and then everything worked |
Did you try? Changing the default install location is not the same as using the power shell commandlets to remove/install an msix that you download manually. These are orthogonal concepts. Installing via the msix takes the installer down an alternate path. I'm trying to provide you with a workaround. |
@pmartincic that was a reply to @okineadev. But yes, I'd tried the remove and install via the msix. |
I checked all this, but I don't have any Microsoft Store distros to move. |
This is not an official build, if you still see issues when trying this build, please get back to me with more logs from this post, in addition to our logs. #11319 (comment) |
@pmartincic Sorry for not getting back to you sooner, I ended up re-paving the machine and starting again. |
Nope, same error. |
Fixed as of v2.3.24, or maybe an AppxDeployment-Server bug was fixed? WSL installed properly to the appx dir in C:. |
Windows Version
Microsoft Windows [Version 10.0.26080.1201]
WSL Version
0.0.0.0
Are you using WSL 1 or WSL 2?
Kernel Version
0.0.0.0
Distro Version
No response
Other Software
No response
Repro Steps
Run
wsl --install
orwsl--update
and they both result inCatastrophic failure
messages in the terminal.Expected Behavior
wsl installs/ updates without issue.
Actual Behavior
Unable to use wsl - unable to run any commands requested by this form -
--status
or--version
for example.Terminal output:
Diagnostic Logs
WslLogs-2024-03-18_08-11-32.zip
The text was updated successfully, but these errors were encountered: