系统管理员都应该知道的系统常识

原创
系统 Linux
许多刚进行系统维护的新人或正在学习系统的同学可能很迷惘,现在这么多服务器版本,该如何学习和深入呢?是不是只学习Windows系列的系统即可,而不管Linux/Unix呢?本文作者是从事多年系统管理员工作的资深人士,他的一些建议会对你有所启发。

作者简介:余洪春(抚琴煮酒),英文名Andrew.Yu,外企高级Linux/Unix系统管理员、项目实施工程师、红帽RHCE讲师,擅长负载均衡高可用和中小型证券类和商务网站架,目前专注于网站架构研究及网络安全。个人博客:http://hi.baidu.com/yuhongchun027

本文作者更多优秀文章推荐:明明白白你的Linux服务器

许多刚进行系统维护的新人或正在学习系统的同学可能很迷惘,现在这么多服务器版本,该如何学习和深入呢?是不是只学习Windows系列的系统即可,而不管Linux/Unix呢?或者,只学习Linux/Unix即可而不管Win系列呢?看完本文,可能你对此职业有个大概了解,说不定从中也能学到些东西。

附注:以下系统如无特殊说明,均指64位。

首先纠正下系统管理员(System Admin)容易走进的三个误区:

一、究竟Windows作服务器好还是Linux/Unix服务器好?

我以前同事爱争论这个问题,老实话,完全没必要。对于你的公司而言,Windows2K好,就用Windows2K;Linux好就用Linux,谁安全和高效就用谁;当然了,不建议用盗版。如果是作AD或桌面机系统,想到不想,用Windows2003和Windows XP吧,当然你想耍酷,也可以用ubuntu,但你要保证你能满足你的办公需求。我系统组的同事用的是Win7,算是潮人了;抚琴煮酒虽然一直是玩Linux/Unix,但一直用的是英文正版Windows xp,用的远程是pietty或xshell,我的老HP 6210跑不动Win7,就不赶这个潮流了。

二、系统管理员应该了解网络知识,许多System Admin容易忽视这个问题。

虽然在大型公司,系统管理员/网络管理员是明显二个不同的工种,但许多公司工作,例如网站维护和开发环境布署都需要双方协同全作,缺一不可。我觉得作为System Admin,应该掌握和了解市场上的防火墙的性能和特点,一些简单的交换机和路由机的配置及iptables或ipfw及VPN相关知识。网络你可以不精通,但一定要熟悉和了解,如果你的网站出了问题,你要第一时间判断出是网络还是系统的问题,然后针对性的排障。

三、系统管理员应了解开发编程。

先不说Windows下的批处理和Linux下的shell编程,这应该是系统管理员必须掌握的基本功吧,我说的是PHP或java,还有C语言,系统管理员是管理应用层的东西,了解这些编程的知识对自己还是相当有好处,可以为系统架构师作为铺垫和基础。开发是应用最底层的东西,我认识的系统总监无一不是玩code出身。如果有精力的小伙,可适当在这些方面加强学习,我比较了解的语言是PHP,这个入门也比较简单的。

首先说下Win系列,我玩这个是2001年大学毕业,当时分配到某大型国企信息技术部,负责全国各地的销售数据及库存数据,当时值守的Windows2000服务器,说老实话,这东东放内网用还可以,但放公网上如果忘记打补丁就是悲剧了,冲击波和震荡波会搞得你崩溃;所以后来每次上新服务器的新系统时,我们会按照一个补丁表一个个老老实实打补丁,这种情况一直到以后用了Windows2003才有所改善。说老实话,Windows2003是我非常喜欢的一个系统,包括现在作为域控及作Exchange2007服务器,我都推荐它(不是太喜欢Windows2008哈,这个比较臃肿),此外,在Windows2003上安装SQL Server2008,感觉效果也是非常稳定的。

抚琴煮酒比较喜欢在Windows2003上布署VMware GSX Server给开发用,效果那是相当的好,呵呵。以前还喜欢在Windows2003上研究ISA和文件服务器,不过自从有了Linux的iptables和samba,基本就转到linux下了,呵呵。当然了,Windows2003我也推荐用正版,大型企业是不会在乎这个费用的,如果有版权之争就麻烦了。相比32位的Windows系统,64位的Windows 2003数据中心版最多可支持64路处理器,而32位版本只支持32路处理器。内存支持方面的提高也颇为显著,32位的Windows 2003最多也只能支持64GB的内存,但是64位的大部分版本将可支持至1TB。也许现在大部分个人用户都还没有用上超过1G的内存,但是在高阶运算领域,扩展能力是32位系统无法被应用的主要原因之一。

