欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Grub 2:拯救你的 bootloader
  • Grub 2 是最受歡迎的 bootloader ,幾乎用在所有 Linux 發(fā)行版上。
  • bootloader 是一個(gè)至關(guān)重要的軟件,但是非常容易損壞。
  • Grub 2 是兼具擴展性和靈活性的一款引導加載程序,提供了大量可定制選項。

Grub 2 是一款精彩的功能強大的軟件。它不是 bootloader 界的一枝獨秀,但卻最受歡迎,幾乎所有主要的桌面發(fā)行版都在使用它。 Grub 的工作有兩個(gè)。首先,它用一個(gè)菜單展示計算機上所有已經(jīng)安裝的操作系統供你選擇。其次,當你從啟動(dòng)菜單中選擇了一個(gè) Linux 操作系統, Grub 便加載這個(gè) Linux 的內核。

你知道,如果使用 Linux ,你就離不開(kāi) bootloader 。然而它卻是 Linux 發(fā)行版內部最鮮為人知的部分。在這篇文章里,我們將帶你熟悉 Grub 2 一些著(zhù)名的特性,強化你相關(guān)技能,使你在 bootloader 跑飛的時(shí)候能夠自行處理。

Grub 2 最重要的部分是一堆文本文件和兩個(gè)腳本文件。首先需要了解的是 /etc/default/grub 。這是一個(gè)文本文件,你可以在里面設置通用配置變量和 Grub 2 菜單(見(jiàn)下方 “常見(jiàn)用戶(hù)設置” )的其它特性。

Grub 2 另一個(gè)重要的部分是 /etc/grub.d 文件夾。定義每個(gè)菜單項的所有腳本都放置在這里。這些腳本的名稱(chēng)必須有兩位的數字前綴。其目的是,在構建 Grub 2 菜單時(shí)定義腳本的執行順序以及相應菜單項的順序。文件 00_header 首先被讀取,負責解析 /etc/default/grub 配置文件。然后是 Linux 內核的菜單項,位于 10_linux 文件中。這個(gè)腳本在默認的 /boot 分區為每個(gè)內核創(chuàng )建一個(gè)正規菜單項和一個(gè)恢復菜單項。

緊接著(zhù)的是為第三方應用所用的腳本,如 30_os-prober40_custom 。 os-prober 腳本為內核和其它分區里的操作系統創(chuàng )建菜單項。它能識別安裝的 Linux、 Windows、 BSD 以及 Mac OS X 。 如果你的硬盤(pán)布局比較獨特,使得 os-prober 無(wú)法找到已經(jīng)安裝的發(fā)行版,你可以在 40_custom 文件(見(jiàn)下方 “添加自定義菜單項”)中添加菜單項。

Grub 2 不需要你手動(dòng)維護你的啟動(dòng)選項的配置文件:取而代之的是使用 grub2-mkconfig 命令產(chǎn)生 /boot/grub/grub.cfg 文件。這個(gè)功能會(huì )解析 /etc/grub.d 目錄中的腳本以及 /etc/default/grub 設置文件來(lái)定義你的設置情況。

圖形化的引導修復

多虧了 Boot Repair 應用,只需要點(diǎn)擊按鈕,Grub 2 許許多多的問(wèn)題都能輕易解決。這個(gè)漂亮小巧的應用有一個(gè)直觀(guān)的用戶(hù)界面,可以?huà)呙璨⒆R別多種硬盤(pán)布局和分區方案,還能發(fā)現并正確識別安裝在其中的操作系統。這個(gè)應用可以處理傳統計算機里的主引導記錄(Master Boot Record) (MBR),也可以處理新型 UEFI 計算機中的 GUID 分區表(GUID Partition Table)(GPT)。

Boot Repair 最簡(jiǎn)單的使用方式是安裝到 Live Ubuntu 會(huì )話(huà)中。在一個(gè) bootloader 損壞的機器上啟動(dòng) Ubuntu Live 發(fā)行版,先通過(guò)添加它的 PPA 版本庫來(lái)安裝 Boot Repair ,命令如下:

然后刷新版本庫列表:

安裝應用,如下:

