主讲:张泽飞://ent.qq.com/a/20071202/000037.htm主讲:张泽飞•启动引导器的概念•GRUB的使用和配置•Linux系统的启动过程和init进程•守护进行的相关概念•超级网络服务器xinetd•守护进程的管理工具主讲:张泽飞GRUB简介•什么是启动引导器–启动引导器是计算机启动过程中运行的第一个真正的软件,通常计算机启动时在通过BIOS自检后读取并运行硬盘主引导扇(MBR)中的启动引导器(BootLoader)程序,启动引导器再负责加载启动硬盘分区中的操作系统。•什么是GRUB–GRUB(GRandUnifiedBootloader)是一个将引导装载程序安装到主引导记录的程序,主引导记录是位于一个硬盘开始的扇区。•GRUB的特性–提供一个真正基于命令行的,先于操作系统(pre-OS)的环境–GRUB支持逻辑块寻址(LBA)方式–GRUB的配置能在每次系统引导时被读取,所有的改变都能被自动地检测到。主讲:张泽飞GRUB的术语•GRUB下的设备名称–指定硬盘分区的形式:(hdX,Y)–指定整个硬盘的形式:(hdX)•GRUB下的文件名–形式:(hdX,Y)/path/to/file•GRUB下的根文件系统–GRUB中根文件系统这一术语与Linux的根文件系统是没有关系的,这一点要特别注意。主讲:张泽飞GRUB的操作界面•菜单界面•菜单项目编辑器界面•命令行操作界面–在菜单界面或菜单项目编辑界面中按c键进入–在Linux的Shell环境下键入grub命令进入主讲:张泽飞GRUB的配置文件•GRUB的配置文件默认为“/boot/grub/grub.conf”•GRUB的配置文件的配置选项•GRUB的配置文件举例主讲:张泽飞Linux启动过程–BIOS自检–启动GRUB/LILO–运行Linux的系统内核并检测硬件–读取配置文件/etc/inittab运行第一个进程init•执行系统初始化脚本/etc/rc.d/rc.sysinit•根据运行级别(X)配置守护进程(服务)/etc/rc.d/rcX.d/[KS]*–终止以“K”开头的守护进程–启动以“S”开头的守护进程•执行本地特殊配置/etc/rc.d/rc.local•不同运行级别的特殊服务–xdm/gdm/kdm(运行级别5)主讲:张泽飞守护进程的概念•守护进程是在计算机启动时就被运行的,并在系统中持续运行的进程,它等待着随时为客户提供自身负责的服务。•由于此类程序运行在后台,除非程序异常终止或者人为终止,否则它们将一直运行下去直至系统关闭。所以,我们将此类提供服务功能的程序称为守护进程。•Linux的守护进程(Daemon)在Windows系统中被称作“服务”。•查看系统当前运行的守护进程–pstree主讲:张泽飞守护进程的工作原理•网络程序之间的连接是通过端口之间的连接而实现的。在C/S模型中,服务器监听(Listen)在一个特定的端口上等待客户的连接。连接成功之后客户机与服务器通过端口进行数据通讯。•守护进程的工作就是打开一个端口,并且等待并监听(Listen)进入的连接。如果客户提请了一个连接,守护进程就创建(fork)子进程来响应此连接,而父进程继续监听更多的服务请求。因此,每个守护进程都可以处理多个客户服务请求。主讲:张泽飞守护进程的运行方式•独立运行的守护进程–独立运行的守护进程由init脚本负责管理–独立运行的守护进程的脚本存放在/etc/rc.d/init.d/目录下–所有的系统服务都是独立运行的。如:httpdd、named、xinetd等。•由网络超级服务器(xinetd)运行的守护进程–由xinetd管理的守护进程的配置文件存放在/etc/xinetd.d/目录下–默认的xinetd的主配置文件是/etc/xinetd.conf–xinetd本身是独立运行的守护进程主讲:张泽飞超级网络服务器——xinetd简介•什么是xinetd–xinetd是新一代的网络守护进程服务程序,提供类似于早期的inetd+tcp_wrapper的功能,与之相比xinetd更加强大和安全。•xinetd的功能–支持tcp、ucp、RPC协议服务–基于时间段的访问控制–功能完备的log功能,能限制log文件大小–能有效的防止DoS攻击(DenialofServices)–能限制同时运行的同一类型的服务器数目–能限制启动的所有服务器的数目–将某个服务绑定在特定的系统接口上,从而能实现只允许私有网络访问某项服务主讲:张泽飞xinetd的配置•xinetd的配置文件–/etc/xinetd.conf–/etc/xinetd.d/*•xinetd的常见配置参数–disable(xinetd是否监控此服务)–server(指定由xinetd监控的服务器路径)–only_from(只允许指定的主机访问)–no_access(指定不能访问的主机)–per_source(每个客户机的最大连接数)–instances(服务器总共支持的最高连接数)•xinetd的配置文件举例主讲:张泽飞chkconfig•chkconfig的功能–添加指定的新服务–清除指定的服务–显示由chkconfig管理的服务–改变服务的运行级别–检查指定服务的启动状态•chkconfig命令的格式–#chkconfig--list[server-name]–#chkconfig--addserver-name–#chkconfig--delserver-name–#chkconfig[--levellevels]server-nameon|off|reset–#chkconfig[--levellevels]server-name主讲:张泽飞ntsysv和service•ntsysv的功能–改变守护程序在系统启动时的运行状态•service的功能–在系统运行期间改变守护程序的运行状态•service的命令格式–#service--status-all–#serviceserver-namestatus–#serviceserver-namestart/stop/restart主讲:张泽飞service使用举例•查看系统中的所有守护进程的状态–#service--status-all•查看某个具体的守护进程的状态–#servicevsftpdstatus•启动或停止某个守护进程–独立运行–#servicehttpdstart|stop|restart–xinetd运行–#servicexinetdstart|stop|restart