Įdiekite „Windows“ posistemį, skirtą „Linux“

Install Windows Subsystem



„Windows“ posistemis, skirtas „Linux“, yra „Microsoft“ sukurta priemonė, leidžianti kūrėjams ir „Linux“ entuziastams paleisti savo mėgstamą „Linux“ aplinką „Windows 10“ be papildomų išlaidų, paleidžiant virtualią mašiną. Veikimo būdas yra panašus į būdą VYNAS veikia Linux. WSL leidžia „Linux“ dvejetainius failus paleisti „Windows“ naudojant suderinamumo sluoksnį, kuris „Linux“ sistemos skambučius paverčia „Windows“ sistemos skambučiais.

Architektūra

Galima teigti, kad WSL veikia geriau „Windows“ nei „WINE“ „Linux“, o priežastis yra ta, kad „Linux“ yra ypatinga savo architektūra. Nors daugumą operacinių sistemų sudaro branduolys ir visas bibliotekų bei funkcijų rinkinys, sukurtas aplink tą branduolį, „Linux“ yra tik branduolys. Dauguma GNU/Linux distribucijų imasi šio branduolio ir ant jo sukuria operacinės sistemos krūvą. Priklausomai nuo to, kaip pasirinkote kurti šį kaminą, gausite skirtingus paskirstymus, tokius kaip „Debian“, „RedHat“ ir kt.







Norėdami paleisti „Linux“ aplinką „Windows“, turite įjungti WSL funkciją (netrukus tai aptarsime), o tada eikite į „Microsoft“ parduotuvę ir gaukite mėgstamo platinimo kopiją („Ubuntu“, „Debian“, „OpenSUSE“ ir kt.).



Pirmasis žingsnis įgalina „syscall“ vertimo sluoksnį, o antrasis žingsnis suteikia lengvą programinės įrangos krūvą, kuri suteiks jums pilną „Linux“ OS, kad galėtumėte paleisti WSL funkciją. Priešingai, tai yra, paleisti „Windows“ programas „Linux“ yra daug sunkiau, nes „Windows“ yra daug daugiau nei tik NT branduolys.



Dėl šios priežasties WSL įgyvendinime nėra jokios virtualios mašinos, todėl tai yra patraukli galimybė. Jūs neprarasite našumo, nes nedalyvauja jokie VM, tik vietinis lengvas sistemos iškvietimo vertimo sluoksnis.





Įdiegimas ir sąranka

Kompiuteryje su „Windows 10“ ieškokite Įjungti arba išjungti „Windows“ funkcijas spustelėdami „Windows“ klavišą ir įvesdami tą patį meniu Pradėti. Kai atidaromas „Windows“ funkcijų meniu, slinkite į apačią, kur rasite „Windows“ posistemės, skirtos „Linux“, funkciją. Pažymėkite šį langelį ir spustelėkite Gerai.



Nuo šiol „Windows“ pasirūpins sąranka ir, kai viskas bus padaryta, reikės iš naujo paleisti sistemą, kad užbaigtumėte pakeitimus. Po perkrovimo galite eiti į „Microsoft Store“ ir ten ieškoti mėgstamo platinimo.

Parduotuvėje galite ieškoti mėgstamo platinimo. Žemiau yra kai kurių dažniausiai naudojamų paskirstymų ekrano kopija. Galite pamatyti du „OpenSUSE“ variantus, „Debian“ programą ir „Kali Linux“.

Žinoma, populiariausias platinimas vis dar yra „Ubuntu“, kurio parduotuvėje galima įsigyti ir 16.04, ir 18.04 LTS.

Įdiekite „Windows“ posistemį, skirtą „Linux“

Dabar jums tereikia pasirinkti norimą platinimą ir įdiegti atitinkamą programą. Įdiegsime „Ubuntu 18.04 LTS“ mūsų WSL aplinkai. Jis yra apie 215 MB dydžio, daug mažesnis nei visas „Ubuntu“ diegimas.

Įdiegę programą, galite ją paleisti tiesiai iš „Microsoft Store“ programos arba ieškodami jos meniu Pradėti. Pirmą kartą paleidžiant, užtruks šiek tiek laiko, kol viskas bus paruošta jums.

Tai gali užtrukti iki 5 minučių, bet kai tai bus padaryta, būsite paraginti įvesti naują UNIX vartotojo vardą ir slaptažodį ir galėsite pradėti!

