Instalați subsistemul Windows pentru Linux

Install Windows Subsystem



Subsistemul Windows pentru Linux este un utilitar dezvoltat de Microsoft pentru a permite dezvoltatorilor și entuziaștilor Linux să își ruleze mediul Linux preferat în mod nativ pe Windows 10, fără a fi nevoie să ruleze o mașină virtuală. Modul în care funcționează este similar cu modul VIN funcționează pe Linux. WSL permite programelor binare Linux să ruleze pe Windows utilizând un strat de compatibilitate care transformă apelurile de sistem Linux în apeluri de sistem Windows.

Arhitectură

Probabil, WSL funcționează mai bine pe Windows decât WINE pe Linux și motivul din spatele acestuia este că Linux este deosebit în ceea ce privește arhitectura sa. În timp ce majoritatea sistemelor de operare constau dintr-un Kernel și o întreagă suită de biblioteci și caracteristici construite în jurul acelui Kernel, Linux este doar un Kernel. Majoritatea distribuțiilor GNU / Linux iau acest kernel și construiesc un sistem de operare deasupra acestuia. În funcție de modul în care ați ales să construiți acest teanc, veți obține distribuții diferite, cum ar fi Debian, RedHat etc.







Pentru a rula mediul Linux pe Windows, va trebui să activați caracteristica WSL (vom acoperi acest lucru în scurt timp) și apoi mergeți la magazinul Microsoft pentru a obține o copie a distribuției dvs. preferate (Ubuntu, Debian, OpenSUSE etc.).



Primul pas activează stratul de traducere syscall, iar al doilea pas aduce un teanc ușor de software pentru a vă oferi un sistem de operare Linux complet pentru a rula deasupra caracteristicii WSL. Făcând opusul, adică rularea aplicațiilor Windows pe Linux este mult mai greu, deoarece Windows este mult mai mult decât nucleul NT.



Din acest motiv, nu există nicio mașină virtuală implicată în implementarea WSL, ceea ce îl face o opțiune atractivă. Nu veți avea pierderi de performanță, deoarece nu sunt implicate VM-uri, ci doar un strat nativ de traducere ușoară syscall.





Instalare și configurare

Pe computerul dvs. Windows 10, căutați Activarea sau dezactivarea caracteristicilor Windows dând clic pe tasta Windows și tastând-o în meniul Start. Odată ce meniul Funcții Windows este deschis derulați în partea de jos unde veți găsi funcția Subsistem Windows pentru Linux. Bifați caseta respectivă și faceți clic pe OK.



Windows ar avea grijă de configurarea de aici înainte și, odată ce totul a fost făcut, ar fi necesar să reporniți sistemul pentru a finaliza modificările. După repornire, puteți merge la Microsoft Store și căutați distribuția preferată acolo.

Puteți căuta în magazin distribuția preferată. Mai jos este o captură de ecran a unora dintre cele mai utilizate distribuții. Puteți vedea două variante de OpenSUSE, o aplicație Debian și Kali Linux.

Desigur, cea mai populară distribuție este în continuare Ubuntu, cu 16.04 și 18.04 LTS disponibile în magazin.

Instalați subsistemul Windows pentru Linux

Acum trebuie doar să alegeți distribuția dorită și să instalați aplicația corespunzătoare. Vom instala Ubuntu 18.04 LTS pentru mediul nostru WSL. Are o dimensiune de aproximativ 215 MB, mult mai mică decât o întreagă instalare Ubuntu.

Odată ce aplicația este instalată, o puteți lansa direct din aplicația Microsoft Store sau căutând-o în meniul Start. La lansarea pentru prima dată, va dura ceva timp pentru a vă pregăti lucrurile.

S-ar putea să dureze până la 5 minute, dar odată ce ați terminat, vi se va solicita să introduceți noul dvs. nume de utilizator și parola UNIX și sunteți bine să mergeți!

