The biggest problem linux faces is business.
Most businesses wont touch free software because of the lack of liability associated with it.
...people...over estimate the scale that it's deployment is at. If you then compare this to the reality; many many more machines have windows versions on. Its hard to admit this for a geek...its harder to realise that its entirely likely this won't change.