Paleistas terminalas jums pasiūlys beveik visas „Ubuntu“ sistemos funkcijas, išskyrus GUI. Kadangi dauguma „UNIX“/„Linux“ galimybių priklauso nuo terminalo galios, tai gali padėti jums pasiekti daug.

Pavyzdžiui, šią aplinką galime pradėti naudoti atnaujinę visus joje įdiegtus paketus.

$sudotinkamas atnaujinimas&& sudotinkamas atnaujinimas-ir

Dalykai, kuriuos galite ir ko negalite padaryti WSL aplinkoje

Dabar kiekvieno galvoje kyla klausimas - koks laimikis?

Apsvarstykime priešingą atvejį. Su tokiomis technologijomis kaip WINE mes žinome, kad ne viskas, ką galima padaryti sistemoje „Windows“, gali būti padaryta naudojant „Linux“. Žemo lygio sistemos bibliotekos, tokios kaip „DirectX“, nebus prieinamos „Linux“, o daugelis „Windows“ programų priklauso nuo tokių bibliotekų.

Operacinės sistemos, tokios kaip „Windows 10“, „FreeBSD“ ar „Illumos“, yra visavertės operacinės sistemos, ne tik branduolys. Naudojant „Windows“, nes dauguma bibliotekų yra patentuotos ir tai apsunkina. Tai labai apsunkina tokį projektą kaip Vynas.

Bandant mėgdžioti „Linux“ sistemoje „Windows“, yra priešingai. „Linux“ griežtas ABI skambučių (arba sistemos skambučių) rinkinys yra viskas, ko jums reikia išversti į „Windows“, kad galėtumėte paleisti viską. Jei bandysime paklausti „Ubuntu“ WSL, koks branduolys veikia, jis suteiks jums „Linux“ branduolio versijos numerį, o „Microsoft“ kartu su versijos numeriu nurodys, kad tai nėra pagrindinė „Linux“ branduolio projekto šaka.

$uname

Jei įsigilinsime, pamatysime, kad nors rodomos aukšto lygio funkcijos, pvz., Failų sistemos išdėstymas ir tinklo konfigūracijos, žemesnio lygio veikla, pvz., Blokų saugyklos išdėstymas, neveiks.

Pavyzdžiui, šios komandos veiktų taip, kaip tikėtasi:

$df -h

$ifconfig

Abi komandos nurodo informaciją apie jūsų vietinę sistemą, kurioje iš tikrųjų veikia „Windows“. Tai nėra kažkas panašaus į VM paleidimą, kai yra skirtingos tinklo sąsajos ir skirtingos failų sistemos.

Tačiau tokios komandos kaip lsblk neveiks, nes žemesnio lygio blokų saugykla nėra tokia, kokios tikisi „Linux“. Panašiai diegti „OpenZFS“ yra beprasmiška, nes „OpenZFS“ įdiegia kelis įkeliamus branduolio modulius, o mes neturime „Linux“ branduolio - tik iliuziją.

Tas pats pasakytina, jei bandote paleisti „Docker“. Diegiant „Docker“, „Ubuntu“ nesiskųs, tačiau „Docker“ paslauga nebus paleista, nes tai priklauso nuo „Systemd“, kurio nėra šiame posistemyje.

Tačiau, norėdami palengvinti savo gyvenimą, galite naudotis daugybe paslaugų ir „bash“ komunalinių paslaugų. Jei pragyvenimui valdote „Linux“ serverius, neprivalote turėti „Linux“ ir savo darbalaukyje. Šioje aplinkoje galite paleisti SSH klientus, „Docker“ klientą, „bash“, tokias paslaugas kaip „grep“ ir „awk“, taip pat mėgstamą programavimo kalbą nuo „Python“ iki „Rust“.

Taip pat galite paleisti savo CD/CI automatiką naudodami „Ansible“, „Puppet“ ar bet kurią kitą pageidaujamą technologiją. Tai reiškia, kad viskas, ko reikalauja „DevOp“, žiniatinklio ar programų kūrėjas ar testeris iš „Linux“ sistemos, gali būti pasiekta naudojant WSL, išskyrus žmones, dirbančius su sistemos programine įranga ir (arba) branduolio kūrimu.

Išvada

Ar turite savo minčių ar patirties su „Windows“ posistemiu „Linux“? O gal vis dar turite klausimų, į kuriuos reikia atsakyti. Susisiekite su mumis, jei turite klausimų, ir mes jums aptarsime šią temą.