How do companies that provide free (as in beer) software make money? I'm thinking of things like Linux distros, as some even provide free overseas shipping!
Red Hat is worth over a billion dollars these days. Yes, they make money. By doing consulting, offering support, providing training etc.
That said, there's not a lot of open source companies that actually make money. Canonical certainly doesn't (yet). Novell is in a patch of bad weather. Mandriva is always in a patch of bad weather. Zarafa is relatively new and small.
On the other hand, ask yourself whether there needs to be a single company offering something. Companies like IBM, Oracle, Red Hat, Novell, Intel, AMD, Fujitsu, Dell, HP, QLogic and a whole lot of others work together on the kernel. They do not all make money solely on 'selling' that kernel or support to it, but they sure as hell make money.
The difference between (companies like) Microsoft and (companies like) Novell or Red Hat is that the latter are able to provide value on top of a commodity, whereas (companies like) Microsoft can only make money by making sure that what they are selling never becomes a commodity. That's why Microsoft is scared shitless about open standards. Same goes for Apple. Open standards are not cool if your business is to tie people to your product. Open standards are very cool if you can provide something (support, consulting) on top of an open, standardized commodity platform.
That is how it works :)
In short, distro's like Ubuntu make money by providing companies 24/7 support packages.
So now the money that usually spent on software can now go for the guy keeping the software running... which in this case is Canonical...