安裝完畢后就啟動(dòng)應用。在顯示它的界面(由一對按鍵組成)之前將會(huì )掃描你的硬盤(pán)。根據工具的指示,只需按下 Recommended Repair(推薦的修復)按鈕,即可修復大部分壞掉的 bootloader 。修復 bootloader 之后,這個(gè)工具會(huì )輸出一個(gè)短小的 URL ,你應該把它記錄下來(lái)。這個(gè) URL 包含了硬盤(pán)詳盡的信息:分區信息以及重要的 Grub 2 文件(如/etc/default/grub/boot/grub/grub.cfg )的內容。如果工具不能解決 bootloader 的問(wèn)題,可以把你這個(gè) URL 共享在你的發(fā)行版的論壇上,讓其他人可以分析你的硬盤(pán)布局以便給你建議。

Boot Repair 也可以讓你定制 Grub 2 的選項。

Bootloader 急救

Grub 2 引導問(wèn)題會(huì )讓系統處于幾種不同狀態(tài)。屏幕(如你所想,本該顯示 bootloader 菜單的地方)所展示的文本會(huì )指示出系統的當前狀態(tài)。如果系統中止于 grub> 提示符,表明 Grub 2 模塊已經(jīng)被加載,但是找不到 grub.cfg 文件。當前是完全版的 Grub 2 命令行 shell,你可以通過(guò)多種方式解決此問(wèn)題。如果你看到的是 grub rescue> 提示符,表明 bootloader 不能找到 Grub 2 模塊或者找不到任何引導文件( boot files )。然而,如果你的屏幕只顯示 ‘GRUB’ 一詞,表明 bootloader 找不到通常位于主引導記錄( Master Boot Record )里的最基本的信息。

你可以通過(guò)使用 live CD 或者在 Grub 2 shell 中修正此類(lèi)錯誤。如果你夠幸運, bootloader 出現了 grub> 提示符,你就能獲得 Grub 2 shell 的支配權,來(lái)幫助你排錯。

接下來(lái)幾個(gè)命令工作在 grub>grub rescue> 提示符下。 set pager=1 命令設置顯示分頁(yè)( pager ),防止文本在屏幕上一滾而過(guò)。你還可以使用 ls 命令列出 Grub 識別出的所有分區,如下:

如你所見(jiàn),這個(gè)命令列出分區的同時(shí)一并列出了分區表方案(即 msdos)。

你還可以在每個(gè)分區上面使用 ls 來(lái)查找你的根文件系統:

你可以不寫(xiě)上分區名的 msdos 部分。同樣,如果你忘記了尾部的斜杠( trailing slash )只輸入 ls (hd0,5) ,那你將獲得分區的信息,比如文件系統類(lèi)型、總體大小和最后修改時(shí)間。如果你有多個(gè)分區,可以使用 cat 讀取 /etc/issue 文件中的內容,來(lái)確定發(fā)行版,格式如 cat (hd0,5)/etc/issue 。

假設你在 (hd0,5) 中找到根文件系統,請確保它包含 /boot/grub 目錄,以及你想引導進(jìn)入的內核鏡像,如 vmlinuz-3.13.0-24-generic 。此時(shí)輸入以下命令:

第一個(gè)命令把 Grub 指向我們想引導進(jìn)入的發(fā)行版所在的分區。接著(zhù)第二個(gè)命令告知 Grub 內核鏡像在分區中的位置,以及根文件系統的位置。最后一行設置虛擬文件系統( initial ramdisk )文件的位置。你可以使用 tab 補全功能補全內核名字和虛擬文件系統( initrd: initial ramdisk )的名字,節省時(shí)間和精力。

輸入完畢,在下一個(gè) grub> 提示符后輸入 boot , Grub 將會(huì )引導進(jìn)入指定的操作系統。

如果你在 grub rescue> 提示符下,情況會(huì )有些許不同。因為 bootloader 未能夠找到并加載任何必需的模塊,你需要手動(dòng)添加這些模塊:

如上所示,跟之前一樣,使用 ls 命令列出所有分區之后,使用 set 命令標記起來(lái)。然后添加 normal 模塊,此模塊激活時(shí)將會(huì )恢復到標準 grub> 模式。如果 linux 模塊沒(méi)加載,接下來(lái)的命令會(huì )進(jìn)行添加。如果這個(gè)模塊已經(jīng)加載,你可以跟之前一樣,把引導加載程序指向內核鏡像和虛擬文件系統( initrd )文件,然后使用 boot 啟動(dòng)發(fā)行版,完美收官。

一旦成功啟動(dòng)發(fā)行版,別忘了為 Grub 重新產(chǎn)生新的配置文件,使用

