Örneğin tarayıcınız ve kod editörünüz Windows'ta açıkken projenizi Linux tarafında çalıştırabilirsiniz. Bunun için bilgisayarı her seferinde yeniden başlatıp işletim sistemi seçmeniz gerekmez. WSL'nin asıl faydası da burada: Windows'taki çalışma düzeninizi korurken ihtiyaç duyduğunuz Linux araçlarına ulaşmak. Microsoft'un WSL tanımı
WSL ne işe yarar, kimler kullanmalı?
WSL özellikle yazılım geliştirenler, Linux sunucularla çalışanlar ve terminal öğrenmek isteyenler için kullanışlı. Bir web projesinin Linux bağımlılıklarını kurabilir, Bash betikleri çalıştırabilir veya Windows'tan ayrılmadan Linux komutlarını deneyebilirsiniz. Microsoft da WSL'yi ağırlıklı olarak bu geliştirme akışı için konumlandırıyor. WSL kullanım alanları
Yalnızca internette gezinen, Office kullanan veya Windows oyunları oynayan biri için WSL kurmak zorunlu değil. Windows bilgisayarı hızlandıran ya da oyun performansını artıran bir özellik olarak düşünmeyin. İhtiyacınız Linux araçlarıysa anlam kazanıyor.
Linux'u öğrenirken de hedefinizi ayırmak faydalı. Terminal, paket yönetimi ve geliştirme araçları için WSL ile başlayabilirsiniz. Tam bir Linux masaüstünü, açılış sürecini ve donanım davranışını öğrenmek istiyorsanız ayrı bir sanal makine veya doğrudan Linux kurulumu daha uygun bir çalışma alanı olabilir.
WSL, Ubuntu ve Windows Terminal arasındaki fark
Bu üç isim aynı işi yapmıyor:
- WSL, Linux ortamının Windows üzerinde çalışmasını sağlayan altyapı.
- Ubuntu, WSL içine kurabileceğiniz Linux dağıtımlarından biri. Debian gibi başka seçenekler de var.
- Windows Terminal, PowerShell veya Ubuntu terminali gibi farklı komut satırlarını sekmeler halinde açabildiğiniz uygulama.
Dolayısıyla Windows Terminal'i açmak, tek başına Linux'a geçtiğiniz anlamına gelmez. Açık sekme PowerShell ise Windows komut satırındasınızdır; Ubuntu sekmesi ise Linux ortamınızdır. Dağıtım kavramına yabancıysanız Ubuntu nedir? yazısı bu ayrımı tamamlayabilir. Microsoft'un ortam kurulum rehberi
WSL 1 ve WSL 2 arasındaki farklar
Yeni bir kurulum yapıyorsanız başlangıç noktası WSL 2. Güncel kurulumda varsayılan olarak bu mimari kullanılıyor.
| Konu | WSL 1 | WSL 2 |
|---|---|---|
| Çalışma biçimi | Linux sistem çağrılarını bir çeviri katmanıyla karşılar | Gerçek bir Linux çekirdeği çalıştırır |
| Sanallaştırma | WSL 2'deki yönetilen sanal makineyi kullanmaz | Arka planda hafif bir sanal makine kullanır |
| Linux uygulamalarıyla uyumluluk | Daha sınırlı | Tam sistem çağrısı uyumluluğu sunar |
| Dosya erişimi | Windows tarafındaki dosyalarla yoğun çalışmada avantaj sağlayabilir | Linux araçlarıyla çalışırken projeyi Linux dosya sisteminde tutmak önemlidir |
| Günlük tercih | Belirli eski veya özel iş akışları | Yeni kurulumlar için önerilen seçenek |
WSL 2 için bazen “sanal makine kullanmadan Linux” ifadesiyle karşılaşabilirsiniz. Daha doğru açıklama şu: Sanal makineyi sizin ayrıca kurup yönetmeniz gerekmiyor; WSL onu arka planda yönetiyor.
WSL 2'nin her işlemde, her dosya konumunda daha hızlı olduğunu da varsaymayın. Özellikle Windows ve Linux dosya sistemleri arasında gidip gelen işlerde sonuç değişiyor. Microsoft'un WSL 1 ve WSL 2 karşılaştırması
Windows 11'e WSL nasıl kurulur?
Aşağıdaki adımlar Windows 11 odaklıdır. Microsoft'un tek komutla kurulum yöntemi Windows 10 sürüm 2004, derleme 19041 ve sonrasını da kapsıyor. Ancak Windows 10 Home ve Pro'nun normal desteği 14 Ekim 2025'te sona erdi. WSL'nin çalışması, işletim sisteminin destek durumunu değiştirmez. Yeni bir çalışma ortamı kurarken desteklenen Windows sürümünü tercih edin. Windows 10 yaşam döngüsü
1. PowerShell'i yönetici olarak açın
Açık çalışmalarınızı kaydedin. Başlat menüsünde PowerShell'i bulun ve Yönetici olarak çalıştır seçeneğiyle açın. Ardından şu komutu girin:
wsl --install
Bu işlem gerekli bileşenleri ve varsayılan olarak Ubuntu'yu kurar. Kurulumun istediği yeniden başlatmayı tamamlayın. İş veya okul bilgisayarında yönetici yetkiniz yoksa kuruluşunuzun BT ekibiyle ilerleyin. Resmi WSL kurulum adımları
2. Ubuntu kullanıcı hesabını oluşturun
Yeniden başlattıktan sonra Ubuntu'yu Başlat menüsünden açın. İlk açılışta Linux için bir kullanıcı adı ve parola belirlemeniz istenir. Bu hesap Windows hesabınızdan ayrıdır.
Parolayı yazarken ekranda harf veya yıldız görünmemesi normal. Yazmayı tamamlayıp Enter'a basın. Bu parolayı Linux içinde yönetici yetkisi isteyen sudo işlemlerinde kullanacaksınız. Linux hesabını oluşturma
3. Kurulumu kontrol edin
Windows tarafında PowerShell'i açıp şu komutu çalıştırın:
wsl -l -v
Listede Ubuntu'nun görünmesi ve VERSION sütununda 2 yazması, dağıtımın WSL 2 kullandığını gösterir. Bu sütundaki 2, Ubuntu'nun sürüm numarası değildir. WSL komut açıklamaları
Ubuntu yerine başka bir dağıtım kurmak isterseniz kullanılabilir adları önce listeleyin:
wsl --list --online
Ardından listede gördüğünüz adı kullanın. Örneğin:
wsl --install -d Debian
İlk kurulum komutu size yalnızca yardım metni gösteriyorsa WSL zaten kurulu olabilir. Dağıtım listesini kontrol edip bu yöntemle istediğiniz dağıtımı ekleyin. Dağıtım seçimi
Proje dosyaları Windows'ta mı, Linux'ta mı durmalı?
WSL ile çalışırken en sık karışan noktalardan biri dosyaların konumu. İki taraftaki dosyalara erişebilmeniz, bütün konumların aynı şekilde çalıştığı anlamına gelmiyor.
Linux araçlarıyla geliştirdiğiniz projeyi Linux dosya sisteminde tutun. Örneğin /home/kullanici/projeler altında çalışın. Windows'un C: sürücüsü Linux tarafında /mnt/c olarak görünür; bu sürücüye erişebilirsiniz, ancak çok sayıda küçük dosyayla çalışan projelerde sistemler arası erişim performansı etkileyebilir.
Linux klasörünü Windows Dosya Gezgini'nde görmek için Ubuntu terminalinde şu komutu kullanabilirsiniz:
explorer.exe .
Sondaki nokta, bulunduğunuz klasörü ifade eder. Dağıtımların tamamına bakmak için Dosya Gezgini adres çubuğuna \\wsl$ yazabilirsiniz. Desteklenen bu erişim yolunu kullanın; dağıtımın arka plandaki sanal disk dosyasını normal proje klasörü gibi düzenlemeye çalışmayın. Windows ve Linux dosyalarıyla çalışma
Bir başka küçük fark da dosya adları. Linux'ta notlar.txt ve Notlar.txt farklı dosyalar olabilir. Projede bazen büyük, bazen küçük harf kullanmak, Windows'ta fark etmediğiniz hataları Linux'ta ortaya çıkarabilir.
VS Code ile WSL nasıl kullanılır?
Microsoft'un önerdiği düzende VS Code Windows'a, projenin araçları ve bağımlılıkları ise kullandığınız Linux ortamına kurulur. VS Code'a Microsoft'un WSL eklentisini ekledikten sonra Ubuntu terminalinde proje klasörüne geçip şu komutu verebilirsiniz:
code .
Editör penceresi Windows'ta görünürken projenin terminali, araçları ve uygun eklentileri Linux tarafında çalışabilir. VS Code'un durum çubuğunda WSL bağlantısını kontrol edin; yalnızca Linux klasörünü bir Windows penceresinde açmış olmakla WSL oturumu açmak aynı şey değildir.
Örneğin Python projenizde yorumlayıcının Windows'taki Python yerine WSL içindeki Python olduğunu kontrol etmek, yanlış ortamda paket kurma sorunlarını önler. Microsoft'un VS Code ve WSL rehberi
WSL içinde çalıştırdığınız bir web uygulamasına Windows tarayıcısından localhost ve uygulamanın portuyla erişebilirsiniz. Bunun için uygulamanın gerçekten çalışıyor olması gerekir; port ve ağ yapılandırması da bağlantıyı etkiler. WSL ağ bağlantıları
WSL yalnızca terminalden mi ibaret?
Hayır. WSL 2, desteklenen sistemlerde grafik arayüzlü Linux uygulamalarını Windows masaüstünde çalıştırabiliyor. Bu destek WSL 1'de yok. Grafik sürücüsü ve uygulama gereksinimleri de önemli. Yine de bu özellik, eksiksiz bir GNOME veya KDE masaüstü kurulumu anlamına gelmiyor; Microsoft desteğin Windows masaüstüne entegre uygulamalar için olduğunu belirtiyor. Linux grafik uygulamaları
WSL 2'de Linux servislerini yöneten systemd desteği de var. Güncel varsayılan Ubuntu kurulumunda etkin olabilir; başka dağıtımların ayarlarını aynı kabul etmeyin. İlk kurulum için rastgele servis ayarları değiştirmeniz gerekmiyor. WSL ve systemd
Docker Desktop da Windows'ta WSL 2 altyapısını kullanabiliyor. Ancak WSL'yi kurmakla Docker Desktop kurulmuş olmaz. Docker kullanacaksanız onun güncel sistem gereksinimlerini, kurulumunu ve lisans koşullarını ayrıca kontrol edin. Docker'ın WSL 2 belgesi
Güncelleme, kapatma ve silme aynı işlem değil
Günlük kullanımda şu ayrımlar yeterli:
| Komut | Nerede çalıştırılır? | Ne yapar? |
|---|---|---|
wsl --version |
PowerShell | WSL ve bileşenlerinin sürümlerini gösterir |
wsl --update |
PowerShell | WSL'yi günceller |
wsl --shutdown |
PowerShell | Çalışan bütün WSL dağıtımlarını durdurur |
Kapatmadan önce çalışmalarınızı kaydedin ve çalışan sunucu/işlerin biteceğinden emin olun. wsl --shutdown, yalnızca açık terminal sekmesini kapatmakla sınırlı değildir. Temel WSL komutları
WSL güncellemesiyle Ubuntu paketlerinin güncellemesi de ayrıdır. Ubuntu terminalinde sudo apt update paket listesini yeniler; sudo apt upgrade mevcut paketleri günceller. Güncelleme sırasında gösterilen değişiklikleri okuyun. Dağıtım paketlerini güncelleme
Silme uyarısı: İnternette çözüm olarak karşınıza çıkan wsl --unregister komutunu sıradan yeniden başlatma işlemi gibi kullanmayın. Hedef dağıtımın dosyalarını, ayarlarını ve kurulu yazılımlarını kalıcı olarak kaldırır. Önemli projelerinizi ayrıca yedekleyin; dağıtım yedeği için wsl --export, geri alma için wsl --import komutları bulunur. Yedek dosyasını dağıtımın dışında saklayın ve açılabildiğini doğrulamadan eski ortamı silmeyin. Dışa aktarma ve kaldırma açıklamaları
Kurulum hata verirse nereden başlamalı?
Önce hata mesajını ve Windows sürümünüzü kaydedin. Ardından WSL sürümüyle dağıtımın WSL 1 mi 2 mi kullandığını kontrol edin. Aynı hata kodu için bulunan her eski çözümü sırasıyla uygulamak yerine sorunu bu bilgilerle daraltın.
WSL 2 sanallaştırma desteğine ihtiyaç duyar. Microsoft, 0x80370102 gibi kurulum hatalarında BIOS/UEFI sanallaştırma ayarının kontrol edilmesini öneriyor. Ayarın adı cihaza göre değişir; üreticinizin yönergesini kullanın. İş bilgisayarında kısıtlamaları aşmaya çalışmayın. WSL'yi çalıştırmak için antivirüsü veya güvenlik duvarını kapatmayı başlangıç adımı yapmayın. Resmi sorun giderme rehberi
İlk deneme için tek bir dağıtım ve küçük bir proje yeterli. Önce terminali açmayı, dosyanızı bulmayı ve projenizi çalıştırmayı öğrenin. Docker, farklı dağıtımlar ve ayrıntılı ağ ayarlarını gerçekten ihtiyaç çıktığında eklemek, neyin nerede çalıştığını takip etmeyi kolaylaştırır.





