microsoft / WSL

Issues found on WSL
https://docs.microsoft.com/windows/wsl
MIT License
17.45k stars 822 forks source link

When I reinstall my win10 2016 LTSB, bash can not install #1281

Closed guijianchou closed 8 years ago

guijianchou commented 8 years ago

OS: WIn10 Enterprise 2016 LTSB(Version 10.0.14393 with all update until 10/27/2016 12:25PM PST) Settings: add features "windows subsystem for Linux", open "Developer Mode" Bugs: When I type in cmd the command "bash",here is the results

Microsoft Windows Version 10.0.14393 2016 Microsoft Corporation. All rights reserved.

C:\Users\falsemeet>bash -- Beta feature -- This will install Ubuntu on Windows, distributed by Canonical and licensed under its terms available here: https://aka.ms/uowterms

The app that you are trying to run is not supported on this version of Windows.

fpqc commented 8 years ago

LTSB probably doesn't enable it because it's beta.

guijianchou commented 8 years ago

@fpqc Thx anyway. But I have used the bash for several month, only this time it will not install. Then I will try to reinstall win 10, get bash before update

fpqc commented 8 years ago

Oh, no idea then. I guess the devs might be able to help you.

dethoma commented 8 years ago

Windows 10 LTSB SKUs don't support running WSL. This was intentionally done since LTSB SKUs have a much longer support contract and WSL is still in Beta.

KyleSanderson commented 8 years ago

@dethoma This is a behaviour change, as Bash did previously run on LTSB 2016. Any tips as to which KB we need to revert to quell this regression? I'm trying to use minicom as there is no terminal emulator left on Windows...

fpqc commented 8 years ago

@KyleSanderson, official MS line is that WSL was included in LTSB by accident, and they don't want to be responsible for supporting the unfinished versio that was released in July for the next 10yrs (or whatever LTSB support terms are) with security and bug fixes. Same reason why it isn't in Server 2016.

KyleSanderson commented 8 years ago

@fpqc This is why my organization changed to LTSB from Windows 7 with mingw. I'm a quarter way through my rollout with SCCM.

fpqc commented 8 years ago

@KyleSanderson Talk to your organization's MS contact/representative/partner. It's not up to the WSL devs to make these decisions, I think, and there is no guarantee that a future KB won't break things.

KyleSanderson commented 8 years ago

@fpqc LTSB exists for ATM machines and other platforms. Breaking an entire subsystem 5 months after shipping, with this feature being present, available, and in-use on the retail DVD is completely unacceptable.

aseering commented 8 years ago

@KyleSanderson -- I don't disagree. But what is the value in pointing that out here?

brezoi commented 7 years ago

Seems to me the same sort of people who use LTSB would be the most likely to want a bash shell on their computer. I fell into the same switcheroo and am disappointed they decided to do the retract. I mean, the user of the computer has to enable developer mode to install it, seems this would squash the issue with bug fixes. It's Linux for goodness sake, cd, ls, awk, sed, tr.... don't change that often..... and it's from Canonical/Microsoft so most bugfixes/updates would be an apt-get update not a MS update.

aseering commented 7 years ago

@brezoi -- for what it's worth, Windows's Linux emulation layer is itself not yet complete. There are a lot of pieces of Linux functionality that don't work or that don't work properly in the Anniversary update. (Just take a look through this bugtracker :-) ) Fixing those sorts of issues does require a MS update.

The WSL team has been releasing substantial functionality updates roughly once per week (via Windows Insider builds) since its initial release last April. That pace looks set to continue indefinitely, certainly to and through the next Windows release. LTSB is all about "no functionality changes". So, a bit of a culture-clash there...

bitcrazed commented 7 years ago

@KyleSanderson Thanks for your feedback, however, it's important to note the point of LTSB and the current state of the Windows Subsystem for Linux (WSL):

The LTSB - Long Term Servicing Branch is a Windows 10 branch that is only updated once every couple of years.

In Windows 10 Anniversary Update (AU), WSL is a beta feature: The reason for this was well documented, but to summarize: We knew we were not yet done but didn't wan to withhold this feature from our enthusiastic early-adopters.

WSL remains under very active development, resulting in significant improvements being delivered continually through the Insider builds being released (almost) weekly on the path to Windows 10 Creator Update (CU) due spring 2017.

These two situations are clearly incompatible: We cannot ship a partially-completed OS feature that is under active development and rapid improvement in an OS release that remains largely unchanged for 2+ years at a time.

@brezoi While updates to the Linux tools themselves is indeed handled via 'apt-get update', don't forget that improvements to the Linux-compatible kernel those tools run on (WSL) are being released every 2-3 weeks, adding many capabiltiies that were missing from its previous release.

In the last 3 Insider releases alone, we've seen support for network connection enumeration, filesystem change notifications, and the ability to invoke Windows apps from within Bash. Had we shipped Bash/WSL in LTSB, you'd have had to wait ~2+ years before you'd enjoy these (and many up-coming) improvements.