命令。你還需要往 MBR 里安裝一份 bootloader 的拷貝,使用

命令。

想要禁用 /etc/grub.d 目錄下的腳本,你只需移除其可執行位,比如使用 chmod -x /etc/grub.d/20_memtest86+ 就能將 ‘Memory Test’ 選項從菜單中移除。

Grub 2 和 UEFI

在支持 UEFI 的機器(最近幾年上市的機器大部分都是)調試壞掉的 Grub 2 增加了另一復雜的層次?;謴桶惭b在 UEFI 機器上的 Grub 2 的和安裝在非 UEFI 機器上的并沒(méi)多大區別,只是新的固件處理方式不一樣,從而導致了很多種恢復結果。

對于基于 UEFI 的系統,不要在 MBR 上安裝任何東西。相反,你要在 EFI 系統分區(EFI System Partition)( ESP )里安裝 Linux EFI bootloader,并且借助工具把它設置為 EFI 的默認啟動(dòng)程序,這個(gè)工具對于 Linux 用戶(hù)是 efibootmgr ,對于 window 用戶(hù)則是 bcdedit 。

照目前情況看,在安裝任何與 Windows 8 兼容的主流桌面 Linux 發(fā)行版前,應該正確安裝好 Grub 2。然而,如果 bootloader 損壞,你可以使用 live 發(fā)行版修復機器。在啟動(dòng) live 介質(zhì)之時(shí),請確保是以 UEFI 模式啟動(dòng)。計算機每個(gè)可移動(dòng)驅動(dòng)器的啟動(dòng)菜單將會(huì )有兩個(gè): 一個(gè)普通的和一個(gè)以 EFI 標記的。使用后者會(huì )用到 /sys/firmware/efi/ 文件中的 EFI 變量。

在 live 環(huán)境中,掛載教程前面所提的安裝掛掉系統的根文件系統。除此之外,還需要掛載 ESP 分區。假設分區是 /dev/sda1,你可以如下所示掛載:

接著(zhù)在 chroot 到安裝完畢的發(fā)行版前之前,使用 modprobe efivars 加載 efivars 模塊。

在這里, Fedora 用戶(hù)可以使用如下命令重新安裝 bootloader

但在此之前,需要使用

來(lái)產(chǎn)生新的配置文件。 Ubuntu 用戶(hù)則改用以下命令

一旦 bootloader 正確就位,退出 chroot ,卸載所有分區,重啟到 Grub 2 菜單。

伙計,我的 Grub 哪去了?

Grub 2 最好的特性是可以隨時(shí)重新安裝。因此,當其它像 Windows 之類(lèi)的系統用它們自己的 bootloader 替換后,導致 Grub 2 丟失,你可以使用 live 發(fā)行版,寥寥數步即可重裝 Grub 。假設你在 /dev/sda5 安裝了一個(gè)發(fā)行版,若要重裝 Grub ,你只需首先使用以下命令為發(fā)行版創(chuàng )建一個(gè)掛載目錄:

然后掛載分區,如下:

接著(zhù)就能重裝 Grub 了,如下:

這個(gè)命令會(huì )改寫(xiě) /dev/sda 設備上的 MBR 信息,指向當前 Linux 系統,并重寫(xiě)一些 Grub 2 文件,如 grubenvdevice.map。

另一個(gè)問(wèn)題常見(jiàn)于裝有多個(gè)發(fā)行版的計算機上。當你安裝了新的 Linux 發(fā)行版,它的 bootloader 應當要能找到所有已經(jīng)安裝的發(fā)行版。一旦不行,只要引導進(jìn)入新安裝的發(fā)行版,并運行

在運行這個(gè)命令之前,請確保啟動(dòng)菜單中缺失的發(fā)行版的 root 分區已經(jīng)掛載。如果你想添加的發(fā)行版有單獨的 /root/home 分區,在運行 grub2-mkconfig 之前,只需掛載包含 /root 的分區。

雖然 Grub 2 能夠找到大部分發(fā)行版,但是在 Ubuntu 中嘗試添加安裝的 Fedora 系統需要額外的一個(gè)步驟。如果你以默認設置安裝了 Fedora ,則發(fā)行版的安裝器已經(jīng)創(chuàng )建了 LVM 分區。此時(shí)你需要使用發(fā)行版的包管理系統安裝 lvm2 驅動(dòng),如下

