1. 程式人生 > 其它 >linux 啟動流程

linux 啟動流程

linux組成

linux主要由核心kernel和rootfs根檔案系統兩大部分組成

kernel:負責系統的程序管理、記憶體管理、網路管理、檔案系統、驅動程式等功能

rootfs:包括了程式和程式執行需要的庫檔案等

 

linux啟動流程

1 bios加電自檢,檢測cpu、主機板、記憶體、鍵盤、序列介面等等硬體資訊。檢測通過會找到第一個啟動裝置(包含作業系統的硬碟)

2 找到啟動裝置之後,讀取該裝置的MBR(master boot record、主引導記錄)

MBR在啟動裝置(磁碟)的第一個扇區,大小是512個位元組,包括了Boot Loader、分割槽表、分割槽表標記位

  • Boot Loader 佔446位元組,儲存著作業系統相關資訊,主要功能是把核心載入到記憶體中執行
  • parttion table 分割槽表,佔64位元組,每個主分割槽佔16個位元組
  • 分割槽表有效性標記佔用2位元組

3 cpu讀取mbr到記憶體,執行grub程式把核心載入到記憶體.

bootloader 是一個抽象的概念,grub是一個執行bootloader的工具,相當於一個mini的作業系統

 

 

 

centos7或8忘記密碼

方法一

  1.  開機過程中按任意鍵暫停啟動,按e進入編輯模式
  2.  把游標移動到 linux 開始的行,在末尾新增核心引數 rd.break,之後按 crtl+x 啟動
  3.  輸入命令 mount -o remount,rw /sysroot
  4.  輸入命令 chroot /sysroot
  5.  passwd root 互動式修改密碼               
  6.  如果系統開啟了selinux,更改完密碼還需要執行touch /.autorelabel
  7.  exit,之後reboot重啟

方法二

  1.  開機過程中按任意鍵暫停啟動,按e進入編輯模式
  2.  把游標移動到 linux 開始的行,在末尾新增 rw init=/sysroot/bin/sh,之後按 crtl+x 啟動
  3.  chroot /sysroot
  4.  passwd root 互動式修改密碼             
  5.  如果系統開啟了selinux,更改完密碼還需要執行touch /.autorelabel
  6.  exit,之後reboot重啟