grub啟動

grub: GRandUnified Bootloader(統一的引導模式分為3個階段)

    grub 0.97: grub legacy
    grub 2.x: grub2



grub legacy:

    stage1: mbr
    stage1_5: mbr之后的扇區,讓stage1中的bootloader能識別stage2所在的分區上的文件系統
    stage2:磁盤分區(/boot/grub/)

    配置文件:/boot/grub/grub.conf<--/etc/grub.conf

    stage2及內核等通常放置于一個基本磁盤分區

? 功用: (1) 提供啟動菜單、并提供交互式接口 a:內核參數 e: 編輯模式,用于編輯菜單 c: 命令模式,交互式接口 (2) 加載用戶選擇的內核或操作系統 允許傳遞參數給內核 可隱藏啟動菜單 (3) 為菜單提供了保護機制 為編輯啟動菜單進行認證 為啟用內核或操作系統進行認證

如何識別硬盤設備
        (hd#,#)
            hd#: 磁盤編號,用數字表示;從0開始編號
            #: 分區編號,用數字表示; 從0開始編號

            (hd0,0) 第一塊硬盤,第一個分區        

grub的命令行接口
    help: 獲取幫助列表
    help KEYWORD: 詳細幫助信息
    find (hd#,#)/PATH/TO/SOMEFILE:
    root (hd#,#)

    kernel /PATH/TO/KERNEL_FILE: 設定本次啟動時用到的內核文件;額外還可添加許多內核支持使用的cmdline參數
        例如:max_loop=100 selinux=0init=/path/to/init

    initrd/PATH/TO/INITRAMFS_FILE: 設定為選定的內核提供額外文件的ramdisk

    boot: 引導啟動選定的內核



    手動在grub命令行接口啟動系統

        grub> root (hd#,#)
        grub> kernel /vmlinuz-VERSION-RELEASE roroot=/dev/DEVICE
        grub> initrd/initramfs-VERSION-RELEASE.img
        grub> boot


 grub legacy配置文件

         配置文件:/boot/grub/grub.conf
            default=#: 設定默認啟動的菜單項;落單項(title)編號從0開始
            timeout=#:指定菜單項等待選項選擇的時長
            splashimage=(hd#,#)/PATH/XPM_FILE:菜單背景圖片文件路徑
            hiddenmenu:隱藏菜單
            password [--md5] STRING: 啟動菜單編輯認證

            title TITLE:定義菜單項“標題”, 可出現多次
                root (hd#,#):查找stage2及kernel文件所在設備分區;為grub的根
                kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:啟動的內核
                initrd/PATH/TO/INITRAMFS_FILE: 內核匹配的ramfs文件
                password [--md5|--encrypted ] STRING: 啟動選定的內核或操作系統時進行認證

            cat /proc/cmdline 內核參數
            內核參數文檔:/usr/share/doc/kernel-doc-2.6.32/Documentation/kernel-parameters.txt


            生成grub口令

                grub-md5-crypt
                grub-crypt



    破解root口令:

            啟動系統時,設置其運行級別1

                進入單用戶模式:
                    (1) 編輯grub菜單(選定要編輯的title,而后使用e命令)
                    (2) 在選定的kernel后附加1, s, S或single都可以
                    (3) 在kernel所在行,鍵入“b”命令



            安裝grub:

                (1) grub-install
                        安裝grub stage1和stage1_5到/dev/DISK磁盤上,并復制GRUB相關文件到DIR/boot目錄下
                        grub-install --root-directory=DIR /dev/DISK

                (2) grub【安裝時依賴grub下的配置文件】
                        grub> root (hd#,#)
                        grub> setup (hd#)

原創文章,作者:GYF,如若轉載,請注明出處:http://www.www58058.com/75883

(0)
GYFGYF
上一篇 2017-05-15 22:28
下一篇 2017-05-15 23:17

相關推薦

  • Linux用戶與權限管理

    由于Linux是多用戶、多任務系統,出于一些需要,當我們創建的文件希望對一部分用戶開放,對一部分用戶隱藏的時候應該怎么辦呢?這樣的話,就需要涉及到Linux系統中對用戶以及對文件權限的管理。 一、相關文件 在Linux中,一切配置文件都是以文本文檔的方式來保存的,同樣用戶的信息也保存在系統的一些文件中,其位置為/etc/passwd。此文件只有root用戶具…

    Linux干貨 2016-08-05
  • LVM: Logical Volume Manager 邏輯卷管理

      一、LVM介紹         LVM: Logical Volume Manager, Version: 2             …

    Linux干貨 2016-09-19
  • 一起學DHCP系列(一)開篇、概述

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeffyyko.blog.51cto.com/28563/162108     從本節開始,我們將開始討論有關DHCP服務器的相關問題,從易到難一步步理解DHCP服務。還是一樣,在…

    Linux干貨 2015-03-25
  • 軟件包管理詳解

      軟件包管理器 1、功能: (1)將軟件包打包成一個文件,其中包括: ①二進制程序 ②庫文件 ③配置文件 ④幫助文件 (2)生成數據庫,追中所安裝的每一個文件。 2、軟件包管理器的核心功能: (1)制作軟件包 (2)安裝、卸載、升級、查詢、校驗 3、不同發行版的不同的…

    2017-08-11
  • 什么叫Linux

    什么叫linux:     Linux是一套免費使用和自由傳播的類Unix操作系統,它主要用于基于Intel x86系列CPU的計算機上。這個系統是由全世界各地的成千上萬的程序員設計和實現的。其目的是建立不受任何商品化軟件的版權制約的、全世界都能自由使用的Unix兼容產品。 誰編寫的linux: Linux的出現,最早…

    Linux干貨 2017-03-27
  • Shell腳本編程

    Shell腳本編程

    2017-09-20
欧美性久久久久