linux開機grub
Ⅰ linux 修復grub開機引導(ubuntu)
問題 : 有時候Linux系統/boot分區損壞時,啟動Linux系統時直接進入字元介面的grub引導,並沒有進入到系統或者開機顯示 error:unknow filesystem提示
解決辦法:
Linux開機自動會進入到grub引導介面(如果沒進入到grub引導介面可以按C鍵進入)
第一步:找到系統對應的扇區及/boot/grub目錄
注意 :假設是硬碟介面類型sd,hd0對應是sda hd1對應是sdb
(hd0)≠(hd0)
(hd1,gpt2)=(hd1,2)
ls (hd1,gpt2) 查看(hd1,gpt2)扇區信息(盤符、空間等)
ls (hd1,gpt2)/ 查看(hd1,gpt2)扇區下的內容(文件、文本等)
如果列印每個扇區目錄信息,會出現兩種情況:
1、ls (hd1,gpt2)顯示Unknow filesystem提示說明這個扇區不是我們要找系統分區
2、ls (hd1,gpt2)顯示/boot /proc等系統目錄信息說明這個扇區是我們要找的系統分區
如果找到對應扇區的系統分區,可能會遇到兩種情況:
1、 A目錄下有/boot/grub
2、A目錄下有/boot,B目錄下有/grub (此時在第二步載入系統內核要使用 set prefix=(hd1,gpt2)/grub 命令)
grub > ls
(hd0), (hd1), (hd1, gpt1), (hd2,gpt2), (hd3, gpt3)
第二步:載入系統內核
grub > set root=hd1,2 #此處不需要括弧,加括弧也可以,hd0和hd1是有區別
grub > set prefix=(hd1,2)/boot/grub
grub > linux /vmlinuz root=/dev/sdb2 #vmlinuz必須使用TAB補全(可能有後綴),注意sda或sdb需要看自己的實際情況
grub > initrd /initrd.img-xxx #TAB補全,多內核情況下版本需統一
grub > boot
提示 :如果在boot之後不幸進入BusyBox,說明參數設置有問題,可以仔細查看出錯的日誌,再重啟系統後重復執行第二步操作(重啟系統後上面設置的參數會被清空)。
第三步:修改grub引導
如果成功進入系統,記得要馬上信息grub引導,不然重啟系統後問題還是存在
sudo update-grub2 #grub2命令(高版本使用grub2)
$ sudo grub-install /dev/sdb
第四步:重啟系統
重啟系統後即可正常進入系統
reboot
Ⅱ linux開機如何進入grub界面
我不知道大家為什麼都說按esc鍵,我按esc鍵就沒有任何反映,重點是一定要用滑鼠把虛擬機當前系統窗口點為激活狀態,也就是說虛擬機系統窗口看不到滑鼠了,然後你再按「任意鍵」就可以進入可選菜單了,說一下我的環境
VMware15Pr 安裝在win10操作系統上
CentOS 5.11 安裝 在VMware虛擬機上
從虛擬機開啟linux想要進入啟動時的grub需要注意幾個點:啟動菜單是否配置好,手速是否夠快,系統藍色窗口是否被滑鼠激活等,說明如下~~
/boot/grub/menu.lst(或者/boot/grub/grub.conf),此文件是否timeout參數設置過小,默認是5秒,如果你手速不夠快的話,可以改成10或者20秒。不夠快的話系統會默認進入可選菜單的第一項
hiddenmenu參數默認開啟,也就是說默認菜單選擇界面是不顯示的,只顯示藍色界面(當然你手速夠快也沒啥大問題),如果想開機顯示可選菜單就把這個參數給注釋掉,前面加上# 變成 #hiddenmenu
以上都沒有問題後,在藍色界面出現時按任意鍵就能夠進入可選菜單,這時按下方界面說明 按e、a、c、b等鍵可進行grub命令控制或者修改你的menu.lst文件
Ⅲ linux 開機grub怎麼修復
你在這個提示符下分別輸入以下幾條命令: grub>root (hd0, 0) grub>chainloader +1 grub>boot 看看能不能進windows系統? 從Grub 命令行啟動linux的過程比較復雜,與你安裝的linux版本有關,下面僅僅是舉個例子:(假設裝在/dev/hda7上): grub>kernel (hd0, 6)/boot/vmlinuz-2.6.5-1.385.img root=/dev/hda7 grub>initrd (hd0, 6)/boot/initrd-2.6.5-1.385.img grub>boot
Ⅳ Linux Debian11如何修改Grub2的開機啟動順序
Windows和Linux雙系統,如何修改啟動順序。
1、進入/etc/grub.d目錄,將該目錄下的「30_os-prober」文件改名為「##_os-prober」。##的取值為06~09之間的數字。
2、執行sudo update-grub。
注意是加sudo否則找不到該命令
Ⅳ linux開機grub>命令修復方法
出現grub rescue模式一般是硬碟分區出現變動、導致舊的grub找不到啟動文件而出現的。
出現錯誤具體原因未知,但開機不能引導肯定是grub配置文件出錯,/boot/grub2/grub.cfg
解決方法:
2,grub> 模式下:
輸入:ls 查看所有磁碟分區:hd。x,x......
用:ls hd(x,x)/grub 找grub所在的分區,有正確執行結果的便是
找到linux所在分區後執行:
set prefix=hdx,x/grub
set root=hx,x
insmod normal
再使用normal命令進入系統後,再修復grub 配置。
or:
查找boot分區:
find /boot/grub/menu.lst 或者 find /boot/grub2/grub.cfg
輸入以下命令:
cat hd0,7/boot/grub/grub.conf
關於內核信息的,看一下就明白了。
按照下面命令依次輸入
指定/boot分區使用命令:
grub>root hd0,0
grub>kernel /boot/vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb quiet 回車
grub>initrd /boot/initrd-2.6.18-53.el5.img 回車
boot 回車啟動
Ⅵ Linux 如何修改 Grub
要修改grub,請注意以下幾個重要文件:
1. /boot/grub/grub.cfg
此檔案中包含了GRUB選單資訊。
注意他的開頭,說明了這是由/etc/grub.d與/etc/default/grub所生成的,不要自己編輯。這個檔案還是唯讀屬性,就是要避免你直接去編輯。
若是你修改了這個檔案,只要更新核心,或是以指令更新grub選單,之前的修改就會被覆蓋掉。所以除非不得已,請不要去動這個檔案。要修改,請繼續往下看。
2. /etc/default/grub
此檔案為使用者修改grub設定的主要檔案,真的改爛了請不要急,在/usr/share/grub/default/里還有一份,復制回來即可。
要修改這個檔案,請輸入
sudo gedit /etc/default/grub
3. /etc/grub.d目錄
此目錄放置檔案,會在sudo update-grub時,合並到/boot/grub/grub.cfg中。
注意這些檔案名稱結構,前面都有數字。數字越小的,在合並時放在越前面。常有人問到,grub menu要怎麼更改選項的順序?就是更改數字的大小。
此外請你在這目錄下輸入ls -l,看一下各檔案的屬性,有沒有看到都有x屬性(可執行)?變動x屬性,可以決定這個選項要不要出現在選單內。
以下介紹 /etc/default/grub 所使用的參數,我只介紹大家比較會去修改到的。
1. GRUB_DEFAULT - 設定預設選單選項。有以下幾種作法。
GRUB_DEFAULT=0 以位置來設定預設選單選項。第一筆選單選項為 0,第二筆為 1,以此類推。
GRUB_DEFAULT="xxxx" 在此例中,選單中的位置不會有影響。例如:GRUB_DEFAULT="Ubuntu, Linux 3.11.0-13-generic"。注意要完整全稱。
GRUB_DEFAULT=saved 由儲存預設的作業系統開機。可以用grub-reboot和grub-set-default指令來設定預設作業系統。預設作業系統不會由來自選單中的互動式選擇而被設定。
sudo grub-set-default 0 以位置來設定預設選單選項。第一筆選單選項為 0,第二筆為 1,以此類推。
sudo grub-set-default "xxxx" 以選單名稱來設定
sudo grub-reboot 0 以位置來設定下次重啟開機選項。第一筆選單選項為 0,第二筆為 1,以此類推。
sudo grub-reboot "xxxx" 以選單名稱來重啟開機
2. GRUB_HIDDEN_TIMEOUT - 此設定用來決定GRUB選單會有多長時間不被顯示。
GRUB_HIDDEN_TIMEOUT=0 在單一作業系統電腦中,會立刻以預設作業系統開機。在只有一個作業系統狀況下,這是預設的設定。假如還是要顯示選單,請在這行前加上 # 注銷掉,並確認 GRUB_TIMEOUT 設定為正整數。
GRUB_HIDDEN_TIMEOUT=X x為秒數,空白畫面幾秒後,系統將會依照預設開機,不會出現選單。當螢幕是空白時,使用者可以按下任何鍵以顯示選單。
3. GRUB_HIDDEN_TIMEOUT_QUIET - 在空白畫面時,是否顯示倒數計時器
GRUB_HIDDEN_TIMEOUT_QUIET=true '不'顯示計時器
GRUB_HIDDEN_TIMEOUT_QUIET=fault 顯示計時器
4. GRUB_TIMEOUT - 選單顯示多久之後自動以預設作業系統開機
GRUB_TIMEOUT=10 10秒後以預設系統開機
GRUB_TIMEOUT=-1 持續顯示選單,直到使用者選擇
5. GRUB_GFXMODE - 設定grub選單顯示的解析度。一般是註解掉。
GRUB_GFXMODE=640x480 以640x480模式顯示。
除非開機時選單顯示就有問題,不然不要啟用這個參數,據說會影響進入grub選單的時間。真的要啟用,後面的數值請依照你顯卡可以支援的模式填入,如1280x1024x16,800x600x24,640x480
6. GRUB_DISABLE_LINUX_RECOVERY - 救援模式要不要顯示?
你在選單中是不是都有看到救援模式(recovery mode)?假如你的電腦一向穩定,而且你不太會去動到系統,可以考慮去除 # 註解
GRUB_DISABLE_LINUX_RECOVERY=true '不' 顯示救援模式
7. GRUB_DISABLE_OS_PROBER - 對其他分割區作業系統的檢查
大家應該都知道sudo update-grub可以找到在其他分割區的作業系統,製成選單。但有時我就是不想要他顯示到選單內,那怎麼辦?那注銷掉這一行就可以不檢查其他分割區有沒有作業系統。
GRUB_DISABLE_OS_PROBER=true '不'檢查其他作業系統
8. GRUB_BACKGROUND - 背景影像所在。這個參數,需要自行加入。
GRUB_BACKGROUND= 以/usr/share/background/xxx.jpg當作選單背景。可以.png, .jpg, 或.tga等格式
Ⅶ linux系統管理之grub引導
什麼是GRUB
GNU GRUB 是一個多重操作 系統 啟動管理器。GNU GRUB 是由GRUB(GRand Unified Bootloader) 派生而來。GRUB 最初由Erich Stefan Boleyn 設計和應用;
系統啟動引導管理器,是在計算機啟動後運行的第一個程序,他是用來負責載入、傳輸控制到操作系統的內核,一旦把內核掛載,系統引導管理器的任務就算完成退出,系統引導的其它部份,比如系統的初始化及啟動過程則完全由內核來控制完成;
Linux 中GRUB的配置文件
grub的配置文件位於/boot/grub/grub.conf其內容如下。
default=0 //默認啟動的內核或者說默認啟動的操作系統,0表示的是第一個內核或者操作系統,依次往後排(title所指定的那一項,第一個title是0,第二個是1,依次)
timeout=5 //默認的超時時間,這里定義的是5秒,如果5秒沒有選擇,默認啟動第一個內核或者說是第一個操作系統
splashimage=(hd0,0)/grub/splash.xpm.gz //指定grub的背景圖片,因為grub是系統開機後,運行系統所必須運行的第一個程序,所以,系統所自帶的文件系統還沒有被掛載,好在grub可以直接訪問磁碟文件,grub所識別的硬碟跟linux系統的不太一樣,grub認為,所有的磁碟都是hd的,而系統則不是。所以這里是(hd0,0),第一個0表示的是第一塊硬碟,第二個0表示的是第一個分區。如果要引用磁碟設備,要用括弧括起來,所以這里有一個括弧。
hiddenmenu //隱藏grub菜單,如果有這一項,我們將看不到grub的菜單,只能看到grub的背景圖片,然後上面出現了一個 please any key to enter the menu 下面是 Booting <default=0指定的,默認是第一個title的內容> in <timeout=N 超時時間設置>... 這樣子。具體的看下面的圖

