linux系统引导流程
[root@localhost ~]# ls -l `which telinit`
lrwxrwxrwx 1 root root 4 Jan 10 11:30 /sbin/telinit -> init
[root@localhost ~]#
[root@localhost test]# grep -v "^#" inittab | more查看文件除去行首的#
Man 不写文件的绝对路径,只写文件名就可以
Man inittab
Inittab
Id:run-levels:action:process
Id:标识符,一般为两位字母或字符
Run-levels:指定运行的级别,可以指定多个
Action:指定运行时的状态
Process:指定要运行时的脚本/命令
关于系统启动
Firmware 启动固件,post加电自检,这个是在硬件层面的检测
Bootloader 加电自检没有问题时,加载硬盘上第一分区第一个位置,启用引导程
序,在widows中为bootini (NT) 在linux 中为grub
Kernel 加载内核,内核有两个作用,一个是加载系统的驱动程序 ,一个是加
载一个进程,init
Init 由内核加载的Init进程,其父进程为内核调度器
/etc/inittab 读取配置文件,Init进程加载/etc/inittab文件,其有7种运行级别 0-6
Initdefault 设置系统默认的运行级别缺省加载的选项
/etc/rc.d/rc.sysinit 加载系统默认加载的脚本,在每个运行级别都会加载,这个在第一次
启动都会加载,如果要某个
在每一个启动时都启动,可以把服务脚本写在该文件下方 /etc/rc.d/rc 判断系统默认的运行级别,以加载相应的运行级别
/etc/rc.d/rcn.d n=0-6 加载相应的级别下的服务,其有一个软链接在/etc/init.d Username 加载完成,登陆界面
Password
关于rcn.d文件
[toshiba@localhost ~]$ ls /etc/rc.d/rc3.d
K01dnsmasq K74ntpd S12restorecond S28autofs
K02avahi-dnsconfd K85mdmpd S12syslog S55sshd
K02NetworkManager K87multipathd S13cpuspeed S56cups
K02oddjobd K88wpa_supplicant S13irqbalance S56rawdevices
K05conman K89dund S13portmap S80sendmail
K05saslauthd K89netplugd S14nfslock S85gpm
K05wdaemon K89pand S15mdmonitor S90crond
K10psacct K89rdisc S18rpcidmapd S90xfs
K10tcsd K99readahead_later S19rpcgssd S95anacron
K15httpd S00microcode_ctl S22messagebus S95atd
K20nfs S03vmware-tools S25bluetooth S97yum-updatesd
K24irda S04readahead_early S25netfs S98avahi-daemon