In short, if you want to take advantage of rapidly improving new features in Windows, LTSB probably isn't the right release vehicle for you.

midix commented 7 years ago

But what about those who want to enjoy overall stability and update policy of LTSB and still be able to use just one or two new features? Nobody is asking Microsoft to ship partially-completed OS features to LTSB; however. if some users want to try something out at their own risk, it would be great to have that option. Of course, safest (and more cumbersome) way would be to install another non-LTSB edition of Windows on the same machine just for this purpose.

crazyi commented 7 years ago

I totally agreed with @midix ,whether or not to use the WSL on LTSB should be the choice of the user. By the way, I think most of the users who try WSL on LTSB will exactly know what risk they maybe take, so I hope there will be an alternative way and not force me to reinstall my virtual machine.

fpqc commented 7 years ago

@crazyi I dunno why you would really want to use LTSB, isn't it like the time-out corner for corporates who don't renew their software assurance?

KyleSanderson commented 7 years ago

@fpqc No, LTSB is absolutely required by any serious Enterprise to function. Microsoft continues to run malicious campaigns against production machines. Why are you trolling this repository?

@bitcrazed Thanks, however the timeframe from MS for LTSB is to pin a yearly release... There's a project from the Linux kernel that provides Long Term Support for various kernel distros. This, ironically, is what Microsoft has copied exactly. There's no need for any new features, even adding something like inotify, which is absolutely desired, is not something that needs to be backported. Like LTSB, if the kernel receives security patchs, like LTS kernels, that's all that needs to be done... Anything else is absolute noise.

aseering commented 7 years ago