然後可以通過按任意鍵,進入grub的菜單。如果有多個內核的話,我們可以選擇啟動哪一個內核。下圖是grub的菜單

下面的英文內容,相信大家也看得懂。我就不多說了。通過編輯這里的grub菜單,我們可以直接進入單用戶模式,然後修改密碼。忘記密碼的時候,可以試下這個方法。
title Red Hat Enterprise Linux Server (2.6.18-164.el5) //這就是一個標題,就是Grub菜單上所顯示的內容,title關鍵字後面的內核,可以隨便寫,為了方便識別,建議還是寫一些可以從字面意義看出是什麼操作系統或者內核的文字描述。
root (hd0,0) //把hd0,0設置為根目錄,方便訪問.設置文件訪問的起始點,這里設置的根,是grub的根。
kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet //指定內核文件,在內核後面跟的root,指的是操作系統的根目錄在哪兒. rhgb是redhat的一個小工具,顯示各種輸出的信息,包括硬體的初始化,quit表示是靜默模式,不輸出信息.啟動系統的時候會卡一下,然後出現redhat就是因為沒有顯示rhgb小程序的輸出信息.
initrd /initrd-2.6.18-164.el5.img //可以認為這是一個驅動程序,系統剛開機的時候,Grub第一個啟動,要掛載文件系統,就要從文件系統裡面讀取驅動,如果驅動在內核裡面還好,如果不在內核裡面了,那不就……所以,這個可以認為是一個驅動。其實,他是一個微小的linux系統,這個系統裡面,只包含了驅動程序,沒有其它文件。可以先把它重命令為.gz的,然後解壓,解壓後再用cpio解壓,就可以看到其內容了。目錄結構跟你的linux系統是一樣的,只不過沒有文件,只有驅動程序而已。
剛才說過,可以直接通過這里改密碼,這樣是很不安全的。也就是說,如果別人能接觸到我們的物理伺服器,他就可以直接更改我們系統的密碼,所以,我們可以給grub 加密 碼,加密碼的方法就是直接在grub.conf中指定,可以用關鍵字password 後面跟密碼來實現,但是這樣的密碼是明文的,也不安全,所以我們可以用password --md5 通過grub的md5加密工具來加密,然後寫到password --md5的後面。grub的md5加密工具是grub-md5-crypt ,直接使用這個命令,輸出密碼,然後會生成一段MD5加密後的值,寫到關鍵字後面就可以實現md5加密grub了。
寫的位置的不同,加密的效果也就不一樣,我們可以寫到一個title裡面,只對指定的內核或者說操作系統來加密,當啟動該內核或者系統的時候,會要求用戶輸入grub的密碼。當寫在所有的title外面的時候,編譯grub菜單的時候,會要求輸入密碼,這時候密碼先按p鍵輸入密碼,然後再按e鍵,才能編輯。
手動安裝GRUB
安裝grub有兩種方法可以使用。下面進入詳細的介紹,如果某些地方說的不太准確,希望大家能夠提出,TKS
第一
可以使用grub-install命令來進行安裝,具體方法是
grub-install --root-directory=/要安裝到哪個目錄 /要安裝的設備
例:我這里用 虛擬機 演示一下,新加了一塊磁碟,然後分區格式化(該操作不演示),然後掛載,然後用命令安裝,如下圖
x
注意:這里掛載點一定是boot目錄,可以不是/mnt,但最後掛載的目錄名字,一字叫boot,不然會出問題的。還有安裝的時候--root-directory=一定不要指定到boot目錄,要指定到boot所在的目錄,因為grub安裝的時候,會去找boot目錄,如果找不到,會報錯的。當我們把盤掛載到boot之後,可以認為,該盤的名字就叫boot,所以,它會在該盤內寫入bootloader,以引導系統,如果我們安裝的時候指定到了boot,那麼就是把bootloader的內容寫到了文件裡面,而不是硬碟的MBR。切記切記。我做了好多次都沒做出來,就是犯了這個錯。
安裝完成後,我們新建一個虛擬機,創建磁碟的時候,使用已有磁碟,找到我們安裝過grub的磁碟,然後使用之即可。開機之後,會驚喜的發現,出現了grub的提示符。

