BASH su Windows 10: video dimostrazione e dettagli tecnici

31 Marzo 2016 72

Una delle notizie principali del keynote di apertura del Build 2016, tenutosi ieri sera al Moscone Center di San Francisco, è stata l'arrivo del supporto nativo della shell Unix / Linux BASH su Windows 10. Un traguardo che ha richiesto la collaborazione tra Microsoft e Canonical, e che non si limita a una "semplice" emulazione. BASH gira sul sistema a un livello molto basso, indicando un'integrazione molto più profonda del previsto tra Ubuntu e Windows 10.

Tutto è possibile grazie a WSL, un acronimo che sta per Windows Subsystem for Linux, all'interno del quale, dice Microsoft, "eseguiamo una vera e propria immagine user-mode di Ubuntu, fornita da Canonical".


Bash permetterà quindi di eseguire tutti i comandi tipici della shell di Linux, gli script creati per la shell ed alcuni strumenti di sviluppo come Python, Git, Ruby e così via. Bash potrà anche accedere al file system di Windows.

Per il primo periodo, tuttavia, bisognerà tenere conto di alcune limitazioni e potenziali problematiche. Non tutti gli script funzioneranno e, trattandosi di un prodotto ancora in beta, è importante non aspettarsi stabilità e affidabilità elevate. Inoltre, Microsoft specifica che l'obiettivo principale è fornire strumenti di sviluppo e programmazione, non creare server e host di siti Web. In ogni caso, ecco un video del Microsoft Developer Network che dimostra nel dettaglio BASH, solo in inglese.

BASH sarà disponibile nelle prossime build Insider di Windows 10 Anniversary Update / Redstone - ricordiamo ancora una volta in forma beta.

Fotocamera Wide per eccellenza? LG G7 ThinQ, in offerta oggi da 4G Retail Tim a 278 euro oppure da Media World a 329 euro.

72

Commenti

Regolamento Commentando dichiaro di aver letto il regolamento e di essere a conoscenza delle informazioni e norme che regolano le discussioni sul sito. Clicca per info.
Caricamento in corso. Per commentare attendere...
Boronius

Io ho lavorato in varie aziende, mi è capitato di coordinare sia programmatori che sistemisti. I sistemisti Windows Server li ho sempre visti fare decorosamente il loro dovere, i sistemisti Linux mi arrivavano pieni di boria come quelli che devono spaccare il mondo e rottamare tutto il preesistente, i primi 3 mesi andavano a bomba poi metodicamente si incagliavano in qualche rogna grossa, la classica scusa era "ma io sono esperto di Linux YYY mentre questo è un Linux ZZZ". I sistemisti Windows si lamentano 10 volte di meno e producono il doppio, questo almeno nella mia esperienza diretta.

Elle

Perché Windows è più potente e versatile di Linux? Intendi OneCore?

crsn

se ad esempio sviluppi software in C/C++ e devi fare deploy su desktop e piattaforme embedded, una bash ti salva molto ;)

crsn

il primo che mi viene in mente è quello di non dover ricrearmi un ambiente assurdo per poter fare ./configure && make su windows ;)

Luca

Sisi sta proprio affondando... vai a guardarti il market share dei prodotti windows

beren

Infatti penso che uno degli obiettivi sia quello del porting che hai citato, oltre a quello di mettere a disposizione i tool di BASH senza software aggiuntivo com Cygwin o MSYS2.

Boronius

La caratteristica dei vincenti? Quando uno sta pianificando di fare una cosa, il vincente già l'ha portata a termine con successo

MisterWU

Ciò che creiamo sono principalmente installazioni multimediali (per riassumere)
Con controlli remoti e calcoli neraly real time per produrre immagini e audio in modo interattivo sfruttando banvhe dati e immagini generate in 3D.
Sono strutture con molteplici schermi/videoproiettori(fino a 16 per ora) e spazializazioni audio fino a 64 speaker.
Per gestire quedta struttura c'è un enorme lavoro di syncro tra diverse macchine quelle di calcolo, qelle di conttoloo, quelle di diffusione e i diversi tipi di sensori. e per diverse ragioni a volte dobbiamo avere una struttura eterogenea con diversi OS (anche se il grosso della struttura gira con linux con un kernel realtime)
Per cui per simulare inizialmente le varie situazioni di struttura di rete usiamo delle VM sia su server interni nostri e a volte tutte virtualizate su server esterni. Quando tutto funziona piu o meno a dovere a livello di comunicazione si compra l'hardware per l'installazione finale.
Benché io abbia una preparazione informatica e di elettronica non mi occupo direttamente/quotidianamente della programmazione ma ho un ruolo di supervisione e direzione artistica, e per ciò cerco sempre di tenermi informato per vedere se i nostri ragazzi lavorano nel migliore dei modi. Per cui le informazioni della tua modalità di lavoro per me sono preziose. ;)

Giacomo Cerquone

