Linux基礎自學記錄六-引導流程解析1

第5講.Linux引導流程解析 
wps_clip_image-3542
1、固件:solaris的固件:PROM/openboot,在運行中可用stop+A調出固件程序;
軟件時鐘#date;硬件時鐘#hwclock(hardwareclock)同步及修改
當出現不熟悉的命令時要學會看help,#hwclock –help 
image 
當出現時間不同時可用硬件同軟件或反之:硬件同步軟件時鐘#hwclock –hctosys;軟件時鐘同步硬件#hwclock –systohc
當時間都不對時,可修改時間:man date查看date修改時間的格式;date [MMDDhhmm[[CC]YY][.ss]] 
image  
image  
man hwclock/hwclock --set --date="9/22/96 16:45:05"image 
image  
2、自舉程序BootLoader(GRUB)
硬盤MBR:主引導記錄Master Boor Recorder,windows下NTLDR和boot.ini;Linux下GRUB/LILO;
#vi /etc/grub.conf
image 
vmlinuz-2.6.18-194.el5是一個內核文件(可執行),在/boot下;
image 
/usr/src/Linux目錄下一般會存放內核源代碼文件,可編譯升級
3、載入內核Kernel
它在啓動加載時只做兩件事:硬件驅動和啓動一個初始進程init,內核更多包含驅動程序。
4、啓動進程init後,它首先讀取inittab
#ps -le|more;init爲PID爲1的第一個進程,它是所有進程的父進程,PPID是一個進程的父進程的PID;init的父進程是PID爲0的內核調度器(Kernel scheduler),分配CPU時間和進程間的切換;
image
 5、讀取執行配置文件/etc/inittab 
runlevel運行級別
image
 #init 3  //不重啓切換級別,前爲N時表示沒切換過;
image
#ll `which telinit`    //telinit是init的軟件連接
image 
#init [0123456Ss]   //可以用s表示級別1
image
 
#grep -v "^#" /etc/inittab|more            //顯示除行首爲#行的其它行
image
#man inittab          //man一下inittab這個配置文件,和命令一樣不用指出目錄;主要注意最後的process
image 
id:5:initdefault:      //判斷默認的運行級別,action常用取值:initdefault缺省級別、sysinit系統啓動就執行後面的process命令、wait執行其後process命令,並等其結束再運行其他命令、ctrlaltdel按三鍵時執行process命令、respawn一旦其後process結束,便重新運行該命令。
si::sysinit:/etc/rc.d/rc.sysinit      
//系統服務初始化,如環境變量、系統時鐘、加載字體、加載文件系統、生成系統啓動信息日誌等。這是所有級別在系統啓動時都要運行的SHELL腳本,可加自啓動配置在這個文件未尾。
l5:5:wait:/etc/rc.d/rc 5        //判斷默認級別後,調用/etc/rc.d/rc這個SHELL腳本,執行相應級別/etc/rc.d/rc[n].d目錄下的服務命令,並等到其執行結束再運行其它命令。
#ls /etc/rc.d/rc3.d     //這是/etc/rc.d/init.d裏服務程序腳本的軟連接;[K|S]kill和start,數字順序,服務名;配置LINUX服務器時,可以在這裏改S來禁止此服務啓動;另#ll /etc/rc3.d是這個目錄的軟連接(UNIX多用此)
image  ca::ctrlaltdel:/sbin/shutdown -t3 -r now     //在虛擬機裏可設置相應的熱鍵定義
2:2345:respawn:/sbin/mingetty tty2    //終端切換CTRL+ALT+F1-F6,F7返回
6、手動關閉或啓動服務
在/etc/rc.d/init.d目錄裏是所有服務的啓動腳本,可以status、start、stop、restart、reload
image 
7、設置自啓動程序
自己添加的服務要在運行級別裏隨系統啓動,可以有三種方法:ln –s;chkconifg;ntsysv
1).先建立自啓動服務腳本msg.script: //建議自建服務也放在一個固定的目錄下
image 
2).#chmod u+x /etc/rc.d/init.d/msg.script   //增加可執行權限
image
3).可用三種方式建立自啓動
#ln –s /etc/rc.d/init.d/msg.script /etc/rc.d/rc3.d/S100msg.script  //在3級別運行
image 
重啓或init 3後,可以看到,一啓動就會Starting 0msg.script,然後將信息記錄在msg.today裏
image
#chkconfig –-level 2345 msg.script on     //出錯不支持msg.script,用vsftpd可用
image 
#ntsysv –-level 3    //可比較直觀的看到在某個運行級別是否啓用或作更改
8、dmesg 查看內核引導期間的信息,可以檢測添加的硬件在啓動時能否被內核所識別
#dmesg | grep sda   內核啓動時的所有信息中的sdaimage
#ls /var/log  //所有日誌文件都在這個目錄裏,啓動時如果出錯或其它都可以通過這裏的文件來判斷
image 
#grep syslog /var/log/messages|more
image

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章