在包括系统模拟、基因运算等很多大运算量任务中,一个运算进程可能就要占用成G的内存,而每一次运算任务都会产生十几个G的数据。所以我的生产环境上的Windows2003基本都是64位的,Windows2003不难掌握,建议大家都熟练的掌握它吧。

有关Linux的常识

再说下Linux,严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套件(比如OpenOffice.org),等等。

Linux内核最初是为英特尔386微处理器设计的。现在Linux内核支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备。

在开始的时候,Linux只是个人狂热爱好的一种产物。但是现在,Linux已经成为了一种受到广泛关注和支持的一种操作系统。包括IBM和惠普在内的一些计算机业巨头也开始支持Linux。很多人认为,和其他的商用Unix系统以及微软Windows相比,作为自由软件的Linux具有低成本,安全性高,更加可信赖的优势。Linux最成功的系统莫过于红帽和Centos了,虽然我是红帽的RHCE,不过本着性价比的原则,我还是推荐大家用Centos,为什么呢?大家看会下面的数据分析。

2009年10月-2010年7月Linux Web服务器市场份额(W3Techs统计)

对Web服务器的发行版统计显示,30%的Linux服务器运行的是CentOS发行版。CentOS完全是基于Red Hat的RHEL(Red Hat Enterprise Linux) 企业发行版,仅仅是移除了Red Hat的商标。一位CentOS用户称,Red Hat的企业服务合同价格太高了,而且他们也不认为支付的支持服务费用是物有所值。

在桌面市场,CentOS并不算是一个流行的Linux发行版,在各种热门Linux发行版的排行上都没什么特别好的排名;CentOS也是一个丝毫没有个性的发行版——它根本就是和Red Hat企业级Linux一模一样的。

虽然如此,但是在作为Web服务器运行的Linux当中,CentOS却是毫无悬念的No. 1。根据国外科技网站w3techs的 数据显示,截止到2010年7月28日,CentOS以高达31.6%的份额占据了Linux Web服务器的榜首,第二和第三分别是Debian和Red Hat。也就是说,在每十个基于Linux的Web服务器当中,就有三个CentOS,两个半Debian和一个半RHEL。其中,Red Hat由红帽公司开发并提供技术支持,Debian和CentOS都是由社区维护。#p#

CentOS流行的原因

为什么企业宁愿选择没有技术支持的CentOS,而不去选择技术背景强大、支持有保障的Red Hat?第一个原因当然是成本。在美国,红帽的价位大约是每个服务器每年1000美元;在国内的话,大规模的企业,这个价位更是到了每台服务器每年上万甚至数十万元的水平,这并不是一般企业愿意承担的;而CentOS相反,它是完全免费的。

另一方面,CentOS在数据中心里面很受欢迎,因为它非常容易架设,非常容易维护和管理,并且非常的快。

抚琴煮酒认为还有一个原因,就是现在蛮多软件,如果是直接安装的话,仅仅只有CentOS支持,比如Heartbeat;centos是唯一一款支持直接yum安装的Linux操作系统。

最后,让我们看看w3techs统计数据的一些细节:

◆CentOS的占有率上升主要是从Red Hat和Fedora那里夺取市场份额,但同时,也有部分份额被Ubuntu所取代。

◆CentOS在大型企业中使用的相对少,主要还是分布在大多数中小规模的站点。

◆CentOS上使用的主要是Sun的服务器技术,使用Nginx的不多。

◆CentOS在日本、西班牙和罗马尼亚的市场份额相对较高,在德国、中国和巴西则相对较低。

Centos现在在北京、上海及深圳,包括现在的武汉,机房里也可以看到大量它们的身影,基于以上的统计,玩Linux的小伙们先把这个熟练掌握吧。

最后再说下FreeBSD,为什么要扯上这个呢?

