init inittab rc0 rc1 rc2 rc3 rc5 rc6 rcS init.d
init 系统启动超级进程
inittab 进程启动配置文件
rc0 - rc6 各启动级别的启动脚本
rcS 单用户模式启动脚本
init.d 启动脚本存放目录
init目录有时候是直接在/etc目录下的,/etc目录下有时候也有inittab 、rc0~6等目录,不过这些目录都是/etc/rc.d目录下相应的目录的快捷方式(linux的叫软连接),rc0~6等目录下存在的启动脚本基本上都是软连接,实际存放位置是init.d目录下。
Linux 启动顺序:
1、 BIOS自检
2、 运行系统内核并检测硬件
3、 运行系统的第一个进程init
4、 init读取系统引导配置文件/etc/inittab中的信息进行初始化
/etc/rc.d/rc.sysinit------系统初始化脚本
/etc/rc.d/rcX.d/[KS]*------根据运行级别配置服务
/etc/rc.d/rc.local---------执行本地特殊配置
其它---------不同运行级别的特殊服务
Linux启动运行init程序来启动相关程序初始化,与启动相关的一个概念是运行级,运行级是操作系统当前运行的级别,在不同运行级别上可以定义属于该运行级的启动程序,系统的运行级别可以在/etc/inittab文件指定,与运行级相关运行程序通过从源/etc/rc.d/init.d下链接到目的/etc/rcX.d,这里X为系统的默认运行级别,因此,默认的启动脚本放在/etc/rc.d/init.d下。
redhat的启动方式和执行次序是:
加载内核
执行init程式
/etc/rc.d/rc.sysinit # 由init执行的第一个脚本
/etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式
/etc/rc.d/rc.local
/sbin/mingetty # 等待用户登录
在Redhat中,/etc/rc.d/rc.sysinit主要做在各个运行模式中相同的初始化工作,包括:
调入keymap及系统字体
启动swapping
设置主机名
设置NIS域名
检查(fsck)并mount文件系统
打开quota
装载声卡模块
设置系统时钟
等等。
/etc/rc.d/rc则根据其参数指定的运行模式(运行级别,你在inittab文件中能设置)来执行相应目录下的脚本。凡是以Kxx开头的
,都以stop为参数来调用;凡是以Sxx开头的,都以start为参数来调用。调用的顺序按xx
从小到大来执行。例如,假设缺省的运行模式是3,/etc/rc.d/rc就会按上述方式调用
/etc/rc.d/rc3.d/下的脚本。
值得一提的是,Redhat中的运行模式2、3、5都把/etc/rc.d/rc.local做为初始化脚本中
的最后一个,所以用户能自己在这个文件中添加一些需要在其他初始化工作之后,登录之前执行的命令。
init在等待/etc/rc.d/rc执行完毕之后(因为在/etc/inittab中/etc/rc.d/rc的
action是wait),将在指定的各个虚拟终端上运行/sbin/mingetty,等待用户的登录。
至此,LINUX的启动结束。
rc0.d: eeprom OpenBoot状态,可以进入硬件维护模式,或关闭机器。
rc1.d: 单用户模式,可以对系统进行软件维护。
S01MOUNTFSYS +加载文件系统
S10lu =当运行live update后清理系统
rc2.d: 多用户模式,启动网络工作站服务。 (最后会启动dtlogin允许图形界面工作站)
S01MOUNTFSYS
S05RMTMPFILES + 清空/tmp文件系统
/tmp是系统缓存文件目录,和swap分区共享空间,如果分区满的话会
对系统性能造成很大影响
S10lu =
S20sysetup + 设置系统初始参数
设置hostname等
S21perf = 性能记账服务(无效)
开启accton记账服务,默认无效
S30sysid.net + 配置基本网络参数
设置系统ip地址等
S40llc2 + 启动Class II logical link control driver
逻辑链路控制程序驱动
S42ncakmod = 启动Solaris Network Cache and Accelerator (NCA)
NCA网络缓存加速驱动,可以提高HTTP Server吞吐率
S47pppd - 启动拨号访问服务器进程
串行线拨号访问服务器
S69inet = 启动inetd进程
Internet服务超级进程,配置文件/etc/inetd.conf,启动一系列
服务,如telnet/ftp等
s70uucp - 启动uucp
uucp服务,无用
S71rpc + 启动rpcbind服务
rpcbind (RPC Portmap服务),如果需要CDE的话,这个进程是必需的
S71sysid.sys + 配置一些系统参数
S71ldap.client - 启动LDAP客户端
S72directory - 启动目录服务
S72inetsvc + 启动inet server,包含named/nis
启动名字解析服务,包含named和nis两部分
s72slpd - 启动slpd
打印服务系统的一部分
S72autoinstall = 启动自动安装守护进程
当放入sun兼容的媒体介质时,会自动启动安装脚本
S73cachefs.daemon - 启动cachefsd
NFS缓存服务,可以提高NFS吞吐率
S73nfs.client = 启动nfs客户端
NFS客户端程序
S74syslog + 启动syslog
系统日志守护进程,必需
s74autofs - 启动auto mount fsd
当使用NFS时,这个进程会自动加载或卸载无用的用户网络文件系统
配置文件/etc/auto_home和auto_master
但是当没有使用nfs时,这个进程会对系统管理造成一些负面影响
s74xntpd - 启动网络时间同步服务
S75cron + 启动crontab服务
系统任务自动调度守护进程
S75savecore +
S76nscd + 启动nscd,名字服务缓存
DNS名字缓存服务
S80kdmconfig = 启动kdmconfig
如果系统启动时X-Window配置文件丢失,这个进程会启动X-Window配置
S80spc - 启动lpd打印守护进程
打印服务系统的一部分
s80lp - 启动lpd打印调度守护进程
打印服务系统的一部分
S85lmgrd + 启动flexlm license服务器
Solaris License管理服务器
S85power + 启动电源守护进程
S88utmpd + 启动utmpd
s88sendmail - 启动sendmail
S89PRESERVE =
保留,无效
S90wbem = 启动wbem,基于web的管理界面
WBEM,Solaris系统管理界面服务器,可以使用/usr/sadm/bin/smc
启动客户端程序连接管理
S93cacheos.finish -
S94ncalogd = 启动Solaris Network Cache and Accelerator LOGd
NCA进程日志
S95IIim + 启动输入法守护进程
Solaris国际化支持的一部分,启动东亚语言输入法
S95svm.sync + 启动 devfsadm ,devfs同步进程
监控系统硬件,使/dev与/devices设备文件同步
S99audit + 启动BSM审计进程
Solaris Base Securiey Modula,启动Solaris C2安全审计
默认未启动
S99dtlogin = 启动CDE登录进程
Solaris CDE图形界面启动进程
rc3.d: 多用户模式,启动网络服务器模式
S15nfs.server - 启动nfs服务器
NFS网络文件服务器
S13kdc.master - 启动Kerberos服务器
S14kdc - 启动Kerberos服务器
Kerberos认证服务器
server - 启动bootp服务器
boot网络启动服务
S34dhcp = 启动dhcp
DHCP服务器
S50apache - 启动apache服务器
S76snmpdx - 启动snmp服务器
启动SNMP服务,允许远程网络管理
S77dmi - 启动snmp - dmi服务
SNMP子服务
S89sshd + 启动sshd服务器
SSH服务器
S80mipagent - 启动Mobile IP 代理
S90samba - 启动samba服务器
Samba CIFS网络文件服务器