Ah ecco perché non capivo il collegamento alla vps.
Comunque si, come tutti i team di cui sono a conoscenza lavoro su notebook (macbook o quello che vuoi) ed un server linux centrale utilizzato da tutti che mantiene le repo su cui si lavora.
Ma da quanto leggevo in un tuo altro commento non sviluppi software. Citandoti: "Per il mio lavoro (produzione di contenuti multi mediali per eventi e spettacoli)".
Nel nostro ambito ti assicuro non è una pratica diffusa quella che dici, infatti molte aziende ti danno i loro portatili per lavorare, anche perché non avendo capito bene qual è il tuo lavoro non riesco a capire i vantaggi che avete nell'utilizzare una vm su server (tra l'altro nemmeno poco costoso, in base a quanti siete)

MisterWU

Inutile eccitarsi tanto. Per noi, da riunione interna del pomeriggio sul soggetto, la conclusione è stata: 6 mesi dall'uscita perché alla microsoft debuggino tutto con i loro beta tester gratuiti (noi/voi), 3 mesi di test, 3 mesi di controllo per effetivo vantaggio in produttività rispetto alle soluzioni attuali.
Indi per cui: a settembre 2017 inizieremo ad usarla in un workflow di produzione.

MisterWU

Batteria?!??! Ahh ma sviluppi su un notebook.
Io intendevo una VM su server.
Noi abbiamo tutte le VM su server.
Ma va be noi probabilmente facciamo al contrario tuo: sviluppo su linux e quando/se necessario porting su Windows e nel nostro caso la BASH sara molto utile.

MisterWU

E senza snapshot di test e di confronto che invece una VM ti permette di fare in 30 secondi e ti fa guadagnare ore.

Continuo a non vederci una vera utilità per chi sviluppa su Windows.

Noi sviluppiamo al 95% per linux/BSD e sarebbe molto comodo per il porting su Windows (che usiamo principalmente come client grafico per sfruttare in molti casi la migliore stabilità dei driver) di alcuni strumenti sviluppato da noi.

Giacomo Cerquone

ahahah decisamente no. Per davvero, stiamo parlando di cose un po' diverse. Con git lavori sul sistema operativo che usi per programmare (ed almeno io che programmo praticamente tutti i giorni, mi ritroverei ad usare hyperv 24h/24 e a switchare in continuazione tra windows e la virtualizzazione.
Senza considerare diverse cose: l'uso delle risorse hardware è totalmente diverso (e la batteria ne risentirebbe in maniera assurda), anche la velocità come la praticità sono distanti anni luce e infine il fatto che è integrato nativamente nel sistema che porta a tutta una serie di ottimizzazioni spettacolari...
Che poi davvero, si sta parlando di cose completamente differenti, ho fatto soltanto una piccolissima lista del perché virtualizzare un os ed avere un'integrazione come questa che hanno portato sono due cose tooootalmente diverse.

MisterWU

Ed usare una VM linux???? Molto più facile che fare tutto sto casino se tanto poi alla fine usi una VPS linux.

Gabriel #JeSuisPatatoso

Lato desktop sarà sempre la prima scelta per figli dei fiori, hipster, e complottisti. Lato server ci ha guadagnato MS (che poi la shell bash non ha poi molti più vantaggi della powershell, anzi, però meglio averla che non averla)

Boronius

Ma se a regime Windows farà anche da Linux (essendo Windows ben più potente e versatile di Linux), a cosa servirà poi Linux??

Boronius

Linux accerchiato!! Stallman si strappa i capelli (solo dopo esserseli lavati con l'ammoniaca...) !!

Boronius

Probabilmente se farai girare roba Linux "grossa" correrai il rischio di qualche crash inatteso (peraltro, crasha a volte anche in Linux nativo, a causa delle ben note incompatibilità ecc.)

Boronius

Sembra per facilitare la vita ai programmatori PHP Web e ai sistemisti (tipo... io...) che nella stessa azienda devono gestire sia server Windows che server Linux

ego

grazie della spiegazione ;)

Lorenzo Caner

È un po' più chiaro! Grazie della risposta ;)

root

Si invece, interpretano le chiamate di sistema a Linux con un modulo del kernel, non c'è emulazione dietro alla fine... lo fa anche freeBSD di supportare i binari Linux alla fin fine

beren

Io ho capito un po' grazie a questa immagine (F5).
In pratica fanno girare una versione di Ubuntu, fornita da Canonical, senza Kernel Linux simulando le syscall verso il Kernel Linux, che invece sono implementate da un sottosistema integrato in windows.
Se guardi la presentazione a un certo punto fa vedere la modifica di un file con vi da BASH e subito dopo fa vedere come la modifica viene recepita da Esplora Risorse. Ad esempio si può editate un file con visual Studio e compilare in BASH con GCC.. Spettacolo!

giot

E' presto per dirlo, ma essere integrato in Windows e supportato ufficialmente ci si aspetta un sistema più stabile, con meno bug e con assistenza professionale da parte di Microsoft se si incontrano dei problemi.

giot

Beh, non so dove lo hai letto, ma ora c'è ufficialmente del software GNU in Windows, se è questo che intendono.

Xadren

Quindi è corretto, per così dire, quello che ho letto in giro: "GNU/Windows"?

ego

e scusa la mia domanda ignorante,che miglioramenti apporta?

giot

