摘要 這段時間在搞一個微型的Linux,將它作為一個項目的平台,這個過程中,看了研究了一下Linux的啟動過程,同時把啟動配置文件看了一下,作了一下注釋,同時和大家共享一下:)。我使用的Linux平台是Red Hat Linux 7.3 # # inittab This file describes how the INIT process should set up # the system in a certain run-level. # # Author: Miquel van Smoorenburg, # Modified for RHS Linux by Marc Ewing and Donnie Barnes # # Default runlevel. The runlevels used by RHS are: # 0 - halt (Do NOT set initdefault to this) # 1 - Single user mode # 2 - Multiuser, without NFS (The same as 3, if you do not have networking) # 3 - Full multiuser mode # 4 - unused # 5 - X11 # 6 - reboot (Do NOT set initdefault to this) id:3:initdefault: ##這是init進程啟動以後讀取的第一條內容,用來確定運行級別. ##這條內容讀入以後,runlevel這個工具就可以正常顯示運行級別了 ##在rc這個腳本文件中將用到runlevel這個工具 # System initialization. si::sysinit:/etc/rc.d/rc.sysin l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 ##第三個域中的wait表示init進程在啟動的時候運行一次後邊的內容 ##而且,init進程會等待這個運行的部分正常返回以後才往下運行其它內容。 # Things to run in every runlevel. ud::once:/sbin/update ##這個update使用來自動讓你緩存中的數據寫回磁盤。 # Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r now ##定義當用戶按下Ctrl+Alt+Delete這三個組合鍵後init進程做的動作。 # When our UPS tells us power has failed, assume we have a few minutes # of power left. Schedule a shutdown for 2 minutes from now. # This does, of course, assume you have powerd installed and your # UPS connected and working correctly. pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down" # If power was restored before the shutdown kicked in, cancel it. pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled" # Run gettys in standard runlevels 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 ##第三個域中間的respawn意思是讓init進程一直監視後面的進程, ##如果後面的進程結束了,馬上重新啟動 # Run xdm in runlevel 5 # xdm is now a separate service x:5:respawn:/etc/X11/prefdm -nodaemon