Gdzie Windows przechowuje dane Subsystemu Windows dla Systemu Linux (WSL)? Zarządzanie obrazami dysków i danymi dystrybucji.

2026-05-27 0 przez Redakcja plików

No to powiem ci, gdzie Windows chowa te wszystkie linuxowe smaczki, jeśli korzystasz z Subsystemu Windows dla Systemu Linux, czyli popularnego WSL-a. Cała magia dzieje się w plikach obrazów dysków, a konkretnie w plikach VHDX. To takie wirtualne dyski, na których rezyduje sobie cały Twój system Linux, jak Ubuntu czy Debian.

Gdzie dokładnie WSL przechowuje swoje dane?

Pewnie zastanawiasz się, gdzie to wszystko fizycznie się znajduje, prawda? No więc, ścieżka nie jest taka prosta i oczywista, jakbyś chciał. Windows nie tworzy jednego, spójnego folderu „WSL”, gdzie wszystko ładnie leży. Zamiast tego, każda Twoja dystrybucja Linuksa (np. Ubuntu, Fedora, Debian) ma swoje własne, odizolowane środowisko, a dane do niego są przechowywane w folderze profilu użytkownika, w sekcji przeznaczonej dla aplikacji z Microsoft Store.

Pełna ścieżka wygląda mniej więcej tak:

