Yıllarca geliştiriciler iki arada bir derede kaldı: Günlük kullanım, oyunlar ve tanıdık arayüz için Windows mu, yoksa terminalin gücü, geliştirme araçlarının uyumluluğu ve sunucu ortamına yakınlık için Linux mu? Eskiden bu sorunun çözümü daha önce de işlediğimiz Dual-Boot (çift işletim sistemi) ile kullanmak ya da hantal sanal makineler (VM) kurmaktı.
Ancak Microsoft, WSL (Windows Subsystem for Linux) ile bu tartışmayı büyük ölçüde bitirdi. Peki nedir bu WSL ve neden her geliştiricinin bilgisayarında kurulu olmalı?
WSL (Windows Subsystem for Linux) Nedir?
En basit tabirle WSL, Windows işletim sistemi üzerinde doğrudan, yerel (native) bir Linux ortamı çalıştırmanızı sağlayan bir uyumluluk katmanıdır. Herhangi bir sanal makine yazılımına (VirtualBox, VMware vb.) ihtiyaç duymadan; Ubuntu, Debian, Kali veya Alpine gibi popüler Linux dağıtımlarını saniyeler içinde açıp kullanabilirsiniz.
Geleneksel sanal makinelerin aksine WSL, sistem kaynaklarını çok daha verimli kullanır ve Windows dosya sistemiyle pürüzsüz bir entegrasyon sunar.

