centos進入dracut模式修復grub啟動
Centos系統進入dracut的原因有很多
比如:
系統重要檔案丟失
系統配置檔案配置錯誤
伺服器遷移到不同虛擬化環境
處理流程
1.掛載系統/root檔案到tmp1,編輯grub啟動,重新生成啟動檔案
dracut# mkdir tmp1 dracut# mount /dev/centos/root tmp1 dracut# vi tmp1/etc/defaut/grub GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet" 修改為 GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rhgb quiet"
檢視實際掛載分割槽情況:
dracut# cat tmp1/etc/fstab # # /etc/fstab # Created by anaconda on Thu Jan 2 21:15:59 2020 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/centos-root / xfs defaults 0 0 UUID=22747de8-b577-4bbb-9b5e-40c1b8c3c504 /boot xfs defaults 0 0 #/dev/mapper/centos-swap swap swap defaults 0 0
看到如上swap是被註釋掉的狀態,系統不能啟動正式swap分割槽無法載入引起,
檢視uuid對應的碟符
dracut# blkid /dev/vda1: UUID="22747de8-b577-4bbb-9b5e-40c1b8c3c504" TYPE="xfs" /dev/vda2: UUID="T7xTcp-ywWd-ciYc-k9mU-Fd3f-TCfe-wgKQgd" TYPE="LVM2_member"
如上看到是/dev/vda1
掛載分割槽:
dracut# mkdir tmp2 dracut# mount /dev/vda1 tmp2
編輯grub.cfg檔案,把和swap相關的都改成root
dracut# vi /tmp2/grub2/grub.cfg linux16 /vmlinuz-3.10.0-1062.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8 linux16 /vmlinuz-0-rescue-6f9bcc60986041238dcda79bfef462d5 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet 上面的centos/swap 改成 centos/root linux16 /vmlinuz-3.10.0-1062.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rhgb quiet LANG=en_US.UTF-8 linux16 /vmlinuz-0-rescue-6f9bcc60986041238dcda79bfef462d5 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rhgb quiet
然後重啟就可以正常引導系統了
除了在dracut下編輯進入外,也可以在剛開始進入grub選單時,編輯修改centos/swap為centos/root
或是通過修復盤引導進入系統後 編輯/grub.cfg檔案
「其他文章」
- 引發Pod驅逐的原因
- Oracle12c ora-28040報錯及修改字符集
- rbd空間擴容失敗問題
- centos進入dracut模式修復grub啟動
- java oom堆疊分析
- jvm引數說明
- go自定義函式
- 生產環境centos7 openssh與ssl升級
- 無法啟動的docker容器映象內mysql資料恢復
- Kubectl證書過期更新
- MySQL load匯入大資料
- ceph 運維常用指令
- 重啟pod發現有pod無法掛在pvc
- K8s汙點和容忍度
- ceph rbd擴容
- centos升級核心
- k8s 節點優化
- k8s 選擇版本時注意cgroup問題(記憶體洩漏)
- k8s 建立使用者及rbac授權