Terminalul lansat vă va oferi aproape toate funcționalitățile unui sistem Ubuntu, cu excepția interfeței grafice. Deoarece majoritatea capabilităților UNIX / Linux vin pentru puterea terminalului, acest lucru vă poate ajuta să faceți un drum lung.

De exemplu, putem începe să folosim acest mediu prin actualizarea tuturor pachetelor instalate în acesta.

$sudoactualizare aptă&& sudoapt apt-și

Lucruri pe care le puteți și nu le puteți face în mediul WSL

Acum, întrebarea care apare în mintea tuturor este: Care este captura?

Să luăm în considerare cazul opus. Cu tehnologii precum WINE știm că nu tot ce se poate face în Windows nu se poate face pe Linux. Bibliotecile de sistem de nivel scăzut precum DirectX nu vor fi disponibile pe Linux și o mulțime de aplicații pe Windows se bazează pe astfel de biblioteci.

Sistemele de operare precum Windows 10, FreeBSD sau Illumos sunt sisteme de operare complete, nu doar nucleul. Cu Windows, deoarece majoritatea bibliotecilor sunt proprietare și acest lucru îngreunează problema. Acest lucru face munca unui proiect precum WINE, mult mai grea.

Încercând să emulăm Linux pe Windows, opusul este adevărat. Setul strâns de apeluri ABI (sau syscalls) al Linux este tot ce trebuie să traduceți în Windows pentru a rula totul deasupra acestuia. Dacă încercăm să întrebăm Ubuntu de pe WSL ce kernel rulează, acesta vă va oferi un număr de versiune de kernel Linux, cu Microsoft menționat alături de numărul de versiune pentru a indica faptul că aceasta nu este ramura principală a proiectului kernel Linux.

$uname -la

Dacă săpăm mai adânc, vom constata că, deși sunt afișate funcționalități de nivel înalt, cum ar fi aspectul sistemului de fișiere și configurațiile de rețea, activitățile de nivel inferior, cum ar fi aspectul stocării blocurilor, nu vor funcționa.

De exemplu, următoarele comenzi ar funcționa conform așteptărilor:

$df -h

$ifconfig

Ambele comenzi vă spun informații despre sistemul dvs. nativ care rulează de fapt Windows. Nu este nimic ca rularea unei VM în care există diferite interfețe de rețea și diferite sisteme de fișiere.

Cu toate acestea, comenzi precum lsblk nu va funcționa, deoarece stocarea blocurilor de nivel inferior nu este ceea ce Linux așteaptă să fie. În mod similar, instalarea OpenZFS este inutilă, deoarece OpenZFS instalează câteva module de kernel încărcabile și nu avem un kernel Linux doar o iluzie a acestuia.

Același lucru este valabil dacă încercați să rulați docker. La instalarea Docker, Ubuntu nu se va plânge, cu toate acestea, serviciul Docker nu va porni, deoarece depinde de Systemd care este absent în acest subsistem.

Cu toate acestea, puteți rula o mulțime de servicii și utilități bash pentru a vă ușura viața. Dacă gestionați servere Linux pentru o viață, nu trebuie să aveți Linux și pe desktop. Puteți rula clienți SSH, client Docker, bash, utilitare precum grep și awk, precum și limbajul de programare preferat de la Python la Rust în acest mediu fără a vă polua sistemul Windows.

De asemenea, puteți rula automatizarea CD / CI folosind Ansible, Puppet sau orice altă tehnologie pe care o preferați. Adică orice poate necesita un DevOp, un dezvoltator de aplicații web sau un tester de la un sistem Linux poate fi realizat cu WSL, cu excepția persoanelor care lucrează cu software de sistem și / sau dezvoltare de kernel.

Concluzie

Ai propriile gânduri sau experiență cu subsistemul Windows pe Linux? Sau poate aveți în continuare întrebări la care aveți nevoie de răspunsuri. Contactați-ne cu întrebările dvs. și vom aborda acest subiect pentru dvs.