`C:\Users\\AppData\Local\Packages\`

Tam znajdziesz mnóstwo folderów o dziwnych nazwach, zazwyczaj zaczynających się od nazwy wydawcy danej dystrybucji, np. `CanonicalGroupLimited.UbuntuonWindows_79fbd…` dla Ubuntu. W środku takiego folderu, musisz poszukać dalej, aż dotrzesz do podfolderu `LocalState`. I to tam, w tym `LocalState`, siedzi sobie plik `ext4.vhdx`. To jest właśnie ten plik, o którym mówimy – wirtualny dysk, na którym masz cały swój system Linux. Taki trochę cyfrowy odpowiednik fizycznego dysku twardego dla Twojego pingwina.

Co kryje w sobie ten plik VHDX?

Wiesz już, że to wirtualny dysk, ale co dokładnie w nim jest? Cała Twoja instalacja Linuksa! Pomyśl o tym jak o pudełku, w którym schowany jest kompletny system operacyjny. Znajdziesz tam:

  • System plików Linuksa: Od katalogu `/bin`, przez `/etc` (konfiguracje!), aż po `/home` (Twoje pliki użytkownika).
  • Zainstalowane pakiety i programy: Wszystko, co zainstalowałeś za pomocą `apt`, `dnf` czy innych menedżerów pakietów.
  • Ustawienia i konfiguracje: Twoje zmienne środowiskowe, ustawienia powłoki (bash, zsh), konfiguracje serwerów WWW czy baz danych, jeśli je tam postawiłeś.
  • Dane użytkownika: Wszystkie Twoje projekty, skrypty, dokumenty, które tworzysz w środowisku Linuksa.

Krótko mówiąc, to centrum dowodzenia dla Twojego Linuksa w Windowsie. Bez niego nie ma co marzyć o uruchomieniu dystrybucji.

Czy można usunąć lub przenieść ten folder/plik?

No dobra, to pytanie za sto punktów! Czy można po prostu kliknąć „usuń” na pliku `ext4.vhdx` albo na całym folderze dystrybucji? Możesz, oczywiście. Windows Ci na to pozwoli (pod warunkiem, że dystrybucja nie działa), ale… konsekwencje są oczywiste i bolesne: stracisz całą dystrybucję Linuksa. Wszystkie dane, pliki, konfiguracje, wszystko pójdzie w niepamięć. To jak formatowanie dysku C: – skutecznie, ale nieodwracalnie dla danych.

A co z przeniesieniem? Samo przeniesienie pliku `.vhdx` za pomocą przeciągnij i upuść to kiepski pomysł. WSL nie będzie wiedział, gdzie go szukać. Jeśli chcesz przenieść dystrybucję Linuksa na inną partycję, np. z systemowego SSD na wolniejszy, ale większy HDD, powinieneś użyć oficjalnych narzędzi WSL. Chodzi o komendy `wsl –export ` (do wyeksportowania systemu do pliku archiwum) oraz `wsl –import ` (do zaimportowania go w nowej lokalizacji). To bezpieczny i zalecany sposób. (No chyba, że lubisz ryzyko, ale po co sobie życie utrudniać, prawda?)

Typowe problemy z plikami danych WSL

Największy i najbardziej powszechny problem to rozmiar tych plików VHDX. Kiedy instalujesz Linuksa, plik `.vhdx` zaczyna od jakiejś rozsądnej wielkości. Ale im więcej pakietów instalujesz, im więcej plików tworzysz, tym plik rośnie i rośnie. I to jest ten haczyk – plik rośnie dynamicznie, ale nie kurczy się automatycznie! Nawet jeśli usuniesz mnóstwo danych w Linuksie, plik `.vhdx` na Windowsie wciąż będzie zajmował tyle samo miejsca, ile zajmował w swoim szczytowym momencie. I potrafi to być kilkadziesiąt, a nawet kilkaset gigabajtów!

Inne problemy to rzadziej:

  • Uszkodzenie pliku: Jeśli Windows nagle się wyłączy podczas pracy WSL, plik `.vhdx` może ulec uszkodzeniu, co uniemożliwi uruchomienie dystrybucji.
  • Problemy z uprawnieniami: Czasem, choć rzadko, zdarzają się dziwne błędy z dostępem do tych plików, co może blokować WSL.

Kiedy warto wyczyścić lub zoptymalizować dane WSL?

Czystka jest potrzebna, szczególnie gdy zaczyna brakować miejsca na dysku C:!

  • Gdy nie potrzebujesz już danej dystrybucji: Najprostsza opcja to całkowite usunięcie dystrybucji, której już nie używasz. Robisz to komendą `wsl –unregister `. To jest super szybki i skuteczny sposób na odzyskanie miejsca.
  • Gdy plik VHDX jest gigantyczny, a Ty usunąłeś dużo danych w Linuksie: Wtedy warto go skompresować. Musisz najpierw wyłączyć daną dystrybucję (`wsl –terminate `), a potem użyć narzędzi Windowsa, np. `diskpart` (z komendą `compact vdisk`) albo PowerShellowego `Optimize-VHD`. (Powiem Ci, to jest ratunek dla wielu użytkowników, sam się na tym nie raz przejechałem!)
  • Regularnie, jeśli często instalujesz i usuwasz pakiety: Jeśli lubisz eksperymentować, warto od czasu do czasu sprawdzić, ile miejsca zajmują Twoje dystrybucje i je skompresować.

Pamiętaj, dbanie o pliki WSL to trochę jak dbanie o porządek w garażu – jak zapomnisz na dłużej, to nagle okazuje się, że miejsca brakuje, a bałagan jest straszny. Więc co jakiś czas warto zrobić porządek!

Najczęstsze pytania

Czy mogę mieć wiele dystrybucji Linuksa jednocześnie w WSL?

Tak, możesz zainstalować i uruchamiać wiele dystrybucji Linuksa jednocześnie w WSL. Każda z nich będzie miała swój oddzielny plik `.vhdx` i będzie działać niezależnie.

Czy da się zmienić rozmiar pliku VHDX WSL?

Rozmiar pliku VHDX rośnie automatycznie, ale nie kurczy się samoczynnie. Aby go skompresować po usunięciu danych z Linuksa, musisz użyć narzędzi systemowych Windowsa, takich jak `diskpart` lub `Optimize-VHD`.

Co to jest `wsl –unregister` i do czego służy?

`wsl –unregister ` to komenda służąca do całkowitego usunięcia wybranej dystrybucji Linuksa z Twojego systemu Windows, co skutkuje usunięciem jej pliku `.vhdx` i odzyskaniem zajmowanego miejsca.