The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.

    Debian Linux is now available in the Microsoft Store, runs on Windows 10

    Discussion in 'Linux Compatibility and Software' started by Primes, Mar 6, 2018.

  1. Primes

    Primes Notebook Deity

    Reputations:
    919
    Messages:
    1,736
    Likes Received:
    718
    Trophy Points:
    131
    ..thanks to an optional Windows 10 feature called Windows Subsystem for Linux, it’s been possible to install and run linux from within a Windows environment without rebooting and without installing a virtual machine.

    https://liliputing.com/2018/03/debi...n-the-microsoft-store-runs-on-windows-10.html


    GNU/Linux distros available from the Microsoft Store so far (as of March 6th, 2018):
    Debian
    Kali
    OpenSUSE
    SUSE Linux Enterprise Server
    Ubuntu
     
    Starlight5, Vasudev and hmscott like this.
  2. hmscott

    hmscott Notebook Nobel Laureate

    Reputations:
    7,110
    Messages:
    20,384
    Likes Received:
    25,139
    Trophy Points:
    931
    These are not "Linux" distro's, these are Linux commands recompiled with compatibility libraries to run concurrently in Windows, using Windows OS services, not a Linux OS... it's not an actual Linux OS. :)

    Cygwin has been doing this on Windows for many many years (1995), and although it's nice to have the Linux tools under Windows, WSL is not a Linux replacement.

    You can waste a lot of time "porting" tools you want from real Linux to Windows - ala Cygwin libraries - but in the end you are still stuck on Windows.

    It would be better to run Linux with a Windows VM, or Windows with a Linux VM, and keep the two separate and apart. :)

    Something like this has been handy when integrating components across OS's when you are forced to co-exist, unfortunately it gives the impression that they - the Windows users / developers - are now "running Linux".

    It's a good opportunity to then expose them to a Linux VM under Windows - to have a full Linux available for development, with the WSL still running in the Windows OS as comparison.

    It's helped with the conceptual discussions for systems design and integration for those with little or no previous Linux experience.
     
    Last edited: Mar 6, 2018
    Vasudev, inm8#2, Primes and 1 other person like this.
  3. Primes

    Primes Notebook Deity

    Reputations:
    919
    Messages:
    1,736
    Likes Received:
    718
    Trophy Points:
    131
    Ah I remember playing around with Cygwin a long time ago lol.
     
    Vasudev and hmscott like this.
  4. hmscott

    hmscott Notebook Nobel Laureate

    Reputations:
    7,110
    Messages:
    20,384
    Likes Received:
    25,139
    Trophy Points:
    931
    Then WSL is essentially the same, and nothing new to you either. :)

    WSL advertises running unmodified Linux ELF64 binaries, which is a neat trick, but it's not Linux, and it's not an OS. It's tools with a support environment provided through Windows libraries and OS services.

    It can be a nice tool to help ease the discomfort if you are forced to live on Windows, but if you are, it's unlikely this WSL environment would be any more acceptable to Windows developers or operations staff than Cygwin was. Native Windows tools would be mandated in the end.

    What are the differences between windows bash and cygwin?
    https://askubuntu.com/questions/813848/what-are-the-differences-between-windows-bash-and-cygwin

    "Cygwin is a great tool if you want to live entirely in Windows and want to drive/automate Windows tasks with bash scripts. However, Cygwin is unable to run unmodified Linux binaries.

    That's where WSL steps in:

    The Windows Subsystem for Linux (WSL), is a new layer of the Windows kernel which aims to provide a high degree of compatibility with the Linux kernel ABI. This allows native, unmodified, Linux ELF64 binaries to run on WSL.

    This is how WSL can run a genuine Ubuntu user-land distro, and any packages you download from apt-get, or .deb packages from elsewhere, without any changes.

    The point of WSL is to enable developers working on Windows to be able to run many of the tools, and to work on many projects, which depend on Linux binaries, features, behaviors, filesystem layout, process model, etc.

    While WSL is still early in its implementation, we're working hard to improve the breadth and depth of our syscall implementations to steadily improve WSL's ability to run an ever larger set of tools, and support a rapidly growing number of Ruby, Java, node, etc. packages and projects.

    Update: 2017-09-07
    Since writing the above, we've shipped Windows 10 Creators Update which MASSIVELY improves WSL's compatibility with MANY of the tools you'll want/need to run.

    Development has also continued unabated and we've been shipping Win10 Insiders builds over the last few months on the way to the Fall Creators Update (FCU) shipping in Oct 2017.

    In FCU, we're adding the ability to install and run more than one distro side-by-side: Ubuntu, openSUSE, and SLES are currently available, with Fedora and others on the way. WSL also now supports USB-serial comms, and mounting of USB-storage and network shares, along with further improvements to our syscalls which improves compatibility with more tools."
    • I've been a cygwin user for years. WSL is a fantastic idea that mostly runs well... however at this stage it's file access speed is dog slow. I'll say prohibitively slow. Doing even medium sized operations with something like GIT take in the order of 30+ seconds versus sub second on Cygwin. Hopefully they'll get to fixing that. – Damien Sawyer Jan 5 '17 at 10:30
    • Disk perf is a known issue: We're working on some perf improvements for Win10 CU, with more substantial improvements coming later in 2017. – Rich Turner Jan 6 '17 at 21:08
    • Fantastic. Can't wait. It's going to be a great product :)Damien Sawyer Jan 7 '17 at 7:41
    • I am still waiting for usb devices support, that is the one thing that is a big miss for me. – Martijn van WezelJun 10 '17 at 10:58
    • @DamienSawyer it's been over 6 months. Have your speed complaints been lessened or are they still the same? – WinEunuuchs2Unix Sep 5 '17 at 23:32
    • @RichTurner You write as if you are an MS insider? If so can you comment on my answer below about what version of Windows is required to install WSL? – WinEunuuchs2Unix Sep 5 '17 at 23:34
    • @WinEunuuchs2Unix - I haven't noticed / heard of any improvements. Mind you, I haven't really been using it, instead just sticking with Cygwin (and Docker containers running bash). I figure that, if / when it improves there'll be an announcement in the tech press and I'll give it another shot then. – Damien Sawyer Sep 5 '17 at 23:37
    • If I ever get Windows 10 64-bit I'll do some performance studies and try to remember to post back an answer on this thread. – WinEunuuchs2Unix Sep 6 '17 at 1:01
    • @WinEunuuchs2Unix - I am the PM for WSL & Windows Console. Follow me at twitter.com/richturn_msRich Turner Sep 7 '17 at 19:20
    • WSL's disk perf isn't yet where we want it. We're working on improving things in future releases. For a perf comparison vs. native Linux on same tin, see Phoronix's awesome testing: phoronix.com/…Rich TurnerSep 7 '17 at 19:21
    • @MartijnvanWezel - Take a look at our recent insiders builds: We now support USB-serial comms :)Rich Turner Sep 7 '17 at 19:30
    • @RichTurner Unfortunately I gave up twitter 3 or 4 years ago and facebook 6 or 7 years ago. But I'm happy to see you around here keeping the Ubuntu community informed. Most developers shy away from public forums. – WinEunuuchs2Unix Sep 7 '17 at 23:20
    • @WinEunuuchs2Unix Sad to hear: While Twitter can be a bit ... ahem ... distracting sometimes, following those that you're interested in and respect will at least help keep you up to date with stuff that often moves so fast it's tough to document! ;) Also keep an eye on our blog at blogs.msdn.microsoft.com/commandlinewhere I tend to announce significant features and share cool WSL/Console related info. – Rich Turner Sep 9 '17 at 20:02
    • @RichTurner Thanks for your blog link. I added it to my bash bookmark bar. Twitter distractions should be ignored but unfortunately I'm the kind that chance down incorrect facts and try to point out the truth. Such a futile effort in that wild west environment. Twas best to escape the battle fields. – WinEunuuchs2Unix Sep 9 '17 at 20:35
    • @RichTurner then I will run the update :DMartijn van Wezel Sep 12 '17 at 10:13
    • I've spent the last 24 hours binge watching Channel 9 and other msdn sponsored videos. I've ordered a new Win 10 laptop and am keen on installing WSL along with 3rd party x-windows apps to port over all my 1 year of bash work. Q: October is here and I can't find a release date for Fall Creators update? – WinEunuuchs2Unix Oct 7 '17 at 18:48
    • As per our blog post from last week (blogs.msdn.microsoft.com/commandline/2017/10/11/…), FCU starts shipping tomorrow! – Rich Turner Oct 16 '17 at 22:45
    Deprecating the name "Bash on Windows"
    "Originally, the name "Windows Subsystem for Linux" generally referred to the Windows kernel infrastructure that runs Linux binaries. We wanted to convey what this meant from and end-user-experience, so, we referred to the end-user feature as "Bash on Ubuntu on Windows", or more simply "Bash on Windows".

    While this naming-scheme has helped us convey at least the essence of what WSL delivers as a feature, "Bash on Windows" doesn't really describe what WSL is and does, and doesn't make sense now that more distros are coming aboard.

    So, moving forward, we'll no longer be using the feature name "Bash on [Ubuntu on] Windows"!

    Instead, we'll use "Windows Subsystem for Linux" (WSL) to refer to the Microsoft-side of the technology stack, including the kernel and Windows tools that enable Linux binaries to run on Windows. The distros will simply be known by their own names - Ubuntu, openSUSE, SUSE Linux Enterprise Server, etc.

    So, in future, conversations will go something like: "Linux runs really well on Windows/WSL", or "I run Ubuntu on WSL", or "have you tried openSUSE on WSL". We think you'll agree this is simpler, cleaner, and requires FAR less talking and typing."
    https://blogs.msdn.microsoft.com/co...ew-in-wsl-in-windows-10-fall-creators-update/
     
    Last edited: Mar 6, 2018
    Vasudev likes this.
  5. ratinox

    ratinox Notebook Deity

    Reputations:
    119
    Messages:
    1,047
    Likes Received:
    516
    Trophy Points:
    131
    There is no recompilation like Cygwin or GnuWin32. WSL runs native ELF64 binaries, and the packages these install are the same packages you would get when installing Ubuntu or Debian or SuSE or whatever on bare metal.

    You are correct about them not being Linux distros or Linux operating systems but for a wrong reason: there is no Linux code in WSL and the subsystem does not use a Linux kernel in any way. Which makes "Windows Subsystem for Linux" a misnomer (an argument could be made for calling it "GNU/ntoskrnl" or "GNU/NT"). Nor does it use the Linux program loader. The whole is something like WINE running non-native executables directly.

    This is not necessarily true. Plenty of things which don't work well with Cygwin and have historically needed VMs work perfectly well under WSL. My most recent experience is with Ansible which has never worked well (or at all) with Cygwin. Works flawlessly under WSL and it's much faster than running it in a VM.
     
  6. Starlight5

    Starlight5 Yes, I'm a cat. What else is there to say, really?

    Reputations:
    826
    Messages:
    3,230
    Likes Received:
    1,643
    Trophy Points:
    231
    Finally! Tired of Ubuntu, pure Debian and Kali are my best friends. What is the best X-server for Windows atm, VcXsrv?
     
  7. ratinox

    ratinox Notebook Deity

    Reputations:
    119
    Messages:
    1,047
    Likes Received:
    516
    Trophy Points:
    131
    xming, Cygwin/X, VcXsrv

    Don't use xming. The maintainer took his fork private in 2007. While legal, it means that upstream Cygwin/X and X.org don't necessarily receive improvements he's made in his fork. Since then 15 vulnerabilities in X.org have been disclosed including remotely exploitable code execution and denial of service vulnerabilities which have not been fixed in the final open release. Don't use xming.

    So, Cygwin/X or VcXsrv.

    VcXsrv has the benefit of being a fully native Windows application. No POSIX compatibility layer so it probably runs slightly better/faster than Cygwin/X. On the other hand, it's a set of patches to X.org which is a maintenance layer which may leave you with delays in updates and you really don't want that with your X server.

    Cygwin/X is compiled directly from the X.org sources with GCC and no changes. That's a big win for long-term security and reliability. On the other hand, it requires Cygwin and its overhead, and it's more effort to install.

    I'd say it's a coin flip but I'm already comfortable with installing Cygwin/X. Try both and see which of the two you prefer.
     
    Mr.Koala and Starlight5 like this.