- WSL2 membolehkan anda menjalankan Linux en Windows dengan kernel penuh dan prestasi tinggi.
- Mengkonfigurasi kernel dan rangkaian tersuai memerlukan pendayaan ciri Windows dan WSL tertentu.
- Ia adalah mungkin untuk mengakses sistem fail antara Windows dan Linux dengan mudah dan melekapkan perkhidmatan seperti Docker.
- Penambahbaikan visual dan produktiviti boleh digunakan pada terminal untuk membangunkan dengan lebih cekap.
Subsistem Windows untuk Linux (WSL2) telah merevolusikan cara pembangun dan pengguna kuasa menggunakan Linux dalam persekitaran Windows. Alat ini membolehkan anda menyepadukan kedua-duanya OS hampir asli, menghapuskan keperluan untuk mesin maya konfigurasi but dua yang berat atau rumit.
Perkara yang sangat menarik ialah WSL2 membenarkan penggunaan kernel Linux tersuai yang lengkap, sebagai tambahan kepada konfigurasi rangkaian yang lebih mantap dan fleksibel. Ini adalah kelebihan besar bagi mereka yang memerlukan persekitaran pembangunan yang lebih seperti pengeluaran atau ingin memanfaatkan sepenuhnya keupayaan teknikal alatan mereka.
Apakah WSL2 dan mengapa ia lebih baik daripada WSL1?
WSL2 mewakili generasi kedua Subsistem Windows untuk Linux dan membawa bersamanya peningkatan yang ketara berbanding pendahulunya. Perbezaan radikal ialah WSL2 menggunakan a mesin maya ringan berdasarkan Hyper-V mengandungi kernel Linux yang lengkap, membenarkan keserasian yang lebih baik dengan aplikasi yang bergantung pada panggilan sistem dan prestasi yang lebih baik, terutamanya dalam sistem fail.
Terima kasih kepada penambahbaikan ini, kami boleh:
- Jalankan alatan seperti Docker tanpa pergantungan pihak ketiga.
- Susun perisian asli untuk Linux dalam Windows.
- Menggunakan Sistem Fail Linux sebagai ext4 daripada Windows.
Prasyarat dan sistem yang disokong
Sebelum anda memulakan penyediaan WSL2, anda perlu memastikan sistem pengendalian anda sedia:
- Windows 10 dengan versi 1903 dan bina 18362 atau lebih tinggi.
- Windows 11 adalah serasi sepenuhnya.
- Kefungsian juga bergantung pada mengaktifkan maya dalam BIOS.
Anda boleh menyemak versi anda dengan menaip winver
daripada dialog jalankan (Win + R).
Bagaimana untuk mendayakan WSL dan WSL2 pada Windows
Terdapat beberapa cara untuk mendayakan WSL, daripada arahan en PowerShell kepada pilihan grafik melalui Panel Kawalan. Berikut ialah cara paling komprehensif untuk memastikan semuanya berjalan lancar:
Pilihan 1: Menggunakan PowerShell (disyorkan)
Jalankan PowerShell sebagai pentadbir dan taip arahan berikut:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
wsl --set-default-version 2
Ini akan membolehkan ciri WSL dan menetapkan semua distro baharu untuk menggunakan WSL2 secara lalai.
Pilihan 2: Dari Panel Kawalan
Pergi ke "Hidupkan atau matikan ciri Windows" dan pilih yang berikut:
- Subsistem Windows untuk Linux
- Platform Mesin Maya
- Hiper V (pilihan tetapi disyorkan)
Kemudian, mulakan semula komputer anda untuk menggunakan perubahan.
Memasang pengedaran Linux
Daripada Microsoft Store anda boleh memasang pengedaran seperti:
- Ubuntu (16.04, 18.04, 20.04, 22.04)
- Debian
- Kali Linux
- openSUSE
Apabila anda mula-mula membuka distro yang dipasang, ia akan meminta anda membuat a Pengguna dan kata laluan LinuxIni akan menjadi pengguna lalai anda dalam persekitaran.
Mengkonfigurasi kernel Linux tersuai
Ciri WSL2 yang sangat berkuasa ialah anda boleh menggunakan kernel Linux anda sendiri. Untuk melakukan ini:
1. Susun atau muat turun kernel tersuai
Ia adalah mungkin untuk menggunakan kernel yang disusun oleh anda atau satu daripada pihak ketiga. Pastikan ia serasi dengan persekitaran WSL2.
2. Edit fail .wslconfig
Dalam folder pengguna Windows anda (C:\Users\ ), mencipta fail dipanggil .wslconfig
jika ia belum wujud. Di dalamnya, tambahkan:
[wsl2]
kernel=C:\Ruta\al\kernel\vmlinuz
Simpan perubahan dan mulakan semula WSL dengan:
wsl --shutdown
Setelah dimulakan semula, WSL2 akan memuatkan kernel tersuai yang disediakan.
Dayakan rangkaian dalam WSL2 dan akses melalui localhost
Dalam versi terbaru WSL2, Microsoft mendayakan pengalihan lalu lintas antara Linux dan Windows oleh localhost, yang menjadikannya lebih mudah untuk digunakan dan dikonfigurasikan.
Ini bermakna anda boleh memulakan pelayan di dalam WSL2 (contohnya, python3 -m http.server 8000
) dan akses daripada penyemak imbas dalam Windows ke http://localhost:8000
. Jika anda perlu mendedahkan port kepada rangkaian, anda perlu mengkonfigurasi peraturan dengan netsh
atau alat khusus untuk mengubah hala IP dan port dengan betul.
Mengakses sistem fail antara Windows dan Linux
Dengan WSL2 anda boleh berinteraksi dengan sistem fail kedua-dua platform dengan lancar:
- Dari Linux anda boleh mengakses pemacu Windows masuk
/mnt/c
,/mnt/d
, Dll - Dari Windows anda boleh mengakses Linux melalui
\\wsl$\<distro>\
Selain itu, anda boleh menggunakan arahan wslpath untuk menukar laluan dari satu sistem ke sistem yang lain dengan mudah.
Pengagihan sandaran, eksport dan import
WSL2 menawarkan arahan untuk membuat sandaran penuh pengedaran anda, yang sangat berguna jika anda ingin berhijrah atau menyimpannya sebelum membuat perubahan besar. Contoh untuk eksport:
wsl --export Debian C:\backups\debian_backup.tar
Dan untuk mengimport ke dalam sistem lain:
wsl --import Debian C:\WSL\Debian C:\backups\debian_backup.tar --version 2
Ini akan mengklon seluruh distro memastikan laluan dan tetapan utuh.
Menggunakan Docker dalam WSL2 tanpa Desktop Docker
Salah satu kelebihan hebat WSL2 ialah anda boleh menjalankan Docker secara langsung, tanpa memerlukan Docker Desktop atau alatan tambahan. Langkah-langkah untuk memasangnya:
- Tambahkan repositori Docker rasmi ke distro anda.
- Pasang pakej:
docker-ce
,docker-ce-cli
,containerd.io
. - Tambahkan pengguna anda ke kumpulan docker:
sudo usermod -aG docker $USER
. - Edita
/etc/wsl.conf
untuk memulakan Docker secara automatik.
Kemudian anda boleh berlari docker run hello-world
dan pastikan semuanya berfungsi dengan betul.
Terminal tersuai untuk meningkatkan produktiviti anda
Memandangkan anda akan menghabiskan banyak masa bekerja di terminal, adalah idea yang baik untuk menjadikannya lebih mesra pengguna dan berguna:
Pasang ZSH + Oh-My-ZSH
ZSH ialah pengganti untuk bash dengan lebih banyak ciri dan bersama rangka kerja Oh-Saya-ZSH Anda mempunyai akses kepada beratus-ratus pemalam dan tema visual.
Konfigurasi Powerlevel10k
Tema ZSH ini meningkatkan bar arahan dengan memaparkan cawangan Git, ralat, persekitaran dan banyak lagi. Ia juga sangat boleh disesuaikan.
Pemalam tambahan untuk ZSH
- zsh-autosuggestions
- fzf (sejarah arahan dan carian)
- nvm (Pengurus versi Node.js)
- batcat (menggantikan kucing dengan warna)
Kelebihan berbanding mesin maya atau dwi but
Berbanding dengan VM tradisional, WSL2:
- Ambil kurang ingatan dengan menguruskan RAM secara dinamik.
- Bermula dalam kurang dari satu saat.
- Memudahkan akses kepada fail antara sistem.
- Ia berintegrasi dengan VSCode melalui sambungan "Jauh - WSL".
Dan di hadapan boot dual adalah lebih mudah, kerana ia mengelakkan but semula dan membolehkan anda bekerja dengan alatan grafik dan CLI tanpa gangguan.
Kesilapan biasa semasa memasang atau menggunakan WSL2
- 0x80070003: Menunjukkan bahawa distro tiada pada pemacu C:
- 0x80370102: Maya dilumpuhkan dalam BIOS.
- WSL2 memerlukan kemas kini kernel: Lawati https://aka.ms/wsl2kernel untuk memuat turun pakej tambahan.
Dengan semua persediaan ini, anda akan mempunyai persekitaran Linux yang lengkap berjalan pada Windows, dengan kernel berfungsi sepenuhnya, rangkaian aktif, Docker berjalan dan terminal yang mesra dan produktif dengan pemalam lanjutan. Ia adalah salah satu cara yang paling mudah dan berkuasa untuk membangunkan perisian hari ini tanpa mengorbankan sistem pengendalian yang anda gunakan setiap hari.
Penulis yang bersemangat tentang dunia bait dan teknologi secara umum. Saya suka berkongsi pengetahuan saya melalui penulisan, dan itulah yang akan saya lakukan dalam blog ini, menunjukkan kepada anda semua perkara yang paling menarik tentang alat, perisian, perkakasan, trend teknologi dan banyak lagi. Matlamat saya adalah untuk membantu anda mengemudi dunia digital dengan cara yang mudah dan menghiburkan.