FreeBSD是一种Unix操作系统,是由经过BSD、386BSD和4.4BSD发展而来的Unix的一个重要分支,它支持 x86 兼容(包括 Pentium® 和 Athlon™)、amd64 兼容(包括 Opteron™、Athlon 64 和 EM64T)、 Alpha/AXP、IA-64、PC-98以及 UltraSPARC® 架构的计算机。它运行在Intel x86 family兼容处理器、DEC Alpha、Sun微系统的UltraSPARC、Itanium (IA-64)和AMD64处理器上。针对PowerPC的支持正在开发中。它被普遍认为是相当可靠和健壮的。苹果电脑的Mac OS X即以 Mach 为内核, 配合 FreeBSD 的驱动程序和实用工具为基础。FreeBSD 源于 BSD ---美国加州大学伯克利分校开发 Unix® 版本它由来自世界各地的志愿者开发和维护,FreeBSD 为不同架构的计算机系统提供了不同程度的支持。

而从企业的角度来看,公司许多重要的服务器,都是用FreeBSD来跑(FreeBSD的稳定性有目共睹),比如postfix和SVN;如果大家也像我一样维护内网开发环境就会明白,熟悉掌握FreeBSD是一件多么惬意的事情,如果你的开发们需要大量虚拟环境。甭考虑什么VMware ESXi和XEN了,直接上jail吧,安装及部署都非常方便,一款戴尔 PowerEdge R710基本上跑10个虚拟机没什么问题,基本上可以满足10个开发小组的需求;而基于Apache+PHP5+MySQL的开发环境,用FreeBSD就是一种享受;相对于外网源码安装的LAMP和LNMP环境,二者投入的精力和时间就不在一个等级上。而诸如samba,vsftpd和SVN这些企业内部常见的开发环境,一个port很简单就OK了,我遗憾的发现,在FreeBSD安装SVN确实比在linux下安装SVN要简单得多。当然了,经测试发现,MySQL安装在centos上的效果确实比在FreeBSD好得多。我现在比较倾向于的做法是:外网环境(需要布署Nginx和Heartbeat的网站)我考虑用centos,而内网开发环境,我尽量会使用FreeBSD。

我对FreeBSD与Linux比较的最终结论是:谁好谁稳定都只是暂时的,两家的存在状态,是一个“既生瑜何生亮”的问题,在长久的发展过程中,技术上的常胜将军并不存在,双方只有此消彼长,各领风骚。至于大家为什么非要证明FreeBSD比Linux好或Linux比FreeBSD好,我想程序员普遍都喜欢追求完美,非要用最好最完美的系统才甘心吧!我个人的观点是,这二个操作系统都可以熟悉和了解,精通不易,但也向着这个方向努力吧。

网友Licess 的观点:其实用FreeBSD也好,用Linux也好,只要你用牛叉叉了,适合你的才是最好的,我个人认可这个观点。

以上是我作为系统管理员的个人意见,Windows2003、Centos、FreeBSD这三种系统各有自身的特点,不能说谁好和谁坏,建议可以先都熟悉和精进,然后根据公司的需求决定投入的精力和时间 ,ubuntu也可以附带研究下,至于AIX和sun的solaris,这些系统我不推荐也不反对,有精力和机会的小伙也可以研究和深入,希望这篇文章能给从事系统运维和系统集成的小伙们带来帮助!

【编辑推荐】

  1. 所有现代的Windows系统管理员都需要的工具
  2. 系统管理员最需要自动化的十大任务
  3. 系统管理员大拿们的访谈系列(一):Tom Limoncelli谈交流
  4. 系统管理员的双系统生活Windows 2003与FreeBSD 8
  5. 系统管理员应该怎样高效的书写文档
责任编辑:张浩 来源: 51CTO.com
相关推荐

2010-12-06 13:59:00

FreeBSD系统管理员技巧

2010-09-13 15:40:00

2022-10-18 07:56:08

Linux网络命令

2010-09-25 09:40:27

系统管理员Google用户隐私

2010-11-16 14:57:13

系统管理员文档

2011-11-30 09:03:27

2013-03-30 21:59:13

系统管理员必备工具iftop

2018-08-15 14:00:18

LinuxBash系统管理员

2010-04-12 09:33:58

系统管理员

2013-06-26 09:29:30

系统管理员

2013-09-29 09:50:21

系统管理员Ubuntu JujuJuju

2018-08-01 08:12:34

Linux管理员网络管理

2010-07-27 13:44:21

2010-08-10 09:13:52

Unix系统管理员Ubuntu

2010-08-11 17:11:15

2019-09-09 14:45:29

系统管理员SRE

2010-05-06 18:07:33

Unix命令

2013-08-20 10:11:20

Go系统管理员

2012-06-06 10:41:37

系统管理员运维

2011-10-20 10:29:22

VMwareVMworld虚拟化
点赞
收藏

51CTO技术栈公众号