第二種方法(有點兒麻煩):
首先把 /usr/share/grub/i386-redhat/里的所有文件,拷貝到grub目錄
注意:這里同上,一定要掛載到boot目錄下,無論boot目錄在哪

然後開始grub的安裝,直接使用命令grub

root (hd2,0) 表示grub要安裝到第三塊硬碟第1個分區上
setup (hd2) 指定要安裝的設備,設備為第二塊硬碟,安裝完成後quit命令退出就可以了,至於圖片,我就不上了,絕對是可以的。
Ⅷ Linux修改grub菜單
【注】參考自 grub 官方手冊 。
每次開機時,大部分 Linux 發行版的 grub 菜單都是定位在首選項位置(即當前系統選項位置)。這就導致如果我們電腦安裝了多個系統,那麼每次開機進入其他系統都要重新選擇 grub 菜單選項。而我們一般都是一段時間固定使用一個系統,因此如果 grub 菜單能夠記住上一次的菜單選項,我們平常使用就不需要手動切換 grub 菜單選項(除非需要更換開機系統)。這樣可以讓我們免去每次開機都需要手動查看更改 grub 菜單選項,特別是 Winddows 系統,每次更新後基本都要重啟,每次都需要盯著重啟那一刻重新選擇進入 Windows 系統,不勝其煩。
修改 Linux 的 /etc/default/grub 文件,添加以下內容:
GRUB_DEFAULT 可取值為 選項 ID、選項名稱字元串以及 saved ,選項 ID 是從 0 開始計數的。
GRUB_SAVEDEFAULT 變數若設置為 true ,則會保留上一次的 grub 菜單選項,默認沒有設置該變數。
有些 Linux 發行版開機進入 grub 菜單後等待時間很短,因此每次都需要抓住 grub 菜單出來的那一刻手動按鍵終止 grub 菜單等待時間倒計時。有時甚至來不及修改 grub 菜單選項,就進入了默認的系統。
修改 Linux 的 /etc/default/grub 文件中的 GRUB_TIMEOUT 變數值,單位為秒:
GRUB_TIMEOUT 可取值為:
Ⅸ 電腦開機grub怎麼解決
操作方法
01
只要三行命令就可以從grub正常進入系統:
find --set-root /bootmgr(回車)
chainloader /bootmgr(回車)
boot(回車)
不過這還沒完全解決,如果只到這里的話,以後每次開機都得敲上面那三行代碼,有點麻煩。
操作方法2
01
win7下EasyBCD引導硬碟安裝ubuntu提到了一個工具EasyBCD,這個工具在win7中特別好用。這里重寫MBR的任務就交給它了,如圖,選好之後,Write MBR(執行動作)就完成了。
操作方法3
01
重新創建硬碟主引導記錄(MBR)
需有一個啟動光碟或啟動U盤,裡面有diskgenius分區工具。
1、從啟動U盤進入diskgenius分區工具。
2、選擇你需要修復的磁碟。
3、在打開的diskgenius主界面中,點擊菜單欄「硬碟——重建主引導記錄」。
操作方法4
01
Win7開機出現grub後,鍵入以下命令:
grub>rootnoverify (hd0,0)
grub>makeactive
grub>chainloader +1
這樣就能成功進入Win7系統了,之後我們所要做的就是使用EasyBCD軟體重寫MBR任務,或者嫌麻煩的朋友可以直接在系統之家官網下載Win7安裝鏡像,直接重裝系統就可以順利解決問題了。
操作方法5
01
1、電腦開機出現grub怎麼解決 主要出現在WIN7系統,出現這個原因是丟失主引導。
2、grub定義:
GNU GRUB 和GRUB是GRand Unified Bootloader的縮寫,它是一個多重操作系統啟動管理器。用來引導不同系統,如windows,linux。
在X86架構的機器中,Linux、BSD 或其它Unix類的操作系統中GRUB、LILO 是大家最為常用,應該說是主流。
Windows也有類似的工具NTLOADER;比如我們在機器中安裝了Windows 98後,我們再安裝一個Windows XP ,在機器啟動的會有一個菜單讓我們選擇進入是進入Windows 98 還是進入Windows XP。NTLOADER就是一個多系統啟動引導管理器,NTLOADER 同樣也能引導Linux,只是極為麻煩罷了。
在PowerPC 架構的機器中,如果安裝了Linux的Powerpc 版本,大多是用yaboot 多重引導管理器,比如Apple機用的是IBMPowerPC處理器,所以在如果想在Apple機上,安裝Macos 和Linux Powerpc 版本,大多是用yaboot來引導多個操作系統。
因為X86架構的機器仍是主流, 所以目前GRUB和LILO 仍然是我們最常用的多重操作系統引導管理器。
3、有的可以出現按回車鍵去選擇啟動方試。
4、如果這樣還是不能啟動的話可以能過以下方式解決:
(1)通過U盤啟動/光碟啟動,來修復主引導來解決
(2)通過U盤啟動/光碟啟動,重新做一個系統
(3)開機按F5鍵,進入修復主引導的菜單。(這個是因為一些WIN7GHOST系統,ome7f7激活,別的沒有常識過。)
5、進入這個界面後選擇第一項。會進入系統,但是系統是沒有激活 的 需要重新激活,可以用更高的激活軟體來激活。