Linux和Windows是两种操作系统,对于服务器运维的人来说,在为服务器选择操作系统系统的时候,是选择Linux还是Windows是让人困惑的事?

从用户群来说Linux是一个以开发者为中心的操作系统,而windows是以消费者为中心的操作系统,这也是两个操作系统作为根本的区别。简单来讲,两个系统的选择就是看你是开发用还是作为消费者使用。

具体到Linux与Windows的优缺点,可以总结为一下几点

1.Linux可以看到源代码,windows不行。

这一点直接导致的结果就是在特殊应用的场合可以自行剪裁和定制所需的内核模块,这对于高级系统内核管理优化和驱动程序的开发相当有利,另外也因为代码可见,不用担心恶意功能或者后门,对于军政企的使用比较有利。另外在系统出现严重问题的时候,可以自行修改代码或者接个几k的patch就能编译然后使用,而windows你得等微软的补丁。

2、Linux命令行功能强大,可以做任何事情,windows也有命令行,但是属于附属品。

命令行是Linux的根本,甚至你对某些命令不满意,你也可以自己修改或者编个自己的命令出来。命令行的好处是可重复。想要知道命令行的具体是什么你可以访问老男孩教育。如果你想要告诉别人一件事怎么做,一个命令行发过去就可以,想要再做一遍之前做过的一件事,调出历史命令记录重新执行一下就行。很多要定时做的事情写成脚本设个crontab定时,就完事儿。另外这样也可以保证你用一样的命令行,做的是一样的事情。

3、开放源码和高度可定制

开放源码的初衷,不是为了自由而是为了定制。AT&T UNIX从来就是有版权的,但是源代码仍然可用,这是为了让用户能够根据需要,去修改它。Linux社区所赞赏的软件和系统,多半遵循同样的规则——它应该能够适应不同用户的不同环境,能够轻易的改变自己的行为,能够轻松的与不同环境整合。与其假设别人和你的需求一致,不如给予它们定制系统的自由。

4、去中心化

分散的软件开发,也注定了系统的接口和形式不统一——因为大家都喜欢发明轮子。而每个人的轮子或多或少更适合自己和社区,而非所有人,而在Linux的环境下又没有人能强迫所有人用自己的轮子(除了Kernel开发者,但其实很多distro对kernel也有patch),所以与其制定一种实践,Linux更多的让用户去选择生活的方式。
你会看到Linux生态环境中有大量的distro,不同的distro有不同的init方式,不同的软件包管理器和安装策略;每个人习惯使用不同的VCS,不同的shell,不同的编辑器,都就是更多的选择的哲学的体现。

5、Linux是基于网络的,诞生于网络。

远程连接上SSH,你就可以轻松操控远在千里之外的Linux服务器,只要有相应的权限,几乎和坐在物理机面前没有区别,哪怕网速很糟糕,实际只是一些加密的字符在传送,需要的带宽很小。 

看了这些,应该对Linux和Windows有了新的认识了吧,所以,当你是作为开发者而非消费者使用操作系统的时候,你会更加喜欢Linux,而现今Linux运维也当下比较受欢迎的职业。想在服务器运维有所发展,选择Linux还是很不错的。