You seem to suffer the same problem the marketing hacks at Microsoft have: you aren't seeing past the current profit model.
Lots of money is being made on Linux. Linux is a value-addition prospect more than a product. IBM and HP make money by selling hardware with Linux installed, not by trying to sell Linux itself, and that's a good approach to take. Red Hat is making money by selling service/support contracts, which IBM also offers, which is a good approach to take. Just because Linux itself can be had for free, though, you assume there's no money to be made.
Furthermore, the beauty of the Linux community isn't some flower-child love-in. If you think it's that sort of fad, soon to pass, you haven't sat in on a "religious" war over distros or vi vs. emacs. The Linux community is full of people who want good software, and are willing to work to get it, and people who want Linux kernel development on their resumes, and people who want to be conversant in the way stuff works so they'll be better at their jobs, and people who simply use it as a vehicle for social interaction (yes, some people really do that). There isn't a whole lot of altruism in the Linux (and more general open source) community. Don't think that just because Linux is free (as in speech) that the people who work on it aren't getting anything out of it.
I've written open source code for entirely selfish reasons in the past, and I'll continue to do so in the future. I certainly don't do it (solely) for the good of humanity.
Keep Up with TechRepublic