Aktualizacja WSL bez błędów. Polecenia i bezpieczny backup

Przemysław Kwiatkowski 12 sierpnia 2026
Laptop z niebieskim ekranem i logo Windows, postęp aktualizacji. Czekam na wsl update.

Spis treści

WSL potrafi działać miesiącami bez żadnej ingerencji, aż nagle przestaje uruchamiać kontenery, aplikacje GUI albo narzędzia deweloperskie. Wtedy sama aktualizacja dystrybucji Ubuntu nie zawsze wystarczy, bo osobno aktualizuje się platformę WSL, system Windows i pakiety Linuksa. Pokażę, jak zrobić to bezpiecznie, jak sprawdzić wersję oraz co zrobić, gdy polecenie aktualizujące zwraca błąd.

Kilka minut wystarczy, aby poprawnie odświeżyć WSL

  • Platformę WSL aktualizujesz poleceniem wsl --update.
  • Dystrybucję Linuksa aktualizujesz osobno, na przykład przez sudo apt update i sudo apt upgrade.
  • Przed diagnozą sprawdź status, wersję i uruchomione dystrybucje.
  • Opcja --web-download pomaga, gdy Microsoft Store nie pobiera aktualizacji.
  • Przed większą zmianą wykonaj eksport dystrybucji, szczególnie gdy przechowujesz w niej projekty lub dane.

Najpierw ustal, co właściwie aktualizujesz

Pod hasłem wsl update najczęściej kryje się aktualizacja samego środowiska Windows Subsystem for Linux. To komponent uruchamiany przez Windows, odpowiedzialny między innymi za jądro WSL 2, integrację z systemem, obsługę sieci oraz aplikacje graficzne przez WSLg.

Nie jest to jednak to samo co aktualizacja Ubuntu, Debiana czy Fedory. W praktyce masz trzy niezależne warstwy, które mogą wymagać odświeżenia.

Co aktualizujesz Przykładowe polecenie Co się zmienia
Platforma WSL wsl --update Komponenty WSL, kernel WSL 2 i integracja z Windowsem
Dystrybucja Linuksa sudo apt update && sudo apt upgrade Pakiety Ubuntu, Debianu lub innego systemu
Windows Windows Update System gospodarza, sterowniki i składniki systemowe

To rozróżnienie oszczędza sporo czasu. Jeżeli Ubuntu uruchamia się poprawnie, ale aplikacja GUI albo Docker zgłasza problem z WSL 2, zacząłbym od platformy WSL. Jeżeli brakuje konkretnego programu, na przykład pakietu .NET, problem zwykle leży po stronie dystrybucji.

Jak wykonać aktualizację WSL krok po kroku

Otwórz PowerShell albo Windows Terminal i sprawdź bieżący stan środowiska. Do podstawowej diagnostyki wystarczą trzy polecenia.
wsl --status
wsl --version
wsl --list --verbose

Pierwsze pokazuje między innymi domyślną dystrybucję i wersję kernela. Drugie jest szczególnie przydatne w instalacji WSL dostarczanej przez Microsoft Store. Trzecie informuje, czy dana dystrybucja korzysta z WSL 1 czy WSL 2.

Samą aktualizację wykonasz tak:

wsl --update

W większości przypadków Windows pobierze najnowsze składniki i zainstaluje je automatycznie. Gdy korzystasz z komputera firmowego, masz ograniczony dostęp do Microsoft Store albo aktualizacja zatrzymuje się na pobieraniu, użyj alternatywnego źródła.

wsl --update --web-download

Po zakończeniu aktualizacji zamknij działające procesy WSL, aby nowe komponenty zostały załadowane przy kolejnym uruchomieniu.

wsl --shutdown

To polecenie zatrzymuje wszystkie uruchomione dystrybucje, więc niezapisane procesy i sesje zostaną przerwane. Pliki zapisane na dysku dystrybucji nie znikają, ale przed użyciem komendy zakończ pracę z bazą danych, serwerem deweloperskim lub kontenerami.

Po ponownym uruchomieniu sprawdź wersję jeszcze raz. Jeżeli korzystasz z Windows Terminal, możesz też zamknąć wszystkie karty WSL i otworzyć nową sesję. W mojej praktyce ten prosty restart rozwiązuje wiele sytuacji, w których użytkownik uznaje, że aktualizacja nie zadziałała.

Co zrobić, gdy wsl --update nie działa

System nie rozpoznaje polecenia

Komunikat o nierozpoznanym poleceniu zwykle oznacza, że WSL nie jest włączony, system Windows jest nieaktualny albo proces działa w nietypowym środowisku 32-bitowym. Najpierw uruchom Windows Update i zrestartuj komputer. Jeżeli dopiero włączasz WSL, możesz użyć instalacji z poziomu PowerShell.

wsl --install

