新聞中心
作為一個(gè)開(kāi)源的操作系統(tǒng),Linux因其高度的可定制性和優(yōu)秀的性能表現(xiàn)而備受歡迎。Linux的開(kāi)機(jī)啟動(dòng)過(guò)程是其功能的基石。而想要深入了解Linux的開(kāi)機(jī)過(guò)程,就需要理解它的啟動(dòng)代碼。本文將會(huì)詳細(xì)解析Linux的啟動(dòng)代碼,介紹從開(kāi)機(jī)到登錄的完整流程。

創(chuàng)新互聯(lián)擁有一支富有激情的企業(yè)網(wǎng)站制作團(tuán)隊(duì),在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)深耕10年,專業(yè)且經(jīng)驗(yàn)豐富。10年網(wǎng)站優(yōu)化營(yíng)銷經(jīng)驗(yàn),我們已為超過(guò)千家中小企業(yè)提供了網(wǎng)站設(shè)計(jì)、做網(wǎng)站解決方案,定制網(wǎng)站開(kāi)發(fā),設(shè)計(jì)滿意,售后服務(wù)無(wú)憂。所有客戶皆提供一年免費(fèi)網(wǎng)站維護(hù)!
一、BIOS
當(dāng)計(jì)算機(jī)啟動(dòng)時(shí),硬件會(huì)首先執(zhí)行系統(tǒng)上的基本輸入/輸出系統(tǒng)(BIOS)。BIOS主要任務(wù)是初始化硬件并引導(dǎo)操作系統(tǒng)啟動(dòng)。BIOS包括ROM芯片,可以在操作系統(tǒng)及其驅(qū)動(dòng)程序之前運(yùn)行。
二、引導(dǎo)加載程序
BIOS執(zhí)行后,會(huì)進(jìn)入引導(dǎo)加載程序(bootloader)。引導(dǎo)加載程序會(huì)在硬盤上搜索并加載Linux內(nèi)核,然后將內(nèi)核文件從硬盤傳送到內(nèi)存中。
引導(dǎo)加載程序有很多種,大部分情況下是使用GRUB。GRUB(GRand Unified Bootloader)是一種常用的多操作系統(tǒng)引導(dǎo)管理器,支持在多種操作系統(tǒng)間切換。它位于硬盤的Master Boot Record(MBR)中,并維護(hù)一個(gè)稱為GRUB Stage 1.5的小型文件系統(tǒng)。這個(gè)文件系統(tǒng)允許它找到并加載內(nèi)核鏡像文件和其他啟動(dòng)信息。
三、內(nèi)核初始化
正如先前提到的,引導(dǎo)加載程序會(huì)將內(nèi)核文件從硬盤傳送到內(nèi)存中。內(nèi)核初始化然后開(kāi)始,需要在系統(tǒng)中創(chuàng)建內(nèi)核空間(內(nèi)核數(shù)據(jù)結(jié)構(gòu)和內(nèi)核代碼)并設(shè)置系統(tǒng)中的各種硬件。
內(nèi)核的初始化包括以下步驟:
1. 內(nèi)存管理初始化:內(nèi)存管理初始化會(huì)創(chuàng)建內(nèi)存管理結(jié)構(gòu),并在系統(tǒng)上保留必要的內(nèi)存。
2. 進(jìn)程初始化:初始化進(jìn)程管理系統(tǒng)。
3. 初始化輸入/輸出子系統(tǒng):鍵盤、鼠標(biāo)、網(wǎng)絡(luò)和其他輸入/輸出設(shè)備將被初始化。
4. 文件系統(tǒng)初始化:內(nèi)核對(duì)文件系統(tǒng)進(jìn)行初始化,此時(shí)可以對(duì)根文件系統(tǒng)進(jìn)行掛載。
5. 設(shè)備驅(qū)動(dòng)程序初始化:初始化各種硬件設(shè)備驅(qū)動(dòng)程序。
6. 網(wǎng)絡(luò)初始化:初始化網(wǎng)絡(luò)子系統(tǒng),包括設(shè)置網(wǎng)絡(luò)接口和訪問(wèn)網(wǎng)絡(luò)協(xié)議棧。
7. 初始化用戶模式和用戶模式程序:?jiǎn)?dòng)getty和login等程序。
四、用戶模式初始化
用戶模式初始化可以開(kāi)始幾秒鐘后,在啟動(dòng)到這一步之前計(jì)算機(jī)是處于內(nèi)核模式運(yùn)行狀態(tài),除了Kernel Mode之外任何用戶模式程序都沒(méi)有運(yùn)行。這時(shí),內(nèi)核將開(kāi)啟一個(gè)進(jìn)程(init進(jìn)程),進(jìn)入用戶模式。用戶模式會(huì)加載Linux發(fā)行版的一些程序,并轉(zhuǎn)移到之一條運(yùn)行級(jí)別的配置腳本。
Linux中的6個(gè)運(yùn)行級(jí)別:
0 – 關(guān)閉系統(tǒng)
1 – 單用戶模式
2 – 基于文本的多用戶模式
3 – 基于文本的多用戶模式,與2不同之處在于支持多個(gè)網(wǎng)絡(luò)服務(wù)。
4 – 系統(tǒng)級(jí)別沒(méi)有任何規(guī)定。可以自由更改,不影響系統(tǒng)功能。
5 – 基于圖形的多用戶模式,類似于Windows下的GUI。
典型的系統(tǒng)只用到0-5級(jí)運(yùn)行級(jí)別。在不同的運(yùn)行級(jí)別,Linux內(nèi)核會(huì)啟動(dòng)執(zhí)行不同的用戶空間程序,并關(guān)閉不需要的服務(wù)。
五、登錄
用戶啟動(dòng)提交用戶名和密碼后,系統(tǒng)會(huì)進(jìn)行身份驗(yàn)證,如果身份驗(yàn)證成功,用戶就會(huì)登錄到系統(tǒng)。
在Linux啟動(dòng)流程中,BIOS、引導(dǎo)加載程序、內(nèi)核初始化、用戶模式初始化和登錄過(guò)程都是不可或缺的環(huán)節(jié)。用戶最終將會(huì)登錄到一個(gè)完全初始化且運(yùn)行良好的系統(tǒng)中,可以在其中盡情地進(jìn)行其所有需要的操作。
本文詳細(xì)解析了linux啟動(dòng)代碼的過(guò)程,并從技術(shù)層面細(xì)致地介紹了從開(kāi)機(jī)到登錄的完整流程。對(duì)于系統(tǒng)調(diào)試和管理人員來(lái)說(shuō),理解這些過(guò)程是非常有用和必要的。它們可以使操作系統(tǒng)管理員了解Linux內(nèi)部故障排除和優(yōu)化的工作方式,以及如何使其更高效、更靈活。
相關(guān)問(wèn)題拓展閱讀:
- 如何查看和停止Linux啟動(dòng)的服務(wù)
- linux開(kāi)機(jī)啟動(dòng)腳本
如何查看和停止Linux啟動(dòng)的服務(wù)
你好,
1. 查看Linux啟動(dòng)的服務(wù)
. 代碼如下:
chkconfig –list 查詢出所有當(dāng)前運(yùn)行的服務(wù)
chkconfig –list atd 查詢atd服務(wù)的當(dāng)前狀態(tài)
2.停止所有服務(wù)或毀胡并且在下次系統(tǒng)啟動(dòng)時(shí)不再啟動(dòng),如下余蔽所示:
. 代碼如下:
chkconfig –levelsNetworkManager off
如果想查看當(dāng)前處于運(yùn)行狀態(tài)的服務(wù),用如下衫攔語(yǔ)句過(guò)濾即可
. 代碼如下:
chkconfig –list |grep on
3.如果只是想當(dāng)前的設(shè)置狀態(tài)有效,在系統(tǒng)重啟動(dòng)后即不生效的話,可以用如下命令停止服務(wù)
. 代碼如下:
service sshd stop
linux開(kāi)機(jī)啟動(dòng)腳本
需要自己寫一個(gè)腳本
腳本內(nèi)容是
一個(gè)死循環(huán),里面包含查詢進(jìn)程的命令ps,讓后grep出你的進(jìn)程
如果發(fā)現(xiàn)你的進(jìn)程就認(rèn)為啟動(dòng)成功,沒(méi)發(fā)現(xiàn)就一直等待。
腳本例子,監(jiān)控mysql
s_port=`netstat -na|grep “LISTEN”|grep “3306”|awk -F+ ‘{print $5}’`
if ; then
echo ” mysql is running “
echo $s_logfie
else
echo ” mysql is down try start ” > $s_logfie_err
$s_mysqldir/share/mysql/mysql.server restart –user=root
sleep 10
s_port=`netstat -na|grep “LISTEN”|grep “3306”|awk -F+ ‘{print $5}’`
if ;then
echo ” mysql start ok “
else
echo ” mysql start fail “
fi
fi
linux啟動(dòng)代碼的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux啟動(dòng)代碼,Linux啟動(dòng)代碼詳解:從開(kāi)機(jī)到登錄的完整流程,如何查看和停止Linux啟動(dòng)的服務(wù),linux開(kāi)機(jī)啟動(dòng)腳本的信息別忘了在本站進(jìn)行查找喔。
成都網(wǎng)站營(yíng)銷推廣找創(chuàng)新互聯(lián),全國(guó)分站站群網(wǎng)站搭建更好做SEO營(yíng)銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價(jià)格厚道。提供成都服務(wù)器托管租用、綿陽(yáng)服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽(yáng)服務(wù)器機(jī)房服務(wù)器托管租用。
標(biāo)題名稱:Linux啟動(dòng)代碼詳解:從開(kāi)機(jī)到登錄的完整流程 (linux啟動(dòng)代碼)
轉(zhuǎn)載源于:http://www.5511xx.com/article/dppppgj.html


咨詢
建站咨詢