Neden WSL Kullanmalısınız?
- Pürüzsüz Dosya Erişimi: Windows üzerinden Linux dosyalarınıza, Linux terminalinden ise Windows sürücülerinize (
/mnt/c/üzerinden) anında erişebilirsiniz. - Hız ve Düşük Kaynak Tüketimi: Geleneksel bir VM, kullanmasanız bile sizden belirli bir RAM ve CPU ayırmanızı ister. WSL ise kaynakları dinamik olarak yönetir. Sadece ihtiyaç duyduğu kadarını kullanır.
- VS Code Entegrasyonu: Remote – WSL eklentisi sayesinde, kodunuzu Linux ortamında barındırıp çalıştırırken, Windows üzerindeki VS Code arayüzüyle (ve tüm alışkın olduğunuz kısayollarla) düzenleme yapabilirsiniz.
- Gerçek Linux Araçları: Bash scriptleri,
sed,awk,grep,sshveya Linux’a özel derleyiciler ve paket yöneticileri (apt, pacman) doğrudan elinizin altındadır.
WSL 1 mi, WSL 2 mi?
Şu an varsayılan olarak WSL 2 kullanılıyor ve mimari olarak ilk sürümden çok farklı.
| Özellik | WSL 1 | WSL 2 |
| Mimari | Çeviri Katmanı (Translation Layer) | Hafifletilmiş Gerçek Linux Çekirdeği (Hyper-V) |
| Dosya Sistemi Performansı | Windows dosyalarında çok hızlı, Linux dosyalarında yavaş | Linux dosya sisteminde devasa hız artışı (IOPS) |
| Sistem Çağrısı (Syscall) Uyumluluğu | Kısmi (Bazı Docker vb. araçlar çalışmaz) | Tam Uyumluluk (Docker Desktop tam destekli) |
Özetle: Projelerinizi doğrudan WSL’in kendi dosya sistemi (örneğin \\wsl$\Ubuntu\home\kullanici\projeler) içinde tutarsanız, WSL 2 ile inanılmaz bir hız (npm install, git clone vb. işlemlerde) elde edersiniz.
3 Dakikada Kurulum
Windows 10 (Sürüm 2004 ve üzeri) veya Windows 11 kullanıyorsanız, WSL kurmak artık tek bir komuta bakıyor.
1.Terminali Yönetici Olarak Açın:PowerShell veya Komut İstemi (CMD) kullanabilirsiniz..
Başlat menüsüne sağ tıklayın ve Windows Terminal (Yönetici) veya PowerShell (Yönetici) seçeneğine tıklayın.
2.Kurulum Komutunu Çalıştırın:
Aşağıdaki komutu yazın ve Enter’a basın:
PowerShell
wsl --install
Bu komut, gerekli sanal makine platformu özelliklerini etkinleştirir, WSL çekirdeğini indirir ve varsayılan olarak Ubuntu dağıtımını kurar.
3.Yeniden Başlatın:
İşlem tamamlandığında bilgisayarınızı yeniden başlatmanız istenecektir.
4.Kullanıcı Adı ve Şifre Belirleyin:
Bilgisayarınız açıldıktan sonra Ubuntu terminali otomatik olarak karşınıza gelecek (gelmezse başlat menüsünden Ubuntu’yu aratıp açabilirsiniz). Burada Linux ortamınız için bir UNIX kullanıcı adı ve şifresi belirleyin.
VS Code ve WSL Entegrasyonu: İki Dünyanın En İyisi
Windows üzerinde geliştirme yaparken en büyük sorun, Linux ortamında çalışan kodları düzenlemek için hantal editörler veya terminal içi araçlar (nano, vim) kullanmak zorunda kalmaktı. Microsoft, VS Code’un Remote Development (Uzak Geliştirme) mimarisi ile bu sorunu tamamen çözdü.
Bu entegrasyon sayesinde, arka planda kodlarınız tamamen Linux (WSL) dosya sisteminde durur ve çalışır, ancak siz kodlarınızı Windows’ta kurulu olan alışkın olduğunuz VS Code arayüzü ile düzenlersiniz.
İşte adım adım VS Code ve WSL kurulumu:
1. “WSL” Eklentisini Kurun
Windows üzerinde hali hazırda kurulu olan Visual Studio Code’u açın. Sol taraftaki menüden “Extensions” (Eklentiler) sekmesine tıklayın veya Ctrl + Shift + X kısayolunu kullanın. Arama çubuğuna WSL yazın ve Microsoft tarafından yayınlanmış olan resmi eklentiyi yükleyin.
2. Projenizi WSL Üzerinden Açın
Başlat menüsünden WSL terminalinizi (örneğin Ubuntu) açın. Projelerinizi barındırmak istediğiniz dizine gidin veya yeni bir klasör oluşturun:
Bash
mkdir ilk-wsl-projem
cd ilk-wsl-projem
Dizinin içindeyken VS Code’u bu klasörde başlatmak için şu sihirli komutu yazın:
Bash
code .
(Sonundaki noktayı unutmayın, bu “bulunduğum dizini aç” anlamına gelir.)
3. Arka Planda Neler Oluyor?
Komutu ilk çalıştırdığınızda VS Code, WSL ortamınıza ufak bir sunucu (VS Code Server) indirip kuracaktır. Bu işlem sadece birkaç saniye sürer. Ardından Windows’ta yeni bir VS Code penceresi açılır.
VS Code penceresinin sol alt köşesine bakarsanız mavi (veya yeşil) bir bar içinde “WSL: Ubuntu” yazdığını göreceksiniz. Bu, VS Code’un şu an yerel Windows dosyalarınızı değil, doğrudan Linux ortamınızı okuduğunu gösterir.
4. Entegre Terminalin Gücü
VS Code içinde Ctrl + é (veya Ctrl + \``) kısayolu ile terminali açtığınızda, artık karşınıza Windows'un CMD'si veya PowerShell'i değil, doğrudan Linux Bash (veya Zsh) terminali gelecektir. Artık terminalden npm run dev, python3 script.pyveyagcc` gibi komutları çalıştırıp, sonuçları anında Windows arayüzündeki kodunuzda görebilirsiniz.
Ek Olarak
Bu makale aslında yeni başlayacağım “Beraber Geliştiriyoruz” sersinin başlangıç ve temelini oluşturacak. Bu makaleyle temelini attığım seri ile Kirpi Development bünyesinde geliştirdiğimiz NeuroLink’in geliştirme sürecinde kendi deneyimlerimi ve öğrendiklerimi makale haline getirerek Türkçe kaynak oluşturacağım. Özellikle İngilizce olarak rahatça erişebileceğiniz fakat Türkçesi pek bulunmayan makaleler yazmaya özen göstereceğim.

Bir yanıt yazın