Slashdot Mirror


There's Bugs In The Windows 10 Implementation of Bash (altervista.org)

First-time submitter Big O Notation shares "an honest review about the new Ubuntu Bash" that shipped with the Windows 10 Anniversary Update. While it's still officially beta, most of the commands work as expected, and it includes popular programs like the Pico text editor. Here's some of the review's highlights: Pros: You can also manage and manipulate other files inside your entire Hard Disk, even those outside of your Linux home directory.
Cons: Even if you chmod something properly, when you use ls -l the Bash would not show the correct permissions. [And] if you try to create a Folder in your Linux Home Directory by using the Windows GUI, it would be impossible to read and manage it. Don't try this at home.

Microsoft says they've included the Windows Subsystem for Linux primarily as "a tool for developers -- especially web developers and those who work on or with open source projects." One Scandinavian developer has even tried running X on Bash on Ubuntu on Windows, reporting success running simpler programs like xcalc and xclock, as well as Gnome Control Center and xeditor and SciTE. "Things start to fall apart if you try to get more ambitious, though."

22 of 163 comments (clear)

  1. Slow news day? by Anonymous Coward · · Score: 5, Insightful

    That "review" is tiny and doesn't really tell you much. It doesn't even say what happens if you do mess with the Linux subsystem directories from Windows apart from "it would be impossible to read and manage it". Grats for random guy getting a ton of ad hits on a crappy 5 minute blog post. Woo.

  2. Can't even match Cygwin by Todd+Knarr · · Score: 2, Insightful

    So basically MS's Linux subsystem can't even do the job Cygwin does quite nicely? I think MS ought to go and read the code, learn some lessons and carry it back. It's not like you can't translate Unix permissions to Windows' permissions system and vice-versa, the code's even right there to read.

    1. Re:Can't even match Cygwin by Rosco+P.+Coltrane · · Score: 5, Interesting

      I think MS ought to go and read the code, learn some lessons and carry it back

      They haven't done that in 4 decades. Why would they start now?

      --
      "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    2. Re:Can't even match Cygwin by thegarbz · · Score: 4, Insightful

      That depends on what you call match or what you call quite nicely. By all accounts Microsoft's effort has well and truly blown Cygwin out of the water in terms of both speed and ability to get things running.

      Also if you think Cygwin was feature complete and bug free with version one then you're utterly delusional.

    3. Re:Can't even match Cygwin by thegarbz · · Score: 2

      So does Window's. Also of note is that Ubuntu with full X server runs too.

    4. Re:Can't even match Cygwin by ewibble · · Score: 2

      Not by all accounts at all, there system is more like a VM that you can run linux in.

      for example want to git, go apt-get install git great but if you want to use it outside of the shell install it again for windows.

      cygwin I can run windows executables in it and cygwin executables from windows.

      accessing the linux file system is a bit contrived from windows, some app data directory under the users directory I think

      ping, sudo doesn't work (at least when I tried it)

      For now I will stick to cygwin

    5. Re:Can't even match Cygwin by Darinbob · · Score: 3, Informative

      Cygwin mostly uses a thick compatibility layer that slows things down a lot but makes things really compatible with Unix, such that you need no or minimal effort to get off the shelf unix software to run under it. So it's great in the sense that you get what you expect, but it always feels just a wee bit slow.

    6. Re: Can't even match Cygwin by Billly+Gates · · Score: 3, Informative

      That's a little extreme.

      Cygwin is very outdated and uses translated calls from POSIX to win32 with all the bugs and glory on both platforms combined.

      Last I checked you couldn't run major products. Also what good is it? Everything in Windows is an object, not a text file. You cannot cat your event viewer files nor can you use awk, sed, and grep for WMI on your PC. MS is native and more apps are supported.

      This is 2016. If any geek is stuck on Windows or Linux and need an app on another platform you run a virtual machine. Let Linux be Linux and Windows be Windows. Win 10 has Hyper-V and virtual box and qemu is free on Linux.

    7. Re:Can't even match Cygwin by Ash-Fox · · Score: 4, Insightful

      So basically MS's Linux subsystem can't even do the job Cygwin does quite nicely?

      Cygwin can't run native Ubuntu elf executables which is wehat the Linux subsystem does.

      I think MS ought to go and read the code, learn some lessons and carry it back.

      How would that help? Cygwin doesn't execute native ELF executables to begin with.

      It's not like you can't translate Unix permissions to Windows' permissions system and vice-versa, the code's even right there to read.

      Cygwin depends on extended meta attributes though rather than just translating alone?

      --
      Change is certain; progress is not obligatory.
    8. Re:Can't even match Cygwin by donaldm · · Score: 2

      I think MS ought to go and read the code, learn some lessons and carry it back

      They haven't done that in 4 decades. Why would they start now?

      I think Microsoft's attitude of "If it ain't invented here" is a big stumbling block. Afterall Cygwin has been around since 1995 and must have been doing something right.

      --
      There ain't no such thing as proprietary standards only proprietary formats. Standards are by definition open.
    9. Re:Can't even match Cygwin by Todd+Knarr · · Score: 2

      There's no one single way, but there are several much more useful ways such that files created through Windows have the expected permissions in Cygwin (user read/write) and files created through Cygwin are accessible in Windows (user can read and write them). There's no excuse for the Linux subsystem not being able to do something reasonable. And yes I've dealt with Cygwin files in Windows and Windows files in Cygwin. It works because Cygwin understands Windows ACLs (see POSIX accounts, permission, and security). Amusingly the mapping system Cygwin uses was based on Microsoft's own mapping system from Services for Unix. So not only does Microsoft have the code for an example of a working method available (Cygwin's code), they wrote the code for a working method (SFU).

  3. cygwin by phantomfive · · Score: 4, Informative

    For now, it's still better to use Cygwin.

    --
    "First they came for the slanderers and i said nothing."
    1. Re:cygwin by Gr8Apes · · Score: 2

      For now, it's still better to use any *nix distribution, even a systemd one.

      --
      The cesspool just got a check and balance.
  4. It's new by wjcofkc · · Score: 2

    MS has stated that this is very new and very buggy but that they are working on it. It is not yet for public consumption. MS has been embracing Open source minus the extinguish part for some time now. Linux (okay so not the kernel but still) on Windows outside of a virtual machine is everything a lot of people have wanted but never thought would happen. Go watch some of the MS demo videos. As a Linux user since 1996, I can attest that there is absolutely nothing that will make the broader Linux crowd happy. Hence, most of the Linux crowd are not actual techies.

    --
    Brought to you by Carl's Junior.
  5. Is this article serious? by Anonymous Coward · · Score: 4, Informative

    I have no doubt that the integration between Windows and the Ubuntu environment is bad, particularly with regards to the permissions. The POSIX vs. Windows permissions models are most likely to interact badly. There isn't a lossless mapping between the two, so something is bound to be lost. That being said, this article is absolutely horrendous.

    Example:

    2. “sudo su” VS Windows

    This useful commands doesn’t work in the Shell and if you try it you will, at first receive a command line error, and second you have to restart your terminal because the command “cd” starts to work in a random way causing path problem.

    Well, no kidding. First off, anyone who uses ‘sudo su’ instead of ‘sudo -i’ or ‘sudo bash’ should cease writing technical articles. Then there is no justification for the expectation that both sudo and su will somehow work as expected. That's the very thing I'm not expecting to operate the way I'm used to, since it is not running on a Unix-like system.

    But the absolutely best part is that the text of the whole article is completely devoid of any useful information. The quote above has the details and the grammar of the guy who calls your technical support guy and tells “my server don't work,” and refuses to give you any more details until you accidentally discover they don't have an account at your company, they don't have a server but a Facebook page, and their internet connection is presently not working.

    As I would never used Ubuntu Bash for Windows, I would have been curious to see what permissions would ‘ls -l’ see after a chmod. That detail is somehow missing from the “article”, which is a series of complaints and vain praises like “grep works correctly”. Yay.

    1. Re: Is this article serious? by backslashdot · · Score: 2

      Chill out. Dude wrote a useful and informational article. Offer some constructive criticism but no need to sudo bash him by getting on his case.

  6. Yes? by fuzzyfuzzyfungus · · Score: 2

    It doesn't seem like much of a surprise that starting a fight between POSIX and NT ACLs is going to end badly; but this 'review' fails pretty dramatically at answering the question of how much of a problem this is.

    If you can't, in practice, let the Linux side touch the Windows side, or vice versa, lest ugly and inscrutable things happen, then you might as well just run a VM. If you can actually do a variety of interesting things across systems, so long as you avoid a few edge cases, that is potentially more useful.

    1. Re:Yes? by JanneM · · Score: 3, Funny

      I don't see the problem. "There is bugs. And here is elmer. And over there is daffy." Seems grammatically fine to me.

      --
      Trust the Computer. The Computer is your friend.
  7. It's a beta by Kethinov · · Score: 2

    There are bugs in a beta? What a shock!

    --
    You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
  8. Beta software has bugs. Film at 11 by PhunkySchtuff · · Score: 2

    The summary even states that Microsoft still officially consider it beta software. This is not even a v1.0 release.
    What we are seeing here however is that even a large ship such as Microsoft can turn very slowly. This would have been unthinkable even 5 years ago - just think what it will be like in another 5 years...

  9. Whatever it is, it's out and not "Linux" by jbn-o · · Score: 2

    MS has stated that this is very new and very buggy but that they are working on it. It is not yet for public consumption.

    Apparently Microsoft released it to the public.

    MS has been embracing Open source minus the extinguish part for some time now.

    Time will tell.

    Linux (okay so not the kernel but still) on Windows outside of a virtual machine is everything a lot of people have wanted but never thought would happen.

    This tends to confirm the view that the GNU/Linux misnaming as "Linux" is really about denying credit where credit is due (particularly noteworthy amongst people who are sticklers for technical accuracy and in need of a clearer distinction for what one has). This project includes some parts of a system but without the Linux kernel and yet you're still giving that project credit. What Microsoft has released might be a GNU/kWindows (akin in naming to Debian GNU/kFreeBSD, meaning GNU running atop the kernel of some other system—Microsoft Windows or FreeBSD, respectively) but whatever it is, it is certainly not "Linux" and it contains no Linux kernel code. Also, Cygwin has delivered some variant of comparable functionality for years.

  10. There is no reason to try to do real things in it by drinkypoo · · Score: 2

    When you can simply install actual proper Linux in a free VM like VMware Player or Virtualbox, there's really no reason to mess around with this stuff unless you're actually using it specifically for what Microsoft suggests you should use it for. Cygwin is better for just providing a Unixlike environment on Windows if that's what you want, and a VM is still better for compatibility if that's what you need.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"