@KyleSanderson -- I get the impression that you are an LTSB user but not an LTSB customer. Am I correct? (The distinction being, do you write the check for your company's LTSB license?)

I don't work for Microsoft, but I have worked in enterprise software for long enough to know that what you ask for is expensive. Regardless, what you or I believe doesn't much matter, nor even what any of the Microsoft devs on this bugtracker believe. (You seem to work in Enterprise; how effective would it be if I told you that I was really angry and some other team elsewhere at your company needed to reverse one of its decisions?) What matters is what the LTSB team believes. And they apparently believe that the market is not willing to pay for the size of team that it would take to maintain this feature, backport fixes to the kernel-panics and security issues that it has introduced (several have been discovered so far), backport fixes to at least some other issues (because the people who write those checks don't care about some beta-support details, they care that their 10,000-person organization is blocked because some critical service modification requires a Linux feature that LTSB-WSL doesn't implement), etc.

If you do in fact write your company's LTSB-license check, and if you would in fact be willing to increase your license fee to the tune of allowing Microsoft to hire some new software engineers to work on this, then you should bring that up with your Microsoft sales rep right away.

If not, you can solve this problem by becoming the customer yourself and buying a version of Windows that meets your needs. That may be against your company's policy. I imagine that same policy would, if your management thought about it, take issue with your using beta-level software on your deliberately-stable work machine. I don't think getting mad at Microsoft is the right solution to that problem; I think you should get mad at your managers and escalate your concerns until, one way or another, they get fixed.

KyleSanderson commented 7 years ago

@aseering The edition of Windows is irrelevant to my corporation. I need to buy a workstation with any Microsoft OS and then I can switch versions. This is part of my corporate licencing agreement, and is incredibly popular in the corporate space. So, yes, I do write the checks.

aseering commented 7 years ago

@KyleSanderson -- I don't understand your response. You indicated that LTSB is required for "any serious enterprise". You then indicated that the edition of Windows (which, in this context, presumably means LTSB or otherwise?) is irrelevant to your corporation. Could you clarify? I'm specifically trying to reconcile the appearance that this is simultaneously required and irrelevant.

KyleSanderson commented 7 years ago

@aseering please review Microsoft OS licencing with your certified rep. Any further discussion is in violation of our agreement.

aseering commented 7 years ago

@KyleSanderson -- I obviously can't speak to your specific agreement. But (and I'm sure you know this since, as you say, you're the one writing the check) enterprise sales are very different than personal-license sales (for Windows and for any other product) -- it's a negotiation; there are rules, but they control the rules, which means that you can get what you want if you convince them that they want to sell it to you.

So, I'd encourage you to put your money where your mouth is and go tell your rep to give you what you want. If they say "I can't do that", go get yourself a better rep. If you can't negotiate a price that's mutually acceptable, well, that sucks. That's also a business decision; the people on this forum are all engineers, not business decision-makers, so you would probably have more impact if you reached out to other Microsoft forums or (even better) through other connections in your personal network.

KyleSanderson commented 7 years ago

@aseering it's a business decision to patch LTSB. It is not a business decision to pull WSL because it isn't the best it can be, months after its shipped. The gold master for LTSB still allows you to install WSL, with a hotfix breaking the functionality... Nothing about this is right.

As well to this, as you may or may not know, there are channel reps... you just can't change reps: there's only one.

Again, LTSB has been violated. MS's official line is don't use it, because when their next campaign starts, your machines won't be part of it. It's easier to not even play the game, instead of formatting the entire org every 2 quarters. Are you an enterprise customer?

crazyi commented 7 years ago

@fpqc The reason I use LTSB is that I hate useless modern apps, and I prefer a clean os like window 7. Actually, WSL is the only reason for me to migrate from 7 to 10, and I don't know why microsoft made this terrible decision without any advance notification to the users.

fpqc commented 7 years ago

@crazyi If you have access to pro or enterprise, you can disable cortana and the junk with group policy. LTSB is meant for corporations that don't want updates breaking their proprietary systems and applications and don't want to spend time and resources constantly trying to keep fixing their applications to work with the latest features from Microsoft.

Building your organization's workflow on a half-finished Linux compatibility layer, with no hope of updates for two years, is insane.

aseering commented 7 years ago

@KyleSanderson , to answer your last question directly: No, I am not currently an enterprise customer. In fact, my latest job is not at a traditional enterprise, and I have neither purchased nor used any Windows license in my current professional capacity.

If you want people qualified to address your concern, you're posting in the wrong place :-) This is an engineering forum. Tickets here are marked "Resolved" when the code containing the fix hits the latest Windows Insider Fast Ring build so we can test it. That's clearly not the type of issue you're facing.

You could try posting to the UserVoice. Or, as has been suggested, you can take advantage of the channels that you as an LTSB licenses have access to.

Zhang2Henry commented 7 years ago

Hello, i have the same problem, and i uninstall KB2504637 and then my bash is ok again. have a try.

My os version is 2016 LTSB N

crazyi commented 7 years ago

@Zhang2Henry Hi, I can not find this patch on my 2016 LTSB, is there any difference between 2016 LTSB N and 2016 LTSB?

@fpqc Can you give me a tutorial how to disable cortana and the junk with group policy?

c3h3 commented 7 years ago

@crazyi I used 2016 LTSB and met the same problem too. After my deleting KB3206632, it finally works!

15418539_10211115320617574_8893674577432712290_o 15676094_10211115508502271_3567754893425450257_o 15675744_10211115598584523_7202737203432640765_o 15723758_10211115602224614_5965189359596311132_o

crazyi commented 7 years ago

@c3h3 Hi, thank you for your advice. But I wonder if there is an alternative method? After all this KB3206632 is a security patch.

valnaumov commented 7 years ago

@c3h3 Just when the bash stopped working on my computer, I've hidden the latest update and it was working again until the very next update that again disabled it. I followed your advice and disabled KB3206632, but then was unable to boot with error "inaccessible boot device".

khromov commented 7 years ago

Any updates or workarounds for this aside from removing KB3206632?

khromov commented 7 years ago

Bump!

avindra commented 7 years ago

First, thank you Microsoft for WSL. Its an extremely attractive option to people like me, who were Microsoft users that left that platform for a number of reasons, for Linux.

Reading this thread, I'm gathering that it's difficult to implement WSL in the LTSB branch because it requires kernel-level changes to Windows 10, which are not considered stable enough for LTSB.

However, some users are able to get it working by deleting KB3206632, which indicates that this might be solvable in userspace?

It's confusing because we can't see the code 😄

Can we get an update from Microsoft on what the latest is? Would like to know:

Thank you!

fpqc commented 7 years ago

@avindra The kernel module/driver compatible with the LTSB kernel series is the version from july 2016. They dropped it in order to nip the problem in the bud with their enterprise clients. The worst thing would be if MS had to support security and bugfixes to this beta module for the lifetime of an LTSB deployment (potentially 10 years).

It was left enabled on LTSB only by accident in the first place.

mixflame commented 7 years ago

install linux; problem solved

jonteohr commented 7 years ago

I don't have KB3206632. Is there any way to fix it without KB3206632?

Running (2016 LTSB)

nostromov commented 7 years ago

It's unfortunate, having to virtualize it on older hardware... Anyway, Linux can be run as a Guest system on Oracle VirtualBox & three things are needed for this:

1) https://www.virtualbox.org/wiki/Downloads 2) VirtualBox 5.2.0 Oracle VM VirtualBox Extension Pack (same link as above) & 3) VBoxGuestAdditions_5.2.0.iso @ http://download.virtualbox.org/virtualbox/5.2.0/

(Just up a dir when version changes. :))

KyleSanderson commented 7 years ago

VirtualBox is crapware, use Hyper-V, or pay for VMware Workstation.

nostromov commented 7 years ago

VMware Workstation integrates too deeply with the system, that's why eye don't like it. =)

kartur commented 6 years ago

Any updates when it might come to LTSB?

fpqc commented 6 years ago

@kartur whenever the next LTSB releases, probably late 2018

q587p commented 6 years ago

Is there exist any way to change LTSB to more unstable updates and somehow get bash?

fpqc commented 6 years ago

@q587p You have to upgrade manually from an ISO. I think you may even need to clean install.

delfer commented 6 years ago

@q587p, just use Cygwin. It provides bash, zsh, git, curl, vim, ssh, mosh, scp python and a lot of other gnu/linux utilis