Na starszych instalacjach Windows konieczne może być ręczne włączenie funkcji Windows Subsystem for Linux oraz Virtual Machine Platform. Po zmianie tych składników restart nie jest opcjonalnym dodatkiem. Bez niego system może nadal zachowywać się tak, jakby WSL nie był zainstalowany.

Aktualizacja dotyczy komputera bez WSL

Jeżeli pojawia się komunikat, że aktualizacja ma zastosowanie tylko do komputerów z Windows Subsystem for Linux, sprawdź, czy funkcja została faktycznie aktywowana. Taki błąd może też wystąpić przed ponownym uruchomieniem systemu po włączeniu WSL.

Nie instalowałbym w ciemno starego pakietu kernela MSI znalezionego w internecie. Współczesne instalacje korzystają z nowszego modelu dystrybucji WSL, dlatego najpierw spróbuj wsl --update, a dopiero przy starszym Windowsie sprawdź wymagania dla ręcznej instalacji.

Przeczytaj również: DataGrid w WPF krok po kroku - binding, edycja i wydajność

Microsoft Store lub sieć blokuje pobieranie

W środowisku firmowym aktualizacje mogą być ograniczane przez zasady grupy, proxy, zaporę albo usługę WSUS. W takiej sytuacji uruchom PowerShell jako administrator i spróbuj wariantu --web-download. Jeżeli komputer nie ma dostępu do internetu, potrzebujesz procedury offline zatwierdzonej przez administratora systemu.

Gdy problem wygląda na uszkodzenie plików Windows, można uruchomić skanowanie systemu z podwyższonymi uprawnieniami.

sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth

Nie traktuję tych poleceń jako pierwszego kroku. Mają sens dopiero wtedy, gdy restart, Windows Update i ponowna próba aktualizacji nie przyniosły rezultatu.

Po aktualizacji WSL odśwież także dystrybucję

Aktualizacja platformy nie podnosi wersji pakietów w Ubuntu. Jeżeli używasz tej dystrybucji, uruchom w jej terminalu:

sudo apt update
sudo apt full-upgrade

apt update pobiera informacje o dostępnych pakietach, a full-upgrade instaluje aktualizacje i w razie potrzeby potrafi zmienić zależności. Na środowisku produkcyjnym najpierw sprawdziłbym listę proponowanych zmian, bo aktualizacja może usunąć pakiet zastąpiony nowszym odpowiednikiem.

Dla innych dystrybucji polecenia będą inne. Fedora i RHEL korzystają zazwyczaj z dnf upgrade, a Arch Linux z pacman -Syu. Najbezpieczniej aktualizować pakiety zgodnie z menedżerem używanym przez konkretną dystrybucję, zamiast kopiować komendy z poradnika przeznaczonego dla Ubuntu.

Po aktualizacji warto szybko sprawdzić środowisko deweloperskie.

uname -a
dotnet --info
node --version
git --version

To dobry moment, aby potwierdzić, że kernel działa, a narzędzia używane w projekcie nadal są dostępne. W przypadku aplikacji .NET, Azure CLI czy kontenerów nie zakładałbym, że każdy problem po aktualizacji pochodzi z WSL. Czasem winny jest zmieniony PATH, pakiet systemowy albo konfiguracja projektu.

WSL 2, WSLg i aplikacje desktopowe

WSL 2 uruchamia prawdziwe środowisko linuksowe z własnym kernelem, dlatego jego aktualizacja może wpływać na narzędzia korzystające z wirtualizacji, sieci i systemu plików. WSLg dodaje możliwość uruchamiania aplikacji graficznych Linuksa obok programów Windows, ale wymaga aktualnych składników WSL oraz zgodnego sterownika graficznego.

Jeżeli terminal działa, a aplikacja GUI nie startuje, wykonaj pełne zatrzymanie środowiska:

wsl --shutdown

Następnie uruchom dystrybucję i sprawdź, czy problem dotyczy jednej aplikacji, czy całego WSLg. Aktualizacja WSL nie zastępuje aktualizacji sterownika GPU, więc przy błędach OpenGL, akceleracji lub renderowania trzeba sprawdzić również sterownik NVIDIA, AMD albo Intela przeznaczony dla Windows.

Warto też pamiętać o lokalizacji plików. Projekty przechowywane w systemie plików Linuksa, na przykład w katalogu domowym, zwykle działają sprawniej z narzędziami linuksowymi niż katalogi umieszczone pod /mnt/c. Z drugiej strony pliki w katalogu Windows są wygodniejsze, gdy często otwierasz je bezpośrednio w desktopowych aplikacjach Windows.

Jak aktualizować WSL bez ryzyka utraty pracy

Aktualizacja platformy WSL nie powinna usuwać dystrybucji, ale rozsądny backup nadal ma sens. Eksport tworzy archiwum dystrybucji, które można później zaimportować na tym samym komputerze albo przenieść na inny dysk.

