日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 系统的启动顺序

發布時間:2023/12/13 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 系统的启动顺序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 第一步:加載BIOS
  • 當你打開ia計算機的電源,計算機會首先加載計算機主板的BIOS信息,因為它包含了CPU的相關信息,設備啟動順序[安裝系統的U盤啟動順序],內存信息,時鐘信息,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 , botting the kernel " ,也就是內核加載完畢的意思,系統將解壓好的內核放置到內存之中,并調用start_kernel()函數 來啟動一系列的初始化函數并初始化各種設備,完成Linux核心環境的建立,至此,Linux內核已經初始化完畢了,基于Linux 的程序 應該可以正常運行了。
    • 第五步:用戶層init依據inittab文件來設定運行等級
  • 內核被加載后,第一個運行的程序是/sbin/init ,該文件會讀取/etc/inittab 文件,并根據次文件進行初始化的工作。/etc/inittab文件就死設定linux的運行等級,其設定形式如下:
  • # inittab is no longer used when using systemd. # # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM. # # Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target # # systemd uses 'targets' instead of runlevels. By default, there are two main targets: # # multi-user.target: analogous to runlevel 3 # graphical.target: analogous to runlevel 5 # # To view current default target, run: # systemctl get-default # # To set a default target, run: # systemctl set-default TARGET.target #

      0 :關機

    ? ? ? ?1 :單用戶

    ? ? ? ?2 :無網絡支持的多用戶模式

    ? ? ? ?3 :用網絡支持的多用戶模式

    ? ? ? 4? :保留,暫未使用

    ? ? ? 等等

    ? ? 不同的linux 發行版本,對于啟動的控制不一樣

    • 第六步 :
  • ? ? ? ?設定了運行等級之后,Linux執行的地一個用戶層文件就是 /etc/rc.d/rc.sysinit腳本程序,里面會進行設定 PATH,設定網絡配置[/etc/sysconfig/network],啟動swap分區,設定/proc等等
    • 第七步:啟動內核模塊
  • 具體是根據/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程序,進入登錄狀態
  • 就是linux的登錄界面,等待用戶輸入用戶名和密碼了。
    • 備注:以上可以參照centos7以上的版本,相關的文件都比較容易查看的。
    • 文章參考地址:http://m.blog.chinaunix.net/uid-26495963-id-3066282.html?winzoom=1.375

    轉載于:https://www.cnblogs.com/bing-yu12/p/7619869.html

    總結

    以上是生活随笔為你收集整理的Linux 系统的启动顺序的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。