It lets developers run a GNU/Linux environment on Windows PC

Windows Subsystem for Linux

Windows Subsystem for Linux 2.7.3

  -  243 MB  -  Freeware

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of Windows Subsystem for Linux 2.7.3.


For those interested in downloading the most recent release of Windows Subsystem for Linux or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

Why is this app published on FileHorse? (More info)

What's new in this version:

Changed:
- Update Microsoft.WSL.DeviceHost package to 1.2.14-0
- Disable shared compilation when building wslsettings
- diagnostics: collect MSI verbose install logs in diagnostic bundle
- Fix NuGet package path validation in nuget-stage pipeline
- test: Add arm64 test distro support
- test: remove duplicated DNS test coverage
- Fix: Fail and warn the user when --uninstall is given parameters
- virito net: revert to previous DNS behavior while we debug an issue with DNS over TCP
- Update cgmanifest to match CMakeLists.txt
- socketshared: add maximum message size to avoid very large allocations
- Fix: bind interrupted by seccomp signal race
- Set Distro Env HOSTTYPE to aarch64 for ARM64 build
- devicehost: stop re-signing and fix MSI installer failing to replace wsldevicehost.dll
- Suppress MSI-initiated reboots during Store updates
- build: add Source Link to embed GitHub source mappings in PDBs
- Mask console-getty.service to prevent multi-distro failures (#13595)
- Fix random "ERROR_FILE_NOT_FOUND" when unmounting with absolute path
- Fixes to route mirroring
- Fix wrong variable checking
- Bump Microsoft.NETCore.App.Runtime to 10.0.6 (CVE-2026-32178)
- Fix VHD ownership after cross-volume move to prevent E_ACCESSDENIED
- fix: use {} format specifier instead of %s in Linux LOG_ERROR path
- Update MoveVhdOwnership test to WSL2 only
- fix: use ssize_t for readlinkat return value in p9file.cpp
- cleanup: extract SkipSignal helper to deduplicate signal skip lists
- fix: use correct GetAddrInfoTestEntry handler for get_addr_info test
- fix: implement IDisposable on WslConfigService to dispose FileSystemWatcher
- fix: add waitpid safety net after signalfd setup to prevent SIGCHLD race
- Settings: Add pending changes tracking and apply confirmation dialog
- Add boot check for ipv6 disabled via registry in mirrored mode
- Fix broken WSLCorePort channel after receive timeout
- Fix batch of minor bugs
- Impersonate caller in ResizeDistribution VHD operations
- Add BUFFER_FIELD macro for safe pretty-printing of flexible array members
- Fix socket race condition in port tracking
- Bound process name buffer in crash dump handler
- Fix sizeof typo in MessageWriter::GetRelativeIndex
- Add admin protection error message for shadow admin scenarios