服务与守护进程Linux服务启动脚本配置服务启动状态PAM认证TCP
网络操作系统—— Linux配置与管理 第6章 服务配置与管理 6.1 Linux服务管理 服务与守护进程的概念 服务的概念 有些程序在启动之后持续在后台运行,等待用户或其他应用程序调用,此类程序就是服务(service) 守护进程的概念 大多数服务都是通过守护进程(daemon)实现的。守护进程是服务的具体实现。 服务的类型 系统服务(System Service) 系统服务是指那些为系统本身或者系统用户提供的一类服务,如提供作业调度服务的Cron服务。 网络服务(Networking Service) 网络服务是指供客户端调用的一类服务,如Web服务、文件服务等。 独立服务(Standalone Service) 独立服务一经启动,将始终在后台执行,除非关闭系统或强制中止。多数服务属于此种类型。 临时服务(Transient Service) 临时服务只有当客户端需要时才会被启动,使用完毕就会结束。 超级服务xinetd 用于管理其他服务 6.1 Linux服务管理 Linux网络服务定义文件/etc/services 概述 Linux使用Internet网络服务文件/etc/services来定义网络服务名和它们对应使用的端口号及协议。 Internet服务一般都是通过指定的端口号来标识的,例如Web服务运行在80端口 服务器根据设置自动分配端口来提供服务。 /etc/services文件主要定义服务和端口的对应关系 网络配置基本项目 /etc/services文件中的每一行对应一种服务,由4个字段组成,分别表示服务名、所用端口号、协议名和别名,格式如下 服务名 端口/协议名 [别名 ...] [# 注释] Linux系统的端口范围 公认端口(端口0到1023):用于服务和应用程序,如Web服务、POP3/SMTP、Telnet等 已注册端口(端口1024到49151):分配给用户进程或应用程序。这些进程主要是用户选择安装的一些应用程序,而不是已经分配了公认端口的常用应用程序 动态或私有端口(端口49152到65535):又称为临时端口,往往在开始连接时被动态分配给客户端应用程序。客户端一般很少使用动态或私有端口连接服务(只有一些点对点文件共享程序使用) 6.1 Linux服务管理 Linux服务启动脚本 了解Linux服务启动脚本 每个服务都有相应的服务器启动脚本保存在/etc/rc.d/init.d目录下,脚本文件的名称大多使用守护进程名 该目录中究竟有哪些脚本,与当前系统中所安装的服务有关 注意服务的服务名(service names)与守护进程名(process names)往往是不同的。例如,DNS的服务名为domain,守护进程名为named。 常用服务的服务名(包括服务别名)通常在/etc/services中列出,该文件定义各项服务所对应的TCP/UDP端口。 守护进程名位于/etc/rc.d/init.d目录下,而实际调用的程序文件多数位于/usr/sbin目录。 每一个服务启动脚本可用于实现启动服务、重启服务、停止服务和查询服务等功能。在服务器启动脚本中,一般还有对该脚本功能的简要说明和使用方法 6.1 Linux服务管理 Linux服务启动脚本 服务启动脚本与运行级别 Linux使用rc脚本统一管理每个服务的脚本程序,将所有相关的脚本文件存放在/etc/rc.d目录下。 [root@srv1 ~]# ls /etc/rc.d init.d rc rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rc.local rc.sysinit 系统的各运行级别在/etc/rc.d目录中都有一个对应的下级目录。这些运行级别的下级子目录的命名方法是rcn.d,n表示运行级别的数字。例如,运行级别3的全部脚本程序都保存在/etc/rc.d/rc3.d目录中,例如 [root@srv1 ~]# ls /etc/rc.d/rc3.d K02avahi-dnsconfd K24irda K85mdmpd S05kudzu S13portmap S26apmd S95anacron K02dhcdbd K25squid S06cpuspeed S13setroubleshoot S26hidd S95atd K02NetworkManager K35vncserver K89dund S08ip6tables ## 以下省略 /etc/rc.d/rcn.d目录中存放的是指向