Linux系统简介
企业Linux系统的安装
远程工具的使用
常用命令的使用
Vim编辑器的使用
Linux系统启动过程
帐号与组的管理
磁盘与文件系统的管理(parted)
LVM逻辑卷的管理
RAID管理
软件包的管理(RPM软件包管理/YUM管理/源码包的安装)
进程管理
计划任务
系统监控(性能分析/内存监控/CPU监控/磁盘监控/网络监控/TOP)
日志管理
内核模块管理(加载与卸载)
Shell编程
正则表达式
Sed
Awk
中级运维工程师需要掌握:
服务的管理、FTP/SAMBA/NFS、IP网络存储ISCSI、DHCP、NTP、DNS、Web(apache/nginx)
高性能HTTP加速Varnish
数据镜像备份工具rsync与unison
Tomcat
MySQL数据库基础
Postfix企业邮箱的搭建
Kickstart部署无人值守安装
Snmp简介
Cacti环境部署
Ganglia集群环境监控
Nagios企业实战
Ntop监控网络流量
Linux系统安全(账户密码安全/网络安全/文件系统安全/备份与恢复/日志记录/漏洞扫描/ Openssh)
Linux常用安全工具(SAINT/Nmap/Tcpdump/Ethereal/EtherApe/GnuPGP)
SELinux安全策略
Iptables防火墙策略
证书与安全
VPN环境的搭建
高级运维工程师需要掌握:
(XEN环境部署、KVM环境部署、版本控制环境的搭建与使用(SVN、CVS、GIT)
构建定制RPM包
PAM
SELINUX
LDAP介绍
使用 Kerberos 和 LDAP 集中管理用户身份验证
使用 Kerberos 集中管理用户身份验证
借助 Kerberos 和 NFSv4 提高网络文件系统 (NFS) 安全性
Linux系统调优思路
Linux系统性能评估与优化
Linux集群技术概论
Linux-HA开源软件Heartbeat
Linux-HA开源软件Keepalived
Linux存储集群
Linux负载均衡软件LVS
RHCS集群
构建Mysql+heartbeat+DRBD+LVS集群应用系统
CDN简介
Squid
Memcached应用实战
分布式存储系统MFS
分布式存储系统MooseFS
云计算之Hadoop
Linux集群主要分成三大类( 高可用集群, 负载均衡集群,科学计算集群)高可用集群( High Availability Cluster)
负载均衡集群(Load Balance Cluster)
科学计算集群(High Performance Computing Cluster)
================================================
高可用集群(High Availability Cluster)
常见的就是2个节点做成的HA集群,有很多通俗的不科学的名称,比如"双机热备", "双机互备", "双机".
高可用集群解决的是保障用户的应用程序持续对外提供服务的能力。 (请注意高可用集群既不是用来保护业务数据的,保护的是用户的业务程序对外不间断提供服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度)
Linux平台常见的高可用集群 有这些:
1. RedHat 公司 的 开放源代码RedHat Cluster Suite, 简称RHCS . (产品介绍http://www.redhat.com/solutions/clustersuite/)
- RHCS实际上是一个套件,除了现在提到的高可用集群软件,还包含了一个基于LVS的负载均衡软件.
- RHCS包含的集群软件,是GPL协议下开放源代码的集群系统.
- RHCS目前的版本有 RHCS v3和 v4,分别对应于RedHat 企业版Linux的 3.0家族和4.0家族.
- RHCS是一个独立的产品,不包括在RedHat Enterprise Linux当中,无论是购买还是下载,都是单独存在的.
RHCS的获得:
RHCS的获得有三个途径:
a. 从redhat 的官方销售渠道购买,得到的是RedHat RHCS产品的二进制代码(光盘或直接从RHN-RedHat Network下载),源代码,以及支持和升级服务.
b. 从redhat 的官方站点下载SRPM包,编译并安装. 无原厂商业支持和升级服务. 这里下载 (ftp.redhat.com/pub/redhat/linux/enterprise/4/en/RHCS和ftp:/tp.redhat.com/pub/redhat/linux/enterprise/3/en/RHCS)
c. 从centOS官方站点下载RHCS的二进制代码包并安装,无原厂商业支持和升级服务. 这里下载(http://mirror.centos.org/centos/4/csgfs/, 请阅读此目录中的README文件)
一.为什么要学linux?当然最重要是爱好和兴趣!如果你这种必要学,或者根本不喜欢,请不要浪费时间,你学也学不好!
二.起步
你应该为自己创造一个学习linux的环境--在电脑上装一个linux或unix
问题1:版本的选择
北美用redhat,欧洲用SuSE,桌面mandrake较多,而debian是技术最先进的linux
开发人员中用debian的最多,其次是redhat,从全球linux各应用领域市场份额来看
无疑redhat是最多的,此外还有很多出名的发行版本,不再列举。
对于初学linux的人来说,我建议是使用redhat,原因如下:
1)现在很多书都是以redhat为例讲的,为了与书本协调一致
2)周围的人都用redhat,交流比较方便
3)redhat应用范围广,有典型性和代表性
4)它易于使用和安装,我们没有必要把时间浪费在“装系统”上
而应集中精力学习最有用的东西。
//注:现在觉得RH很死板,AS,ES等用在服务器上或许不错,
Personal desktop用mandrake,debian,suse都不错,笔者现在用Mandrake,因为她长得漂亮
如果你并不打算深入学习linux,而是有诸如适应北京市政府办公平台迁移到
linux上这种需要,那么中软,红旗等中文linux是不错的选择
我强烈建议:自己亲自动手把linux装到你的硬盘上,
你必须学会独立安装linux系统的技能,对于现在的版本来说,其实跟装WinXP一样简单
从此现在开始,请不要以windows的工作方式来考虑问题,
应该尝试挖掘linux身上的“天才unix”的气质。
三.进阶
掌握至少50个以上的常用命令
理解shell管道"|",文件流重定向">"及追加">>"等
熟悉Gnome/KDE等X-windows桌面环境 *** 作
掌握.tgz.rpm.biz等软件包的常用安装方法
学习添加外设,安装设备驱动程序(比如modem)
熟悉Grub/Lilo引导器及简单的修复 *** 作
熟悉系统固有目录的名称及公用
学会用mount命令访问其他文件系统
了解vi,gcc,gdb等常用编辑器,编译器,调试器
学习linux环境下的简单组网
建议:买一本不需要太厚的linux教材,大致可以满足要求
//现在的书越来越多了,还带很多图,我当时可没这么多书:)
四.高级应用
澄清一些概念:
linux的普通 *** 作与真正的系统管理不能相提并论,后者需要很多知识
我个人认为比较重要几种linux语言
1.英语
即使你不学linux,我也强烈建议你学好英文[U.S.english]
因为实质上计算机语言就是英文和字符,所谓的多国语言只是外部包装
你必须能无障碍的阅读大量的英文技术文档
在搜索引擎找到的英文网站和网页中熟练的检索
最好能有用英文直接交流的能力,
摆脱了这个障碍,你的学习和理解速度就能快很多,你就有机会拉开和别人的差距
2.shell[sed/awk]
shell是命令解释器,是内核与用户界面交流通道,shell写的小脚本有点类似于win下的.bat
但shell比.bat强大的多,shell不只是解释命令,更是一种编程语言,有时候几百行的c用shell
几十行就能代替完成工作,因为shell的工作方式建立在系统已有的众多应用程序之上
这也是CS中的一个重要思想。
此外,shell可以实现工作自动化,这个概念也比较重要
sed,awk用来处理文本,历来很常用
3.Perl/PHP
漂亮的脚本, CGI的首选,比ASP好,应用面很广
4.C\C++
C、C++是linux/unix的核心语言,系统代码都是C写的
5.ASM
系统底层及内核,硬件,设备驱动程序,嵌入式开发都需要
//走核心路线的话,才c\c++,asm最重要
6.Java,Python,Tcl,XML
*系统管理篇
在熟悉linux的基础上还需要掌握至少一种unix
我首推Solaris,其次是FreeBSD
比如运营级系统一般是Solaris+Oracle/DB2之类的
学习apache,ssh,sendmail/Qmail,proftp/vsftp,Samba,Squid,MySQL/PostgreSQL/Oracle,Bind
等各种应用服务器的构架及电子商务的应用
熟悉TCP/IP协议族,学习诸如apache+php+proftp+mysql+quota的实现以及大型局域网,分布式集群
等各种企业级应用解决方案
熟悉多用户管理,数据库管理,文件系统,逻辑存储管理,日志分析,备份与灾难数据修复
系统补丁,内核升级,以及在此基础上的防火墙构架等以保障系统安全在内的各种系统管理技能
我觉得,如果在此基础上再掌握路由/交换设备便是一个不错的系统管理员
各种基于linux的解决方案可参考相关书籍和文献,必要时用google或各大linux站点站内
搜索引擎寻找最新文档,以避免错误和漏洞
有几本技术大全和技术内幕我认为都是这方面不错的书
*深入学习linux
我个人理解的读linux内核需要的基础:
在此之前,希望先把应用层的东西学一下,那样会比较好理解
1.C
如果学过潭浩强的大学教科书(除了编几个数学模型好像什么也做不了的那种),
建议再看一下
《The C Programming Language》Second Edition这本圣经
/*如果想学缓冲区溢出,这点C的功力可能是不够的*/
还有,,,
反正经典书看多了是没有坏处的
2.asm (AT&T语法,保护模式)
保护模式下的比较复杂,基本上每本讲内核的书都会有介绍
有80x86 Intel语法的基础就行,
有兴趣可以看看Intel的官方****
3.数据结构(离散数学)
计算机专业的核心课程,重要性我就不说了
4. *** 作系统原理
看懂这个再去读linux吧
5.微机原理/组成原理(数字电路)
底层直接和硬件打交道,所以这个也要
6.了解linux/unix
我想至少你要会 *** 作吧,了解unix的API
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)