Todellinen syy siihen, miksi Canonical ja Microsoft toivat Ubuntun Windows 10:een, oli se, että järjestelmänvalvojat ja kehittäjät voisivat käyttää Bashia ja muita Linuxin komentotulkkiohjelmia, kuten makea, gawkia ja greppiä, Windowsissa. Linux-käyttäjät, jotka ovat luontaisia hakkereita, alkoivat välittömästi työskennellä Linuxin graafisten työpöytien tuomiseksi Windows Subsystem for Linuxiin (WSL).
Arvaa mitä? He ovat tehneet sen.
Guatemalalainen ohjelmoija, joka käyttää GitHub-kahvaa Guerra24, on ”onnistunut ajamaan Unityä WSL:n sisällä, tämä osoittaa, että se on täysin kykenevä pyörittämään kokonaista työpöytäympäristöä.”
Tämä ei ole helppoa, ja se on kaukana täydellisestä Linux-työpöydästä, mutta se on alku. Jos haluat käyttää Ubuntu Linux -työpöytää Windows 10:ssä töitä varten, suosittelen tekemään sen virtuaalikoneohjelman (VM), kuten Oraclen VirtualBoxin, kautta. Mutta jos haluat vain pitää hauskaa ja terävöittää työpöytäohjelmointitaitojasi, sinäkin voit kokeilla Ubuntun käyttämistä Windows 10:ssä natiivisti.
Jotta voit aloittaa tämän projektin tänään, sinun on käytettävä Windows 10 Fast Ring -version beta-versiota. Kun Windows 10 Anniversary Update julkaistaan julkisesti, kaikki voivat kokeilla sitä.
Miten se sitten tehdään? Kun olet päivittänyt Windows 10:n, seuraa minua.
Ensin sinun on kytkettävä Windows 10:n kehittäjätila päälle Asetukset > Päivitys & turvallisuus > Kehittäjille. Seuraavaksi etsi ”Windows-ominaisuudet” ja valitse ”Windows-ominaisuuksien ottaminen käyttöön tai poistaminen käytöstä” ja ota käyttöön Windows Subsystem for Linux (Beta).
Sen jälkeen Bashin asentamiseksi sinun on avattava Windowsin komentorivi ja kirjoitettava ”bash”. Sinua pyydetään hyväksymään käyttöehdot ja lataamaan Ubuntu. Tyypillinen Ubuntun lataus on hieman alle yhden gigatavun kokoinen. Jos sinulla on siis hidas internetyhteys, varaudu odottamaan. Asennuksen jälkeen käytät WSL:n päällä Ubuntu 14.04:n käyttäjätilaversiota.
Teknisesti et käytä Linuxia. Se saattaa näyttää Linuxilta ja vinkua kuin Tux, Linux-pingviini; mutta se ei ole Linux. Se johtuu siitä, että Ubuntun käyttäjäavaruus ei toimi Linux-ytimen vaan WSL:n päällä. WSL tarjoaa API-koukut, jotka saavat Ubuntun ja Linux-sovellukset näyttämään Linuxilta, mutta se ei ole sama asia. Tämä tulee tärkeäksi, kun menemme eteenpäin.
Kun olet asentanut Ubuntun, sinun täytyy päivittää se. Teet sen Bash-kuoresta suorittamalla seuraavat komennot:
1. apt-get update
2. apt-get upgrade
Vaihda nyt takaisin Windows 10:een ja asenna Windows-yhteensopiva Xserver. Tätä Ubuntu käyttää graafisen käyttöliittymän näyttämiseen. Parhaat näistä meidän tarkoituksiimme ovat vcxsrv tai Xming.
Seuraavaksi sinun täytyy kertoa Ubuntulle Xserveristä, jotta se voi käyttää sitä. Tätä varten voit syöttää komentotulkissa seuraavan komennon:
DISPLAY=:0.0
Nyt mikä tahansa graafinen Linux-ohjelma näkyy Windows 10:ssä. Vielä parempi on, että jos aiot jatkossakin työskennellä graafisten Linux-ohjelmien kanssa WSL:ssä, saat WSL:n automaattisesti valmistautumaan graafisiin ohjelmiin sijoittamalla komennon Bashin asetustiedostoon: ”.bashrc”. Helppo tapa tehdä tämä on kirjoittaa se echo-komennolla seuraavalla komentotulkkikomennolla:
echo ”export DISPLAY=:0.0” >> ~/.bashrc
Tämän jälkeen voit ajaa graafisia Linux-ohjelmia, kuten Firefoxia, tai työpöytäohjelmia… mutta ne eivät pyöri hyvin tai pitkään. Tämä johtuu siitä, että WSL ei sisällä socket-tukea. Unix ja Linux käyttävät pistorasioita palveluiden väliseen viestintään. Linux-työpöydällä oletustapa toteuttaa socketit on D-Bus-viestijärjestelmä. Ilman D-Busia monet Linux-työpöydän graafiset ohjelmat eivät toimi kovin hyvin, jos ollenkaan.
WSL tukee kuitenkin TCP-verkkoprotokollaa, ja Reddit-käyttäjä nimeltä ShaRose on keksinyt keinon saada D-Bus käyttämään tcp:tä socketien sijasta. Täydellistä? Ei, mutta se toimii.
Voidaksesi ottaa tämän käyttöön, suorita seuraava komento:
sudo sed -i ’s/<listen>.*<\/listen>/<listen>tcp:host=localhost,port=0<\/listen>/’ /etc/dbus-1/session.conf
Tässä käytettiin sed stream editoria muuttamaan D-Busin konfigurointitiedostoa niin, että tästä eteenpäin se käyttää tcp:tä socketien sijaan. Lopputulos? D-Bus-väylää tarvitsevat sovellukset toimivat nyt WSL:llä.
Jatkossa on aika asentaa graafiset työpöytäohjelmat. Tämä tehdään ajamalla nämä ohjelmat Bashista:
- apt-get install ubuntu-desktop
- apt-get install unity
- apt-get install compiz-core
- apt-get install compizconfig-settings-manager
Ensimmäinen komento asentaa Ubuntun työpöydän perusohjelmat. Tämä sisältää loppukäyttäjän ohjelmat, kuten LibreOfficen, Seuraava komento asentaa Unity-työpöydän. Kaksi viimeistä komentoa asentavat, Compiz, OpenGL-grafiikkakompostien hallinnan ja sen etuosan ccsm:n. Seuraavaksi voit käyttää ccsm:ää työpöydän asetusten määrittämiseen.
Kun kaikki nämä ohjelmat on asennettu, suorita ccsm:ää Bashista. ccsm:n käyttöliittymästä sinun on otettava käyttöön seuraavat Compiz-liitännäiset:
Yleistä:
- Komennot
- Komposiitti
- Kopioi tekstuuriin
- OpenGL
Työpöytä:
- Ubuntu Unity Plugin
Kuvan lataus:
- PNG
Utility:
- Compiz-kirjaston työkalupakki
- Ikkunoiden hallinta
- Ikkunan siirtäminen
- Ikkunoiden sijoittelu
- Ikkunan koon muuttaminen
- Skaalaaminen
- Ikkunoiden siirtäminen
- Ikkunoiden siirtäminen
Nyt, saadaksesi tämän esityksen käyntiin, sulje ccsm ja tuo Unity-käyttöliittymä esiin ajamalla compiz Bashista.
Minuutin kuluttua sinulla pitäisi olla Unity toiminnassa.
Nyt, älä lähde tähän väärillä odotuksilla. Se ei tule toimimaan hyvin. Mutta Windows 10 -testijärjestelmässäni, ASUS:n työpöydällä, jossa on kolmannen sukupolven i7 3770 -prosessori ja 8 gigatavua RAM-muistia, se toimi tarpeeksi hyvin, joten olen varma, että joku keksii lopulta tavan saada Ubuntun työpöytä toimimaan hyödyllisesti WSL:ssä.
Nyt, jos suotte anteeksi, lähden katsomaan, saanko vanhan ensimmäisen persoonan räiskintäpelin Quaken toimimaan WSL:ssä. Olen ”näin” lähellä saada sen toimimaan.
Seuraavat tarinat:
- Kuinka päästä alkuun Ubuntun ja Bashin kanssa Windows 10:ssä
- Ubuntu (ei Linux) Windowsissa: Miten se toimii
- Microsoftin ja Canonicalin kumppanuus tuo Ubuntun Windows 10:een