1. 程式人生 > 其它 >Ubuntu系統的開機全流程介紹及grub美化

Ubuntu系統的開機全流程介紹及grub美化

Ubuntu系統的開機全流程介紹及grub美化 目錄

前言

之前一直對grubboot loader等概念不甚瞭解,趁著今天國慶假期,梳理以下,並且順便美化一下我的Grub介面。

以下介紹的詳細參考見於The Linux Booting Process - 6 Steps Described in Detail

Ubuntu開機經歷的步驟

開啟電源鍵後直到OS開機正常啟動需要經歷以下步驟:

BIOS

BIOS 查詢、載入和執行 boot loader ,

Boot Loader

boot loader 是一段程式,用來選擇並載入 Kernel(即核心)。boot loader 所在的區域叫做 Master Boot Record(MBR),中文翻譯為主引導記錄,是一塊物理介質區域。

Linux系統中的 boot loader 統一都叫做grub

Kernel

Kernel執行起來之後就會有一系列的初始化程式和 Run level的程式被執行,這個時候我們的作業系統就跑起來了。

配置 Grub 的個性化主題

一共有四個比較集中的地方可以看到grub相關的配置:

  • /usr/share/grub/default/grub
  • /etc/default/grub
  • /etc/grub.d
  • /boot/grub/grub.cfg

逐一介紹如下:

/usr/share/grub/default/grub

參考下面的回答,所有 /usr/share 目錄下的檔案都是 example configuration files,即都是示例的配置檔案,相當於一個備份區吧,如果你的個性化配置檔案出了什麼問題想恢復到原來的預設配置,那麼這些檔案都可以複製到/etc資料夾下。/etc目錄下的檔案都是系統所需要用到的。

/etc/default/grub

/etc/default/grub is where you can set simple options for many GRUB settings. It is parsed as a shell script.

這個檔案是用來進行簡單的 GRUB 配置的,該檔案可以理解為是一個shell指令碼。編輯該檔案就可以改變 GRUB 的設定。修改完需要執行grub-update使新配置生效。grub-update的實際作用就是將相應的修改寫入到/boot/grub/grub.cfg檔案中,所以作為使用者而言,改動該檔案即可,無需直接修改/boot/grub/grub.cfg進行個性化配置。

/etc/grub.d

/etc/grub.d contains shell scripts which generate GRUB configuration (based on settings on /etc/default/grub). update-grub (aka grub-mkconfig) runs these scripts to generate actual GRUB configuration.

/etc/grub.d目錄下包含了很多用來配置 GRUB 的shell指令碼(這些配置是在/etc/default/grub配置的基礎上進行的更復雜的配置)。執行grub-update使新配置生效。

/boot/grub/grub.cfg

/boot/grub/grub.cfg is where the generated configuration is saved for GRUB to use.

被修改的前兩個檔案執行grub-update後所生成的檔案就是/boot/grub/grub.cfg檔案,是 GRUB 實際使用到的配置檔案。

下載主題

Grub-theme-vimix - Gnome-look.org上下載完主題壓縮包後,參照下圖:

一步步安裝即可。特別的一點是這個主題的製作者還寫了一個安裝指令碼替代使用者執行上述步驟,只不過與該步驟有細微的差別:把主題選在了/usr/share/grub/themes資料夾下;多了一個對/etc/default/grub檔案的備份。

配置好後的效果為

相關參考可見於:

更詳細的解釋參考來源

還能在這些地方找到我