一、
基础工具(操作流):
vi ,这个是必须的,因为服务器的运维多用远程登录,没有GUI。一些对服务器资源占用要求严格的公司会在安装时就要求最小化安装,然后再按需安装业务程序的依赖软件。这种情况默认桌面环境甚至Xserver是不安装的。不会用vi,会很痛苦。vi较常用的:查找,精确复制粘贴,精准定位至要编辑的行,表达式作字符串替换。
熟悉windows与linux之间相连接的工具。(Secure CRT, vnc, rdesktop,winscp),提到上面几个工具是因为你有可能在你的同事或者客户的windows机器上连linux server
此条多是照搬rhct的内容: 懂fdisk/parted分区工具,管理swap,管理用户,查看主机配置(主机型号,cpu型号,物理内存数量(比如看到有16条单根8G的内存),如果是代客户运维,这些东西与客户采购与系统扩容联系紧密,扯远了),lvm管理,文件系统管理,网络配置管理/多网卡绑定,各发行版上
二进制/源代码包的安装,软件包依赖关系解决,查看系统当前负载(内存占用top 10进程列表,cpu占用top10进程列表,IO负载),熟悉常用系统日志的查看方法
服务器配置安装部分:熟悉最常用
的ftp,http,nfs,samba,dns,dhcp,mail的一般配置方法。
熟悉系统常用中间件/数据库的安装(tomcat,jboss,was,oracle),可以不熟悉它们的配置
理解“环境变量”及其作用,能写shell script ,知道一点expect/sed/awk, 会使工作有效率
熟悉HA集群以及负载均衡(lvs)集群的配置
熟悉多路径(multipath)的配置和管理,熟悉san/nas的概念与区别
熟悉各发行版二进制包的制作过程与二进制包的安装原理或过程
分析系统性能瓶颈点(IO/memory/cpu,常用工具,top命令中shift组合键的特殊用法,Sar/vmstat/iostat/ipcs)
理解Xwindow大致原理,用ssh或
定义DISPLAY 作x server的任意跳转
熟悉PXE+kickstat作无人值守的批量部署
熟悉以源代码方式安装硬件驱动
分析部分程序不能运行或没有按预想结果运行的原因,strace对程序运行跟踪,查看系统调用的过程,
较深入的系统瓶颈点分析(swap使用频率,硬件驱动的中断请求在各core的分布,高手见笑,我只用过这两个)
熟悉kdump的大致原理,nmi的大致原理,分析系统crash时dump出的文件。(如果能看到dump文件的话,里面记录的还是比较清晰的,日志会记录到crash时每个core上运行的进程正在执行的系统调用,有遇到过:几次系统总是在某个系统调用发生时crash,后来百度了资料,才知道这个系统调用存在bug,最后单升级kernel就好了。 现在让我很蛋疼的是很多时候机器hang掉,不会产生kdump文件,尽管设置了内核的oops/nmi相关参数,如果有高手碰巧看到,希望能请教一下)