精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Linux Grub引導修復指南
userphoto

2023.06.24 河南

關注

一、啟動問題

1、如果你的計算機在開機后直接進入grub rescue模式,可能需要查看grub的環境變量和掛載點等信息,并且重新安裝grub。

set命令可以查看當前grub環境的變量值: set # 正常grub menu界面將顯示類似下面的信息 prefix=(hd0,gpt2)/boot/grub root=hd0,gpt2 ...

2、如果grub menu界面可以出現,但是無法正常啟動Linux操作系統,可能是因為grub配置文件(如/boot/grub/grub.cfg)被刪除或損壞。解決辦法是進入grub命令行模式,查看當前grub菜單中的各項設置。

# 進入grub命令行模式
grub>
# 查看grub菜單
cat (hd0,gpt2)/boot/grub/grub.cfg
# 輸出grub內容,并檢查各項設置是否正確。

3、如果進入grub的menu之后,找不到正確的選項來啟動Linux系統,可能需要手動添加一些啟動菜單。這時可以使用grub-mkconfig或手動編輯grub配置文件。

# 使用grub-mkconfig自動生成grub menu grub-mkconfig -o /boot/grub/grub.cfg # 手動編輯grub.cfg,添加啟動菜單(下面是示例) menuentry 'My Linux' { set root=(hd0,gpt2) linux /vmlinuz root=/dev/sda2 initrd /initrd.img }

二、分區問題

1、如果Linux的根分區發生磁盤損壞或者刪除,可能需要重新建立分區并且安裝Linux系統。

# 使用fdisk命令來查看當前分區情況
sudo fdisk -l /dev/sda
# 新建一個主分區
sudo fdisk /dev/sda
n # 創建新的分區
p # 創建一個主分區
# 選擇分區起始和結束的扇區(按回車鍵表示使用默認值)
w # 保存并退出
# 格式化剛才新建的分區
sudo mkfs.ext4 /dev/sda3
# 掛載分區到/mnt下
sudo mount /dev/sda3 /mnt
# 將當前系統的文件拷貝到新分區
sudo cp -ax / /mnt
# 更新新分區的fstab文件
sudo nano /mnt/etc/fstab
# 在fstab中加入下面這行
UUID=3fdda0dd-6bef-4bab-9bef-4d8edaaa5aac / ext4 errors=remount-ro 0 1

2、如果Linux系統的根分區尚未損壞或刪除,但是grub引導信息不正確,可能需要修改grub引導信息之后重新安裝grub。

# 找到當前系統的根分區,假設為/dev/sda2 # 掛載該分區到/mnt下 sudo mount /dev/sda2 /mnt # 掛載/boot分區(如果有的話) sudo mount /dev/sda1 /mnt/boot # 掛載虛擬文件系統到/mnt下 for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done # 進入/mnt下的Linux系統,注意切換root用戶 sudo chroot /mnt # 重新安裝grub引導信息 grub-install /dev/sda # 更新grub配置 update-grub # 退出chroot環境并卸載/mnt下的各個目錄 exit for i in /dev/pts /dev /proc /sys /run /boot; do sudo umount /mnt$i; done sudo umount /mnt

三、故障診斷

1、如果grub引導信息顯示錯誤信息,可能需要開啟grub菜單的調試模式,或者查看grub日志文件(如/var/log/grub.log)來顯示更多詳細信息。

# 開啟grub調試模式
grub> set debug=all
# 新建啟動菜單,選擇調試模式
menuentry 'Debugging my Linux' {
    set root=(hd0,gpt2)
    linux /vmlinuz root=/dev/sda2 debug
    initrd /initrd.img
}
# 重啟計算機,選擇該菜單后,即可顯示grub調試信息

2、如果Linux系統啟動后,發現各種問題,可能需要進入單用戶模式(也稱緊急模式)進行故障診斷。

# 進入grub菜單,選擇要進入的Linux啟動菜單,按e鍵進入編輯模式 # 找到以“linux”開頭的一行,末尾加入“single”或“emergency”,如下所示 linux /vmlinuz root=/dev/sda2 single # 按Ctrl+X或F10進入單用戶模式 # 進入之后,可以檢查文件系統、日志文件、網絡配置等

四、安全機制

1、為了防止grub和Linux系統被未經授權的用戶或程序篡改,可以通過以下辦法加強系統的安全性:

# 給grub.cfg加密并且保護
# 安裝grub-mkstandalone
sudo apt install grub-efi-amd64-bin
# 生成一個grub密碼,比如mypassword
echo -e 'mypassword\nmypassword' | sudo grub-mkpasswd-pbkdf2 | grep 'PBKDF2' | awk -F ' ' '{print 'set superusers=“root\npassword_pbkdf2 root ' $NF}' | sudo tee -a /etc/grub.d/40_custom
# 生成加密后的grub.cfg文件
sudo grub-mkstandalone -d /usr/lib/grub/x86_64-efi/ -O x86_64-efi --fonts='unicode' --themes='default' -o grub.efi /boot/grub/grub.cfg
# 移動已有的grub.efi文件
sudo mv /boot/efi/EFI/ubuntu/grubx64.efi /boot/efi/EFI/ubuntu/grubx64.efi.bak
# 移動新生成的grub.efi文件
sudo mv grub.efi /boot/efi/EFI/ubuntu/grubx64.efi

2、另外,還可以設置Linux系統的boot loader鎖,使得只能使用密鑰來啟動Linux系統,防止系統被非法篡改。

# 安裝mokutil工具 sudo apt-get install mokutil # 創建一個私鑰 sudo openssl req -new -x509 -newkey rsa:2048 -keyout ?(id -un)-$(hostname -s).key -outform DER -out ?(id -un)-$(hostname -s).der -days 36500 -nodes -subj '/CN=$(hostname)' # 上傳該密鑰到Linux MOK中,并且輸入密碼 sudo mokutil --import ?(id -un)-$(hostname -s).der # 重啟計算機,進入UEFI界面,選擇“MOK management”,導入秘鑰 # 重啟,之后再次安裝grub-efi-amd64-signed,這樣只有使用秘鑰才能啟動Linux系統 sudo apt-get install grub-efi-amd64-signed

五、總結

本文介紹了如何修復Linux系統的grub引導問題,包括啟動問題、分區問題、故障診斷和安全機制等方面。通過本文的指引和代碼示例,希望讀者能夠更好地理解Linux系統的grub引導工作原理,并且掌握一些實用的技巧,使得我們在Linux系統的日常運維工作中能夠快速而準確地解決grub引導問題。

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Arch Linux 安裝指南(ArchISO 2014.02.01 適用)
Grub 2:拯救你的 bootloader
Arch linux操作系統安裝教程
windows10 雙系統安裝后,grub2 引導修復(親自實驗);grub2 命令行 手動加載內核;fedora 29 系統grub2引導修復;
實用教程:Arch Linux安裝詳解
轉:grub2基礎教程
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 大宁县| 靖江市| 祁门县| 河间市| 临夏市| 通辽市| 广宁县| 霍山县| 合肥市| 巴塘县| 抚州市| 来宾市| 加查县| 玛纳斯县| 垫江县| 安徽省| 虹口区| 中牟县| 阳春市| 武鸣县| 深圳市| 钦州市| 武平县| 崇仁县| 金华市| 昆山市| 饶河县| 宁乡县| 阳谷县| 七台河市| 博野县| 新宾| 盐山县| 黄平县| 郧西县| 石台县| 板桥市| 合作市| 嘉祥县| 元朗区| 大英县|