wsl --export Ubuntu D:\Backup\ubuntu.tar
Nazwa Ubuntu musi odpowiadać nazwie zwróconej przez wsl --list --verbose. Eksport może zająć od kilku sekund do wielu minut, zależnie od liczby plików. Obraz zawiera system plików dystrybucji, ale nie jest pełną kopią konfiguracji Windows, sterowników ani ustawień Windows Terminal.

Na komputerze używanym do pracy zrobiłbym aktualizację w takiej kolejności:

  1. Zapisz pracę i zatrzymaj kontenery oraz lokalne bazy danych.
  2. Sprawdź dystrybucje poleceniem wsl --list --verbose.
  3. Wykonaj eksport najważniejszej dystrybucji.
  4. Uruchom wsl --update.
  5. Zatrzymaj WSL przez wsl --shutdown.
  6. Uruchom projekt i sprawdź terminal, sieć, Git, .NET oraz kontenery.

Nie aktualizowałbym środowiska tuż przed prezentacją albo wdrożeniem. WSL nie oferuje wygodnego przełącznika typu „wróć do poprzedniej wersji platformy”, dlatego backup dystrybucji i test na mniej ważnym komputerze są praktyczniejszym zabezpieczeniem niż próba późniejszego odtwarzania konfiguracji ręcznie.

Mój praktyczny rytuał po aktualizacji środowiska

Na prywatnym komputerze wystarcza mi krótka kontrola raz na kilka tygodni oraz aktualizacja wtedy, gdy pojawia się konkretna poprawka potrzebna przez Docker, WSLg albo narzędzia deweloperskie. Nie widzę sensu uruchamiania aktualizacji kilka razy dziennie, ale wielomiesięczne ignorowanie zmian potrafi później skumulować kilka problemów naraz.

Najważniejsza zasada jest prosta: najpierw aktualizuj platformę WSL, potem dystrybucję i dopiero na końcu sprawdzaj aplikację. Dzięki temu łatwiej ustalić, która warstwa faktycznie wymaga naprawy, a aktualizacja przestaje być przypadkowym zestawem komend wykonywanych metodą prób i błędów.

FAQ - Najczęstsze pytania

Polecenie wsl --update aktualizuje platformę WSL, w tym kernel WSL 2 i integrację z Windowsem. Pakiety Ubuntu odświeżysz osobno w dystrybucji za pomocą sudo apt update i sudo apt full-upgrade. Windows aktualizuje się jeszcze niezależnie przez Windows Update.

Najpierw uruchom Windows Update, zrestartuj komputer i ponów próbę. Jeśli Microsoft Store, sieć, proxy lub zasady firmowe blokują pobieranie, użyj wsl --update --web-download. Przy podejrzeniu uszkodzenia plików systemowych można później uruchomić sfc /scannow oraz DISM /Online /Cleanup-Image /RestoreHealth.

Użyj poleceń wsl --status, wsl --version oraz wsl --list --verbose, aby sprawdzić stan platformy, wersję i tryb WSL 1 lub WSL 2. Jeśli terminal działa, ale aplikacja graficzna nie startuje, wykonaj wsl --shutdown i uruchom dystrybucję ponownie. Przy błędach OpenGL lub akceleracji sprawdź także sterownik GPU dla Windows, ponieważ sama aktualizacja WSL go nie zastępuje.

Zapisz pracę, zatrzymaj kontenery i lokalne bazy danych, a najważniejszą dystrybucję wyeksportuj poleceniem wsl --export Ubuntu D:\Backup\ubuntu.tar. Nazwa dystrybucji musi odpowiadać wynikowi wsl --list --verbose. Eksport obejmuje system plików Linuksa, ale nie zapisuje konfiguracji Windows, sterowników ani ustawień Windows Terminal.

Oceń artykuł

Ocena: 0.00 Liczba głosów: 0

Tagi

powershell
ubuntu
kontenery
wsl
wslg
Autor Przemysław Kwiatkowski
Przemysław Kwiatkowski
Jestem Przemysław i od 15 lat zajmuję się programowaniem .NET, chmurą Azure oraz sztuczną inteligencją. Moja przygoda z tymi technologiami zaczęła się od fascynacji możliwościami, jakie dają, a z czasem przerodziła się w pasję do tworzenia rozwiązań, które realnie wpływają na pracę i życie ludzi. Na kursdotnet.pl staram się dzielić się swoją wiedzą w sposób przystępny, tłumacząc złożone zagadnienia i pomagając zrozumieć, jak te dynamicznie rozwijające się obszary IT mogą być wykorzystane w praktyce. Dokładam wszelkich starań, aby prezentowane przeze mnie materiały były rzetelne, aktualne i oparte na sprawdzonych źródłach, a także aby uporządkować wiedzę w sposób ułatwiający jej przyswojenie.

Udostępnij artykuł

Napisz komentarz