Bash on Windows. Repeat, Microsoft demos Bash on Windows
'An almost surreal endorsement by Microsoft on the importance of open source'
BUILD2016 Microsoft is bringing the Linux Bash shell command line to Windows 10, running as a native Ubuntu binary on a Windows subsystem.
Developer director Kevin Gallo demonstrated the shell at the opening keynote of Build 2016, Microsoft's developer conference in San Francisco. The primary goal, said Gallo, is to enable developers to use Linux tools and utilities when working on Windows.
It is "basically real-time translation of Linux syscalls into Windows OS syscalls" said Ubuntu's Dustin Kirkland, adding that this is "an almost surreal endorsement by Microsoft on the importance of open source to developers."
It is not only the Bash shell, of course, but also Linux non-GUI utilities and applications that run. Kirkland states that "most of the tens of thousands of binary packages available in the Ubuntu archives" will run, not only utilities like cp, find, grep, and ssh, but also aptitude, apache, mysql, python, perl, ruby, php, gcc, tar and so on.
Windows drives are "mounted read/write directly under /mnt," while Ubuntu filesystem files are also shown in Windows under the user's application data folder [c:\users\[username]\AppData\Local\Lxss\rootfs\].
Did Kirkland say Apache? He did; and indeed his emphasis as an Ubuntu guy is different from that of Gallo. Gallo speaks in terms of bringing developers to Windows, while Kirkland sees it as extending Ubuntu's reach and endorsing open source alternatives to Windows applications.
A strong, native Linux subsystem running in Windows will undoubtedly be welcomed, not only by developers but also by system administrators, who can now use many utilities across Windows and Linux.
The implications are profound though, since Microsoft is also opening the door for developers and admins to use fewer, rather than more, true Windows applications in their work. Of course, if those applications run on Microsoft's Azure cloud, it can win in either case. ®