新聞中心
Linux操作系統(tǒng)的啟動從BIOS開始,經(jīng)過一系列的過程,最終完成了內(nèi)核的啟動,進入用戶態(tài)。Linux的啟動過程涉及到多個層次,涉及到不同的部件、設(shè)備以及軟件系統(tǒng)。本文將深入探討Linux啟動層之間的聯(lián)系及其作用。

創(chuàng)新互聯(lián)建站是專業(yè)的寧河網(wǎng)站建設(shè)公司,寧河接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行寧河網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
1. BIOS(基本輸入輸出系統(tǒng))
BIOS作為一種固件,是計算機啟動的之一個階段。當電腦或服務(wù)器上電后,BIOS首先被啟動。BIOS的作用是初始化計算機硬件,設(shè)置基本輸入輸出系統(tǒng)等重要參數(shù)。同時,BIOS還負責(zé)檢查計算機的硬件,確保其正常工作。具體而言,BIOS的初始化過程包括檢測計算機硬件,檢查內(nèi)存、掃描插入的硬件設(shè)備,設(shè)置硬盤和光驅(qū)啟動順序以及其他一些響應(yīng)用戶操作的設(shè)置等。因此,BIOS在整個計算機啟動過程中起著至關(guān)重要的作用。
2. MBR(主引導(dǎo)記錄)
MBR是存儲在計算機硬盤的之一個扇區(qū)512字節(jié)的特殊數(shù)據(jù)結(jié)構(gòu)。MBR通常包含兩個部分:分區(qū)表以及主引導(dǎo)程序。分區(qū)表記錄的是當前硬盤的分區(qū)信息。而主引導(dǎo)程序則是硬盤啟動操作的一部分。當BIOS完成初始化程序的過程后,它將查找啟動程序的主引導(dǎo)記錄,讀取MBR中的主引導(dǎo)程序,將控制權(quán)轉(zhuǎn)移到引導(dǎo)程序。因此,MBR的主引導(dǎo)程序是啟動Linux操作系統(tǒng)的關(guān)鍵。
3. GRUB(GRand Unified Bootloader)
GRUB是一個多操作系統(tǒng)引導(dǎo)程序。它可以啟動各種不同的操作系統(tǒng),包括Windows和Linux。Grub具有較高的可擴展性,可實現(xiàn)多層次的菜單式引導(dǎo)、支持多種文件系統(tǒng)和硬件配置等。在Linux中,Grub的作用是負責(zé)啟動Linux內(nèi)核,現(xiàn)代Linux發(fā)行版使用的是GRUB2版本。GRUB2支持多層級菜單式引導(dǎo)機制,它在內(nèi)部使用文件系統(tǒng)來管理內(nèi)核鏡像和配置文件。GRUB松耦合的架構(gòu)使得它可以更好的適應(yīng)代碼的更新和維護,同時還支持加密引導(dǎo)過程以增強系統(tǒng)安全性。
4. Linux內(nèi)核
Linux內(nèi)核是Linux操作系統(tǒng)的核心部分,負責(zé)管理計算機的硬件和軟件資源,包括進程調(diào)度、內(nèi)存管理、設(shè)備驅(qū)動程序等。Linux內(nèi)核在運行時會讀取系統(tǒng)配置文件,根據(jù)配置信息初始化不同的軟件系統(tǒng)。Linux內(nèi)核在系統(tǒng)整體啟動的過程中扮演了極其重要的角色。其工作原理是嘗試找到之一個文件系統(tǒng),將文件系統(tǒng)掛載到root(/)目錄并啟動init進程。
5. init進程
Linux系統(tǒng)的init進程是啟動整個Linux系統(tǒng)中的之一個進程,它負責(zé)進行系統(tǒng)初始化,并啟動其他的進程。init進程會檢查一些系統(tǒng)文件和數(shù)據(jù),然后執(zhí)行規(guī)定的操作。init進程會自動讀取/etc/inittab配置文件,并根據(jù)配置文件的規(guī)則啟動一組進程。如果這些進程在某種程度上停止工作,init進程將會自動重啟它們。在現(xiàn)代Linux系統(tǒng)中,init進程已經(jīng)被系統(tǒng)管理器系統(tǒng)(systemd)所取代。systemd不僅繼承了init的功能,還提供了系統(tǒng)啟動時的并行化、進程管理、服務(wù)管理等插件式的功能。
總體而言,Linux作為一個開源的操作系統(tǒng),它的啟動過程是比較開放和透明的。通過深入學(xué)習(xí)這些啟動層之間的聯(lián)系,可以了解Linux啟動過程的構(gòu)成和內(nèi)部機制。對于學(xué)習(xí)Linux開發(fā)或系統(tǒng)管理員的用戶而言,對于掌握Linux操作系統(tǒng)的啟動流程以及各個層次發(fā)揮的作用都具有非常重要的意義。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導(dǎo)10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,響應(yīng)式網(wǎng)站制作,設(shè)計師量身打造品牌風(fēng)格,熱線:028-86922220linux開機啟動引導(dǎo)項怎么設(shè)置
運行級就是操作系統(tǒng)當前正在運行的功能級別。這個級別從1到6 ,具有不同的功能。
不同的運行級定義如下
# 0 – 停機(千萬不能把initdefault 設(shè)置為0 )
# 1 – 單用戶模式# s init s = init 1
# 2 – 多用戶,沒有 NFS
# 3 – 完全多用戶模式(標準的運行級)
# 4 – 沒有用到
# 5 – X11 多用戶圖形模式(xwindow)
# 6 – 重新啟動 (千萬不要把initdefault 設(shè)置為6 )
這些級別在/etc/inittab 文件里指定。這個文件是init 程序?qū)ふ业闹饕募?,更先運行的服務(wù)是放在/etc/rc.d 目錄下的文件。在大多數(shù)的Linux 發(fā)行版本中,啟動腳本都是位于 /etc/rc.d/init.d中的。這些腳本被用ln 命令連接到 /etc/rc.d/rcn.d 目錄。(這里的n 就是運行級0-6)
chkconfig 命令有五項功能:添加服務(wù),刪除服務(wù),列表服務(wù),改變啟動信息以及檢查特定服務(wù)的啟動狀態(tài)。
語法為:
chkconfig –list
chkconfig –add name
chkconfig –del name
chkconfig name
chkconfig name
chkconfig 沒有參數(shù)運行時,顯示用法。如果加上服務(wù)名,那么就檢查這個服務(wù)是否在當前運行級啟動。如果是,返回 true,否則返回false。 –level 選項可以指定要查看的運行級而不一定是當前運行級。
如果在服務(wù)名后面指定了on,off 或者 reset,那么 chkconfig 會改變指定服務(wù)的啟動信息。on 和 off 分別指服務(wù)在改變運行級時的啟動和停止。reset 指初始化服務(wù)信息,無論有問題的初始化腳本指定了什么。
對于 on 和 off 開關(guān),系統(tǒng)默認只對運行級 3,4, 5有效,但是 reset 可以對所有運行級有效。指定 –level 選項時,可以選擇特定的運行級。
需要說明的是,對于每個運行級,只能有一個啟動腳本或者停止腳本。當切換運行級時,init 不會重新啟動已經(jīng)啟動的服務(wù),也不會再次去停止已經(jīng)停止的服務(wù)。
選項介紹:
–level levels
指定運行級,由數(shù)字 0 到 7 構(gòu)成的字符串,如:
–level 35 表示指定運行級3 和5。
要在運行級別3、4、5中停運 nfs 服務(wù),使用下面的命令:chkconfig –level 345 nfs off
–add name
這個選項增加一項灶鍵新的服務(wù),chkconfig 確保每個運行級有一項 啟動(S) 或者 殺死(K) 入口。如有缺少,則會從缺省的init 腳本自動建立。
–del name
用來刪除服務(wù),并把相關(guān)符號連接從 /etc/rc.d 刪除。
–list name
列表,如果指定了name 那么只是顯示指定的服務(wù)名,否則,列出全部服務(wù)在不同運行級的狀態(tài)。
運行級文件
每個被chkconfig 管理的服務(wù)需要在對應(yīng)的init.d 下的腳本加上兩行或者更多行的注釋。
之一行告訴 chkconfig 缺省啟動的運行級以及啟動和停止的優(yōu)先級。如果某服務(wù)缺省不在任何運行級啟動,那么使用 – 代替運行級。
第二行對服務(wù)進行描述,可以橘畝用 跨行注釋。
例如,random.init 包含三行:
# chkconfig:
# description: Saves and restores system entropy pool for
# higher quality random number generation.
表明 random 腳本應(yīng)該在運行級 2, 3, 4, 5 啟動,啟動隱伍巧優(yōu)先權(quán)為20,停止優(yōu)先權(quán)為 80。
好了,介紹就到這里了,去看看自己目錄下的/etc/rc.d/init.d 下的腳本吧。
設(shè)置自啟動服務(wù):chkconfig –level 345 nfs on
配置啟動項方法
命令行模式
#service servicename status是當前狀態(tài)
#chkconfig –list servicename是查看啟動狀態(tài),也就是是否開機自動啟動
#chkconfig –list 列出所有開機啟動項#chkconfig –level 345 xx off 把不想啟動的項345級別設(shè)置為off(關(guān)閉)(服務(wù)名xx)
界面模式終端中直接輸入#ntsysv
Linux啟動項說明
apmd--apmd用來監(jiān)視系統(tǒng)用電狀態(tài),并將相關(guān)信息通過syslogd寫入日志。也可以用來在電源不足時關(guān)機
arpwatch--用來維護以太網(wǎng)物理地址和ip地址的對應(yīng)關(guān)系
atd--運行用戶用at命令調(diào)度的任務(wù)。也在系統(tǒng)負荷比較低時運行批處理任務(wù)
autofs--當您需要時自動轉(zhuǎn)載文件系統(tǒng),而當您不需要時自動卸載
chargen--tcp版本的chargen server
chargen-udp--udp版本的chargen server
crond--周期地運行用戶調(diào)度的任務(wù)。比起傳統(tǒng)的unix版本添加了不少屬性,而且更安全,配置更簡單
daytime--tcp版本的daytime server
daytime-udp--udp版本的daytime server
echo--tcp版本的echo server
echo-udp--udp版本的echo server
eklogin--接受rlogin會話鑒證和用kerberos5加密的一種服務(wù)
finger--用于應(yīng)答finger請求的服務(wù)
gpm--為文本模式下的linux程序提供了鼠標的支持。它也支持控制臺鼠標的拷貝,粘帖操作以及彈出式菜單 (必須)
gssftp--接受可被kerberos5驗證的ftp連接
httpd--h(huán)ttp是著名的www服務(wù)器,可用來提供html文件以及cgi動態(tài)內(nèi)容服務(wù)
identd--提供驗證身份的方法
ipchains--ipchains包過濾防火墻
iptables--iptables包過濾防火墻
ipvsadm--調(diào)用ipvsadm來建立和維護ipvs路由選擇表
isdn--啟用isdn(綜合服務(wù)數(shù)字網(wǎng))服務(wù)
kadmin--更改在主控kdc中使用本機的kadmin工具,或透過kadmin服務(wù)來完成
kdcrotate--設(shè)置配置文件/etc/krb5.con中的kdcs表項
keytable--該程序的功能是轉(zhuǎn)載您在/etc/sysconfig/keyboards里說明的鍵盤映射表
klogin--接受bsd方式的rlogin會話,但需要使用kerbeos5驗證
kprop--是否允許kdc接收來的master kdc的升級
krb5-telnet--允許普通的telnet登陸,但也可使用kerberos5驗證
krb524--是以改變kerberos5到kerberosIV的賃證
krb5kdc--開啟kerberosIV和5所需的連接以獲得賃證
kshell--接受rshell命令鑒證和用kerberos加密的服務(wù)
kudzu--運行硬件檢測,并可選擇性地設(shè)置硬件變化
lpd--lpd是系統(tǒng)打印守護程序,負責(zé)將lpr等程序提交給打印作業(yè)
netfs--負責(zé)裝載/卸載nfs、samba、ncp文件系統(tǒng)
network--激活/關(guān)閉啟動時的各個網(wǎng)絡(luò)接口 (必須)
nfs--nfs是一個流行的基于tcp/ip網(wǎng)絡(luò)的文件共享協(xié)議.該服務(wù)提供了nfs文件共享服務(wù)
nfslock--提供nfs文件上鎖功能
nscd--該服務(wù)負責(zé)密碼和組的查詢,并且緩沖查詢結(jié)果
portmap--portmap用來支持rpc連接,rpc被用于nfs以及nis等服務(wù)
postgresql--postgresql關(guān)系數(shù)據(jù)庫引擎
random--保存和恢復(fù)系統(tǒng)的高質(zhì)量隨機數(shù)生成器,這些隨機數(shù)是系統(tǒng)一些隨機行為提供的
rlogin--rlogin程序服務(wù),提供來自遠程信任主機的注冊功能
routed--該守護程序支持rip協(xié)議的自動ip路由表維護.rip主要使用在小型網(wǎng)絡(luò)上,大一點的網(wǎng)絡(luò)就需要復(fù)雜一點的協(xié)議
rsh--提供rcmd程序或者rsh程序的服務(wù)
rstatd--rstat協(xié)議允許網(wǎng)絡(luò)上的用戶獲得同一網(wǎng)絡(luò)上各機器的性能參數(shù)
rsync--對ftp服務(wù)的一個很好的附加,允許循環(huán)碼求和校驗等
rusersd--該服務(wù)使網(wǎng)絡(luò)用戶可以定位同一網(wǎng)絡(luò)上的其他用戶
rwalld--rwall協(xié)議允許遠程用戶向在同一系統(tǒng)中活躍著的終端發(fā)送消息,類似wall的本地行為
rwhod--允許遠程用戶獲得運行rwho精靈的機器上所有已登錄用戶的列表,與finger類似
b--啟動和關(guān)閉bd和nmbd精靈程序以提供b網(wǎng)絡(luò)服務(wù)
snortd--一個輕量級的網(wǎng)絡(luò)入侵檢測工具
swat--samba網(wǎng)絡(luò)配置工具,可以通過流覽器的901端口連接使用swat
syslog--syslog是操作系統(tǒng)提供一種機制,守護程序通常使用這些機制將各種信息寫到各個系統(tǒng)日志文件 (必須)
telnet--提供telnet服務(wù),使用未加密的用戶/密碼組進行驗證
time--tcp版本的rfc 868 time server
time-udp--udp版本的rfc 868 time server
webmin--webmin是基于web的集系統(tǒng)管理與網(wǎng)絡(luò)管理于一身的強大管理工具
xfs--在引導(dǎo)和關(guān)閉時啟動和停上x字體服務(wù),并可能重新生成字體表 (必須)
xinetd--因特網(wǎng)操作服務(wù)程序。提供類似于inetd+tcp_wrapper的功能,但是更加強大和安全,監(jiān)控網(wǎng)絡(luò)對各種它管理的服務(wù)的需求,并在要的時候啟動相應(yīng)的服務(wù)程序
ypbind--實現(xiàn)網(wǎng)絡(luò)信息服務(wù)的服務(wù)器端
redhat 下常用服務(wù)介紹
anacron 不考慮系統(tǒng)downtime期間的cron服務(wù)
amd 自動安裝NFS守候進程
apmd 高級電源管理
arpwatch 記錄日志并構(gòu)建一個在LAN接口上看到的以太網(wǎng)地址和IP地址對數(shù)據(jù)庫
atd 用于at和batch的服務(wù)
autofs 自動安裝管理進程automount,與NFS相關(guān),依賴于NIS
crond 為Linux下自動安排的進程提供運行服務(wù).
Gpm 提供字符模式下對鼠標的支持.
Keytable 用于裝載鍵盤鏡像
Kudzu 硬件探測器
Netfs 安裝和卸載NFS、SAMBA和NETWARE網(wǎng)絡(luò)文件系統(tǒng)
Network 激活已配置網(wǎng)絡(luò)接口的腳本程序
Nfslock NFS鎖定
Pcmcia 安裝pcmcia卡(一般用于筆記本電腦)
Sshd OpenSSH服務(wù)器
Syslog 一個讓系統(tǒng)引導(dǎo)時啟動syslog和klogd系統(tǒng)日志守候里程的腳本
Xfs Xwindow字型服務(wù)器,為本地和遠程X服務(wù)器提供字型集
Linux中常用的啟動和關(guān)機方式有哪些
在Linux系統(tǒng)啟與其它相同,打開系統(tǒng)電源即可可啟。在Linux中關(guān)機命令有shutdown,halt,reboot,init
這幾個命令的原理都不相同,詳解如下:
shutdown
shutdown
命令安全地將系統(tǒng)關(guān)機。
有些用戶會使用直接斷掉電源的方式來關(guān)閉linux,這是十分危險的。因為linux與windows不同,其后臺運行著許多進程,所以強制關(guān)機可能會導(dǎo)
致進程的數(shù)據(jù)丟失﹐使系統(tǒng)處于不穩(wěn)定的狀態(tài)﹐甚至在有的系統(tǒng)中會損壞硬件設(shè)備。
2.halt—-最簡單的關(guān)機命令
冊咐畢 其實halt就是調(diào)用shutdown -h。halt執(zhí)行時﹐殺死應(yīng)用進程﹐執(zhí)行sync系統(tǒng)調(diào)用﹐文件系統(tǒng)寫操作完成后就會停止內(nèi)核。
參數(shù)說明:
防止sync系統(tǒng)調(diào)用﹐它用在用fsck修補根分區(qū)之后﹐以阻止內(nèi)核用老版本的超級塊〔superblock〕覆蓋修補過的超級塊。
并不是真正的重啟或關(guān)機﹐只是寫wtmp〔/var/log/wtmp〕紀錄。
不寫wtmp紀錄〔已包含在選項中〕。
沒有調(diào)用shutdown而強制關(guān)機或重啟。
關(guān)機〔或重啟〕前﹐關(guān)掉所有的網(wǎng)絡(luò)接口。
該選項為缺省選項。就是關(guān)機時調(diào)用poweroff。
2.reboot
reboot的工作過程差不多跟halt一樣﹐不過它是引發(fā)州芹主機重啟﹐而halt是關(guān)機。它的參數(shù)與halt相差不多。
3.init
init是所有進程的祖先﹐它的進程號始終為1﹐所以發(fā)送TERM信號給init會終止所有的用戶進程﹑守護進程等。shutdown
就是使用這種機制。init定義了8個運行級別(runlevel), init 0為關(guān)機﹐init
1為重啟。關(guān)于簡雀init可以長篇大論﹐這里就不再敘述。另外還有 telinit命令可以改變init的運行級別﹐比如﹐telinit
linux 啟動層的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux 啟動層,Linux啟動層之深入解析,linux開機啟動引導(dǎo)項怎么設(shè)置,Linux中常用的啟動和關(guān)機方式有哪些的信息別忘了在本站進行查找喔。
成都網(wǎng)站建設(shè)選創(chuàng)新互聯(lián)(?:028-86922220),專業(yè)從事成都網(wǎng)站制作設(shè)計,高端小程序APP定制開發(fā),成都網(wǎng)絡(luò)營銷推廣等一站式服務(wù)。
本文名稱:Linux啟動層之深入解析(linux啟動層)
瀏覽路徑:http://www.dlmjj.cn/article/dpodijh.html


咨詢
建站咨詢
