首頁 運維 linux運維 linux啟動順序

linux啟動順序

Aug 07, 2019 pm 02:57 PM
linux

以下跟大家介紹linux啟動順序,更多Linux使用教學請造訪Linux影片教學進行學習!

linux啟動順序

linux啟動順序流程圖:

linux啟動順序

 

 

 

啟動第一步-載入BIOS

當你開啟電腦電源,電腦會先載入BIOS 訊息,BIOS資訊是如此的重要,以至於計

算機必須在最開始就找到它。這是因為 BIOS 包含了 CPU 的相關資訊、裝置啟動順序訊號

利息、硬碟資訊、記憶體資訊、時脈資訊、PnP 特性等等。在此之後,電腦心裡就有譜了,

知道應該去讀取哪個硬體設備了。

 

啟動第二步-讀取MBR

#眾所周知,硬碟上第0 磁軌第一個磁區稱為MBR,也就是Master Boot Record,即主

引導記錄,它的大小是512 字節,別看地方不大,可裡面卻存放了預啟動訊息、分區表信

息。

系統找到 BIOS 所指定的硬碟的 MBR 後,就會複製到 0x7c00 位址所在的實體記憶體中。

其實被複製到實體記憶體的內容就是 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:重新引導系統,也就是重啟

 

啟動第六個步驟-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

#你如果打開了此文件,裡面有一句話,讀過之後,你就會對此指令的作用一目了然

rc.local 就是在一切初始化工作後,Linux 留給使用者進行個人化的地方。你可以把你想設定

和啟動的東西放到這裡。

 

啟動第十個步驟-執行/bin/login 程序,進入登入狀態

以上是linux啟動順序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1246
24
Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

git怎麼查看倉庫地址 git怎麼查看倉庫地址 Apr 17, 2025 pm 01:54 PM

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

vscode上一步下一步快捷鍵 vscode上一步下一步快捷鍵 Apr 15, 2025 pm 10:51 PM

VS Code 一步/下一步快捷鍵的使用方法:一步(向後):Windows/Linux:Ctrl ←;macOS:Cmd ←下一步(向前):Windows/Linux:Ctrl →;macOS:Cmd →

notepad怎麼運行java代碼 notepad怎麼運行java代碼 Apr 16, 2025 pm 07:39 PM

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

sublime寫好代碼後如何運行 sublime寫好代碼後如何運行 Apr 16, 2025 am 08:51 AM

在 Sublime 中運行代碼的方法有六種:通過熱鍵、菜單、構建系統、命令行、設置默認構建系統和自定義構建命令,並可通過右鍵單擊項目/文件運行單個文件/項目,構建系統可用性取決於 Sublime Text 的安裝情況。

Linux的主要目的是什麼? Linux的主要目的是什麼? Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

laravel安裝代碼 laravel安裝代碼 Apr 18, 2025 pm 12:30 PM

要安裝 Laravel,需依序進行以下步驟:安裝 Composer(適用於 macOS/Linux 和 Windows)安裝 Laravel 安裝器創建新項目啟動服務訪問應用程序(網址:http://127.0.0.1:8000)設置數據庫連接(如果需要)

git軟件安裝 git軟件安裝 Apr 17, 2025 am 11:57 AM

安裝 Git 軟件包括以下步驟:下載安裝包運行安裝包驗證安裝配置 Git安裝 Git Bash(僅限 Windows)

See all articles