Linux入門-系統管理--啓動、登陸、註銷、重啓、關機

第一部分,啓動html

分享自http://blog.chinaunix.net/uid-26495963-id-3066282.html,shell

做者:butbueatiful.blog.chinaunix.net小程序




啓動第一步--加載BIOS

當你打開計算機電源,計算機會首先加載BIOS信息,BIOS信息是如此的重要,以致於計算機必須在最開始就找到它。這是由於BIOS中包含了CPU的相關信息、設備啓動順序信息、硬盤信息、內存信息、時鐘信息、PnP特性等等。在此以後,計算機內心就有譜了,知道應該去讀取哪一個硬件設備了。

啓動第二步--讀取MBR
衆所周知,硬盤上 第0磁道第一個扇區被稱爲MBR,也就是Master Boot Record,即主引導記錄,它的大小是512字節,別看地方不大,可裏面卻存放了預啓動信息、分區表信息。
系統找到BIOS所指定的硬盤的MBR後,就會將其複製到0×7c00地址所在的物理內存中。其實被複制到物理內存的內容就是Boot Loader,而具體到你的電腦,那就是lilo或者grub了。

啓動第三步--Boot Loader
Boot Loader 就是在操做系統內核運行以前運行的一段小程序。經過這段小程序,咱們能夠 初始化硬件設備、創建內存空間的映射圖,從而將 系統的軟硬件環境帶到一個合適的狀態,以便 爲最終調用操做系統內核作好一切準備
Boot Loader有若干種,其中Grub、Lilo和spfdisk是常見的Loader。
咱們以Grub爲例來說解吧,畢竟用lilo和spfdisk的人並很少。
系統讀取內存中的grub配置信息(通常爲menu.lst或grub.lst),並依照此配置信息來啓動不一樣的操做系統。

啓動第四步--加載內核
根據grub設定的內核映像所在路徑,系統讀取內存映像,並進行解壓縮操做。此時,屏幕通常會輸出「Uncompressing Linux」的提示。當解壓縮內核完成後,屏幕輸出「OK, booting the kernel」。
系統將解壓後的內核 放置在內存之中,並 調用start_kernel()函數來啓動一系列的初始化函數並初始化各類設備,完成Linux核心環境的創建。至此,Linux內核已經創建起來了,基於Linux的程序應該能夠正常運行了。

啓動第五步--用戶層init依據inittab文件來設定運行等級
內核被加載後, 第一個運行的程序即是 /sbin/init,該文件會 讀取/etc/inittab文件,並依據此文件來進行初始化工做。
其實/etc/inittab文件最主要的做用就是 設定Linux的運行等級,其設定形式是「:id:5:initdefault:」,這就代表Linux須要運行在等級5上。Linux的運行等級設定以下:
0:關機
1:單用戶模式
2:無網絡支持的多用戶模式
3:有網絡支持的多用戶模式
4:保留,未使用
5:有網絡支持有X-Window支持的多用戶模式
6:從新引導系統,即重啓
關於/etc/inittab文件的學問,其實還有不少

啓動第六步--init進程執行rc.sysinit
在設定了運行等級後,Linux系統執行的 第一個用戶層文件就是 /etc/rc.d/rc.sysinit腳本程序,它作的工做很是多,包括設定PATH、設定網絡配置(/etc/sysconfig/network)、啓動swap分區、設定/proc等等。若是你有興趣,能夠到/etc/rc.d中查看一下rc.sysinit文件,裏面的腳本夠你看幾天的

啓動第七步--啓動內核模塊
具體是依據 /etc/modules.conf文件或 /etc/modules.d目錄下的文件來裝載內核模塊。

啓動第八步--執行不一樣運行級別的腳本程序
根據運行級別的不一樣,系統會運行rc0.d到rc6.d中的相應的腳本程序,來完成相應的初始化工做和啓動相應的服務。

啓動第九步--執行/etc/rc.d/rc.local
你若是打開了此文件,裏面有一句話,讀過以後,你就會對此命令的做用一目瞭然:
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don’t
# want to do the full Sys V style init stuff.
rc.local就是在一切初始化工做後,Linux留給用戶進行個性化的地方。你能夠把你想設置和啓動的東西放到這裏。

啓動第十步--執行/bin/login程序,進入登陸狀態
此時,系統已經進入到了等待用戶輸入username和password的時候了,你已經能夠用本身的賬號登入系統了。:)
===
漫長的啓動過程結束了,一切都清靜了…
其實在這背後,還有着更加複雜的底層函數調用,等待着你去研究…本文就算拋磚引玉了:)
本文參考了以下文章,精煉薈萃而成:
http://bbs.chinaunix.net/thread-835918-1-1.html
http://hi.baidu.com/fembed/blog/item/b9f0881f51145866f624e4be.html
http://baike.baidu.com/view/9485.htm
 
第二部分,登陸
啓動完成後,開始等待登陸,登陸程序login負責用戶登陸。
a.認證用戶身份
b.身份驗證成功後,啓動shell並初始化用戶環境
c.檢查電子郵件,並給與提示
d.成功登陸記錄到/var/log/wtmp,失敗登陸記錄到/var/run/utmp。
PS1=「[\u@\H \w]\\\$」 (\u 當前用戶的帳號名稱  \H完整的主機名稱 \W工做目錄名稱,只會列出最後一個目錄)
 root 提示符爲#

普通用戶提示符爲$網絡

第三部分,註銷函數

1.exit(Linux窗口註銷使用)ui

2.logout(secureCRT窗口註銷使用)spa

第四部分,重啓操作系統

1.reboot.net

-f 強制重啓3d

reboot 能夠不接參數(經常使用)

2.shutdown(不能單獨用,至少2個參數)

shutdown -r 延時分鐘數

shutdown -r now 

第五部分,關機

1.halt(能夠不接參數)

-f 強制關機

-p 關機後,關閉電源

2.poweroff

3.init 0

4.shutdown (不能單獨用,至少2個參數)

shutdown -h 延時分鐘數

shutdown -h now

相關文章
相關標籤/搜索