You have to read GPL. If you do not distribute binaries, you don't have to distribute source either. This allows to use GPLed code on your private servers/installations/whatever without giving back changes. If this an issue for developers, they will be better with AGPL license, which handles this use case and requires to release source in such cases as well. For me it looks like if it's not a big deal at the moment and usual GPL works quite well for Linux.
In general GPL does it quite inconvenient or hard for most business models to exist without releasing source. This includes embedded, general purpose OSes (servers, desktops, etc) and so on. And Linux has seriously outperformed BSD-based competitors on these markets.
You see, BSDs are 10 years older. So they had all chances to win. However, corporations behind them preferred not to disclose their improvements. Single company wins. Everyone else loses. Upstream project as whole getting stuck without resources and improvements. Then competitor appears and outruns it, using collaboration of members to improve it's development speed. So Linux does not faces lack of resources. If someone improves something and distributes it, they have to publish source as well. There are ways to workaround but risky, costly and dubious. And it would certainly make you unwelcome for kernel developers to say the least (do you remember "f...k you, Nvidia"?

). So you will be on your own, not a part of process. This implies seriously increased development cost and so on.
In short, GPL makes it very inconvenient to be parasite and far more convenient to be part of process. BSD license does not cares so at the end of day BSD systems are getting eaten by parasites who takes the code and never returns anything.