才能使得 Grub 2 的 os-prober 腳本能夠找到并將 Fedora 添加進(jìn)啟動(dòng)菜單。

常見(jiàn)用戶(hù)設置

Grub 2 有很多可配置變量。 這里有一些 /etc/default/grub 文件中你最可能會(huì )修改到的常見(jiàn)變量。 GRUB_DEFAULT 變量指定默認的啟動(dòng)項,可以設置為數字值,比如 0 ,表示第一個(gè)菜單項,或者設置為 “saved” ,將指向上一次啟動(dòng)時(shí)選中的菜單項。 GRUB_TIMEOUT 變量指定啟動(dòng)默認菜單項之前的停留時(shí)間。 GRUB_CMDLINE_LINUX 列出了要傳遞給所有 Linux 菜單項的內核命令行參數。

如果 GRUB_DISABLE_RECOVERY 變量設置為 true ,那么將不生成恢復模式菜單項。這些菜單項會(huì )以單用戶(hù)模式啟動(dòng)發(fā)行版,這種模式下允許你利用命令行工具修復系統。 GRUB_GFXMODE 變量同樣有用,它指定了菜單上文本顯示的分辨率,它可以設置為你的顯卡所支持的任何數值。

Grub 2 有個(gè)命令行模式,通過(guò)在 bootloader 菜單上按 C 進(jìn)入。

徹底的修復

如果 grub2-install 命令不能正常運作,使得你無(wú)法引導進(jìn)入 Linux ,你需要完整地重裝以及重新配置 bootloader 。為此目的,需要用到強大的 chroot 功能將運行環(huán)境從 live CD 環(huán)境切換至我們想修復的 Linux 的安裝位置。任何擁有 chroot 工具的 Linux live CD 都可以實(shí)現這個(gè)目的。不過(guò)需要確保 live 介質(zhì)的系統架構和硬盤(pán)上系統的架構一致。因此當你希望 chroot 到 64 位系統,你必須使用 amd64 live 發(fā)行版。

啟動(dòng)進(jìn)入 live 發(fā)行版之后,首先需要檢查機器上的分區。使用 fdisk -l 列出磁盤(pán)上所有分區,記錄你想修復的 Grub 2 系統所在的分區。

假設我們希望從安裝在 /dev/sda5 中的發(fā)行版中恢復 bootloader 。啟動(dòng)終端使用如下命令掛載分區:

此時(shí)需要綁定(bind)Grub 2 bootloader 需要進(jìn)入的目錄,以便檢測其它操作系統:

此時(shí)可以離開(kāi) live 環(huán)境進(jìn)入安裝在 /dev/sda5 分區中的發(fā)行版了,通過(guò) chroot

現在可以安裝、檢測、以及升級 Grub 了,跟之前一樣,使用

命令來(lái)重裝 bootloader 。因為 grub2-install 命令不能創(chuàng )建grub.cfg 文件,需要手動(dòng)創(chuàng )建,如下

這樣應該就可以了?,F在你就有了 Grub 2 的一份全新拷貝,羅列了機器上所有的操作系統和發(fā)行版。在重啟電腦之前,你需要依次退出 chroot 系統,卸載所有分區,如下所示:

現在你可以安全地重啟電腦了,而它應該會(huì )回退到 Grub 2 的控制之中,你已經(jīng)修好了這個(gè) bootloader。

添加自定義菜單項

如果希望往 bootloader 菜單里添加菜單項,你需要在 40_custom 文件里添加一個(gè)啟動(dòng)段( boot stanza )。例如,你可以使用它展示一個(gè)菜單項來(lái)啟動(dòng)安裝在可移動(dòng) USB 驅動(dòng)里的 Linux 發(fā)行版。假設你的 USB 驅動(dòng)器是 sdb1 ,并且 vmlinuz 內核鏡像和虛擬文件系統( initrd )都位于根 (/)目錄下,在 40_custom 文件中添加以下內容:

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
轉:grub2基礎教程
win7 Linux雙系統
使用LiveCD光盤(pán)啟動(dòng)電腦后進(jìn)入光盤(pán)中的Ubuntu系統,打開(kāi)終端。 sudo -i
重裝win7 修復ubuntu引導
刪除linux 引導錯誤
當Ubuntu無(wú)法啟動(dòng)時(shí),如何修復GRUB2?
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久