首頁 > 軟體

GRUB啟動載入程式設定及命令列介面詳解

2020-06-16 16:55:12

一.版本

grub:Grand Unified Bootloader
grub 0.x:grub legacy
grub 1.x:grub2

二、grub legacy

三個過程
stage1:安裝在mbr
stage1_5:存放在mbr之後的磁區

stage2:存放在磁碟分割區(/boot/grub)

組態檔

/boot/grub/grub.conf、/etc/grub.conf

功用
stage2及核心等通常放置於一個基本磁碟分割區
1.提供選單、並提供互動式介面 •e:編輯模式、用於編輯選單
c:命令模式、互動式介面

2.載入使用者選擇的核心或作業系統 •允許傳遞引數給核心
可隱藏此選單

3.為選單提供保護機制
為編輯選單進行認證

識別裝置
GRUB不區分IDE硬碟和SCSI硬碟,統一使用hdx來標識。其中x指定BISO硬碟編號,從零開始計數,而且通常計算機的IDE硬碟編號在SCSI硬碟前。Grub使用hd(X,Y)編號來識別計算機中某一硬碟的某一分割區。
其中括號一定要用英文半形,且hd後逗號均無空格;
*其中hd(X,Y)的X是指計算機中的X塊硬碟,編號從0開始,在BIOS中設定引導的第一塊硬碟為0,其他的硬碟按照IDE的順序排列,依次為1,2,3,...

hd(X,Y)中的Y指的是硬碟中劃分出來的第幾個分割區。編號也是從0開始,其他的分割區是1,2,3,,需要注意的是:0,1,2,3,是指硬碟中的主分割區,如果是擴充套件分割區,編號將從4開始,一直到最後一個擴充套件分割區。

grub命令列介面

help:獲取幫助列表
help KEYWORD:詳細幫助資訊
find (hd#,#)/PATH/TO/SOMEFILE:查詢
kernel /PATH/TO/KERNEL_FILE:設定本次啟動時用到的核心檔案;額外還可以新增許多核心支援使用的cmdline引數

initrd /PATH/TO/INITRAMFS_FILE:設定為選定的核心提供額外檔案的ramdisk
 boot:引導啟動選定的核心

手動在grub命令列介面啟動系統

grub>root(hd#,#)grub所在的的根
grub>kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE 設定本次啟動用到的核心檔案
grub>initrd /initrafs-VERSION-RELEASE.img
 grub>boot 啟動

三、檢視組態檔/boot/grub/grub.conf
default=0    設定預設啟動選單項
timeout=5    選單項等待選項時間為5s
splashimage=(hd0,0)/grub/splash.xpm.gz    指明選單背景圖片路徑為
hiddenmenu  隱藏選單
title CentOS (2.6.32-358.6.1.el6.x86_64)  定義選單項
    root (hd0,0)  grub查詢stage2及kernel檔案所在裝置分割區,grub的根
    kernel /vmlinuz-2.6.32-358.6.1.el6.x86_64 ro root=/dev/vg_have/lv_root rd_NO_LUKS LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 crashkernel=auto rhgb quiet      啟動的核心
    initrd /initramfs-2.6.32-358.6.1.el6.x86_64.img      核心匹配的ramfs檔案

本文永久更新連結地址https://www.linuxidc.com/Linux/2018-02/150958.htm


IT145.com E-mail:sddin#qq.com