Please provide as much information as possible when reporting a bug or filing an issue on the Windows Subsystem for Linux.
Do not open GitHub issues for Windows crashes (BSODs) or security issues.. Instead, send Windows crashes or other security-related issues to secure@microsoft.com.
See the 10) Reporting a Windows crash (BSOD)
section below for detailed instructions.
Note that WSL distro's launch in the Windows Console (unless you have taken steps to launch a 3rd party console/terminal). Therefore, please file UI/UX related issues in the Windows Console issue tracker.
A well written bug report will follow the following template:
A title succinctly describing the issue.
Traceroute not working.
Your Windows build number. This can be gathered from the CMD prompt using the cmd.exe --version
command.
C:\ cmd.exe --version
Microsoft Windows [Version 10.0.21354.1]
Note: The Windows Insider builds contain many updates and fixes. If you are running on the Creators Update (10.0.15063) please check to see if your issue has been resolved in a later build. If you are running on a Version below (10.0.14393), please try to update your Version.
Microsoft Windows [Version 10.0.21354.1]
Should include all packages and environmental variables as well as other required configuration.
$ sudo apt-get install traceroute && traceroute www.microsoft.com
`$ cmd.exe` `CD C:\Windows\System32\` `tracert.exe`
$ traceroute www.microsoft.com
traceroute to www.microsoft.com (23.75.239.28), 30 hops max, 60 byte packets
setsockopt IP_MTU_DISCOVER: Invalid argument
What was the expected result of the command? Include examples / documentation if possible.
Run the failing command under strace. Normal command structure is:
$ strace -ff <command>
Note:
strace
can produce lengthy output. If the generated trace is more than about 20 lines please paste this into a Gist or another paste service and link in the bug.
$ strace traceroute www.microsoft.com
execve("/usr/bin/traceroute", ["traceroute", "www.microsoft.com"], [/* 22 vars */]) = 0
brk(0) = 0x7fffdd3bc000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1f4e820000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
...
...
...
Some bugs require additional information such as scripts to reproduce. Please add to this section.
If there are files required, email the files to InsiderSupport@microsoft.com with:
Common files are:
$ strace -ff -o <outputfile> <command>
If the issue is about wsl --mount, please include the output of running wmic diskdrive get Availability,Capabilities,CapabilityDescriptions,DeviceID,InterfaceType,MediaLoaded,MediaType,Model,Name,Partitions
in an elevated command prompt.
Example:
C:\WINDOWS\system32>wmic diskdrive get Availability,Capabilities,CapabilityDescriptions,DeviceID,InterfaceType,MediaLoaded,MediaType,Model,Name,Partitions
Availability Capabilities CapabilityDescriptions DeviceID InterfaceType MediaLoaded MediaType Model Name Partitions
{3, 4} {"Random Access", "Supports Writing"} \\.\PHYSICALDRIVE0 SCSI TRUE Fixed hard disk media SAMSUNG MZVLB512HAJQ-000H2 \\.\PHYSICALDRIVE0 3
{3, 4} {"Random Access", "Supports Writing"} \\.\PHYSICALDRIVE1 SCSI TRUE Fixed hard disk media SAMSUNG MZVLB1T0HALR-000H2 \\.\PHYSICALDRIVE1 1
{3, 4, 10} {"Random Access", "Supports Writing", "SMART Notification"} \\.\PHYSICALDRIVE2 SCSI TRUE Fixed hard disk media ST2000DM001-1ER164 \\.\PHYSICALDRIVE2 1
Install tcpdump in your WSL distribution using the following commands. Note: This will not work if WSL has Internet connectivity issues.
# sudo apt-get update
# sudo apt-get -y install tcpdump
Install WPR
To collect WSL networking logs, do the following steps in an administrative powershell prompt:
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/WSL/master/diagnostics/collect-networking-logs.ps1" -OutFile collect-networking-logs.ps1
Set-ExecutionPolicy Bypass -Scope Process -Force
.\collect-networking-logs.ps1
The script will output when log collection starts. Reproduce the problem, then press any key to stop the log collection. The script will output the path of the log file once done.
If you choose to email these logs instead of attaching to the bug, please send them to wsl-gh-logs@microsoft.com with the number of the github issue in the subject, and in the message a link to your comment in the github issue.
To collect WSL logs, download and execute collect-wsl-logs.ps1 in an administrative powershell prompt:
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/WSL/master/diagnostics/collect-wsl-logs.ps1" -OutFile collect-wsl-logs.ps1
Set-ExecutionPolicy Bypass -Scope Process -Force
.\collect-wsl-logs.ps1
The script will output the path of the log file once done.
To collect WSL logs follow these steps:
Windows Key + F
on your keyboard.Summarize your feedback
copy and paste in the title of your Github IssueExplain in more detail
copy and paste a link to your Github IssueProblem
Developer Platform
category and the Windows Subsystem for Linux
subcategoryInclude Data About:
is checked to 'Windows Subsystem for Linux'To collect a kernel crash dump, first run the following command in an elevated command prompt:
reg.exe add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl /v AlwaysKeepMemoryDump /t REG_DWORD /d 1 /f
Then reproduce the issue, and let the machine crash and reboot.
After reboot, the kernel dump will be in %SystemRoot%\MEMORY.DMP
(unless this path has been overriden in the advanced system settings).
Please send this dump to: secure@microsoft.com . Make sure that the email body contains:
The easiest way to report a WSL process crash is by collecting a user-mode crash dump.
To collect dumps of all running WSL processe, please open a PowerShell prompt with admin privileges, navigate to a folder where you'd like to put your log files and run these commands:
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/WSL/master/diagnostics/collect-wsl-logs.ps1" -OutFile collect-wsl-logs.ps1
Set-ExecutionPolicy Bypass -Scope Process -Force
.\collect-wsl-logs.ps1 -Dump
The script will output the path to the log file when it is done.
If your crash is sporadic or hard to reproduce, please enable automatic crash dumps to catch logs for this behavior:
md C:\crashes
reg.exe add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps" /f
reg.exe add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps" /v DumpFolder /t REG_EXPAND_SZ /d C:\crashes /f
reg.exe add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps" /v DumpType /t REG_DWORD /d 2 /f
Crash dumps will then automatically be written to C:\crashes.
Once you're done, crash dump collection can be disabled by running the following command in an elevated command prompt:
reg.exe delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps" /f
To collect time travel debugging traces:
Open windbg preview as administrator by running windbgx
in an elevated command prompt
Navigate to file
-> Attach to process
Check Record with Time Travel Debugging
(at the bottom right)
Check Show processes from all users
(at the bottom)
Select wslservice.exe
. Note, if wslservice.exe is not running, you make it start it with: wsl.exe -l
Click Configure and Record
(write down the folder you chose for the traces)
Reproduce the issue
Go back to windbg and click Stop and Debug
Once the trace is done collecting, click Stop Debugging
and close Windbg
Go to the folder where the trace was colleced, and locate the .run file. It should look like: wslservice*.run
Share that file on the issue
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。