Why Do Most Servers Run Linux? Surprising Answers Explained
The article compiles several Zhihu contributors' explanations—covering historical Windows dominance, IIS limitations, cost differences, ecosystem strength, container support, and open‑source politics—to show why Linux has become the default operating system for modern servers.
Early Windows‑Server era
About twenty years ago the stack Windows Server + IIS + ASP + Access was popular for small‑business sites because it required little configuration. Example sites included the Chinese forum “动网论坛” and its later ASP.NET‑based successors “动网新闻” and “动易”. Virtual hosts on many Windows hosting providers shared a single root directory, ignored MIME types, and exposed database files such as data.mdb. Accessing http://example.com/data.mdb downloaded the file, revealing plaintext passwords in the user table.
IIS’s decline
IIS initially attracted novice administrators with built‑in FTP, ASP support and a graphical configuration interface. Around 2000 the web ecosystem diversified (PHP, Ruby, etc.). IIS’s poor language support, tight coupling to ASP.NET, and complex configuration made it difficult to tune. Lightweight servers built on poll and epoll —Apache, Nginx and Lighttpd—delivered several times higher concurrent‑connection performance. Consequently, most web‑server workloads migrated to Linux.
Practical game‑server experience
A user attempted to run a “帕鲁” (Paru) game server on Windows Server. The Windows setup required additional Visual C++ and DirectX runtimes and proved cumbersome. Switching to Ubuntu allowed a simple installation: apt install steamcmd followed by executing server.sh. For lightweight scenarios such as small Minecraft servers, the memory overhead of Windows (e.g., 4 CPU × 8 GB) was prohibitive, whereas Linux comfortably ran on 2 CPU × 2 GB or 2 CPU × 4 GB configurations.
Licensing cost
Windows Server licensing is charged per CPU core; a typical enterprise server costs around ¥100,000, while Linux distributions are free.
Linux’s technical advantages
Ecosystem : A large, active community drives rapid adoption of languages such as Java, Go and Node.js, whereas Windows entered the server‑side market later.
Lightweight distributions : Distros like Alpine run in minimal space, enabling efficient containerization.
Container support : Linux’s native container technologies (Docker, LXC) are mature and widely used, unlike the more limited options on Windows or macOS.
Microsoft vs. open source
Historically Microsoft opposed open‑source development. A well‑known letter from Bill Gates criticized hobbyists who contributed unpaid code, reinforcing a paid‑software model. This stance contrasted with the open‑source movement that grew in academia and the broader community, accelerating Linux’s adoption. Over time Microsoft shifted its position and now embraces open source.
Misattributing cause and effect
The “Matthew effect”—the rich get richer—explains part of Linux’s dominance. Early adoption of the free, Unix‑compatible Linux kernel in the early 1990s created a self‑reinforcing ecosystem. Skills acquired on Linux (e.g., Red Hat certification) opened more job opportunities, while Windows‑focused training offered fewer server‑maintenance roles.
Linux Tech Enthusiast
Focused on sharing practical Linux technology content, covering Linux fundamentals, applications, tools, as well as databases, operating systems, network security, and other technical knowledge.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