E' stato incluso parte di quello che in Ubuntu gira "sopra" al kernel. Si poteva già fare tramite software di terze parti (Cygwin), ma ora è un software integrato in Windows ed ufficialmente supportato da Microsoft.

Fabio

Sbaglio o Microsoft non ha ancora fornito una data per l'insider preview della build 2016?

J~Morgoth

Tanto la maggior parte delle persone non sa manco che è

Giacomo Cerquone

Posso risponderti essendo anche io uno sviluppatore contentissimo ed entusiasta di poter utilizzare finalmente bash su windows nativamente (ci sono delle famose emulazioni (cygwin una di queste) che ho provato ma mai tenuto definitivamente in quanto odio a morte inserire roba a casaccio sul mio portatile ed in più sembravano macchinose a bestia).

La console diventa fondamentale per ogni sviluppatore che si trovi ad un determinato livello. Noi web developers ci ritroviamo ad utilizzare delle vps (virtual-personal-server quelli venduti da aruba ad esempio) per far girare le nostre applicazioni e queste "macchine" hanno sistemi operativi linux (le distro più comuni che ti forniscono sono debian, red hat e ubuntu) che vanno utilizzate chiaramente tutte a riga di comando.
Poi qualunque sviluppatore, web developers e non che utilizzano sistemi operativi windows, si trovano a dover utilizzare la console di windows, il che va relativamente bene, (soltanto per gli enormi e assurdi passi avanti fatti con PowerShell che è qualcosa di davvero mostruoso) per utilizzare git (e altri tool che dipendono molto da caso a caso) che è un software indispensabile per lavorare in team e per tanti altri motivi che non sto ora a spiegarti ed il continuo cambio di comandi da vps a vps è devastante perché, almeno io, una volta che mi trovo nella console faccio molte cose da li per praticità e velocità.
E poi non dimentichiamoci che git non è supportato nativamente e soprattutto, una volta che questa splendida cosa uscirà dalla fase beta, si avrà molta più facilità nel risolvere problemi comuni nella community dato che non ci sarà più, ad esempio, la versione git di windows e quella di linux, ma sarà un'unica e uguale versione che utilizzeremo tutti.

Luca Lindholm

Proprio in fallimento la Microsoft. -.-

Rieducational Channel

Credo anche Obeliks.

George Daniel Lungu

Per gli utenti normali non porterà vantaggi

Xadren

Non credo di avere capito: parte del kernel di Linux è stato integrato in Windows? Perché gli articoli parlano di Ubuntu, non del kernel.

netname

e beh quabdo la barca affonda si fa di tutto per arrivare almeno a riva e scendere con un minimo di dignità.

Lorenzo Caner

non sono sviluppatore ma sono curioso: in cosa potrebbe essere utile?
tks

Luca Bardella

invece è una notizia assolutamente normale per il nuovo corso di ms

Luca Bardella

ad esempio nel caso da te citato, licenze di sqlserver, ora vanno solo su win, una volta che avrà la compatibilità su linux quanti licenze in più potranno vendere? Quanti server girano sotto linux rispetto a win? Mi pare che il nuovo corso di ms sia ben chiaro, vendere servizi, supporto e prodotti a prescindere dal sistema operativo

losteagle17

Le VM di Windows 10 girano sotto Hypervisor che è lo stesso di Windows Server 2012, è ottimizzato per non penalizzare le prestazioni dei sistemi operativi che vi girano e garantisce un alto livello di efficienza.

Matt7even

Gombloddo a Linux!

Oliver Cervera

Ah, come mai non è arrivato il fag di turno a dire che ci vuole l'universal app per Bash in Windows? :D

Oliver Cervera

Sono alla prima demo e già mostrano enormi potenzialità, questa cosa può diventare davvero seria. Sono molto contento, ci sono alcuni tool "normali" (non per dev) che sono più completi in Linux, quindi ben venga e speriamo che credano in questo progetto.

RiccardoII

Questo più di un anno fa

BuBy

oltre ad utilizzare le app linux nativamente la comodita` e` anche nel filesystem,

BuBy

ok a molti non interesserà ma questa e` davvero di una comidita` pazzesca per gli sviluppatori!!

Malca Gatto

Non è nativa

piallato

MS sta strizzando molto l'occhio verso linux. Nel 2017 uscita la versione SQL server per linux ad esempio. Non so cosa ci sia nei loro piani, certo è che un motivo ci sarà, quale sia però a me non viene in mente...

root

Da quello che si vede pare sia un immagine disco di Linux (sembrerebbe ext4 dato che c'é lost+found) montata alla fine, e poi i drive di Windows sono montati in /mnt, e se é così mi viene da pensare che abbiano aggiunto il supporto ad ext4 a Windows in qualche modo, non male

root

E anche minori prestazioni... Alla fine questa é un esecuzione nativa

HDblog @ Computex 2018: live blog continuo dalla fiera

Tutte le novità di Windows 10 1803 "April 2018 Update"

Guida Acquisto: i migliori Notebook, Ultrabook e 2-in-1 | #NATALE 2017

Windows 10 1709 Fall Creators Update disponibile: tutte le novità