首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

CentOS 更新後重啟報錯「Attempted to kill init!」的排查與修復方案

     編輯:程式設計疑難解答

錯誤現象

CentOS 在 yum update 過程中強制重啟,啟動過程報錯:Attempted to kill init! exitcode=0x00007f00,進入內核恐慌,無法進入系統。

根本原因

更新內核、systemd、glibc 等核心包時,若中斷(斷電、殺進程),導致:

  • 新內核安裝不全,initramfs 未重建或損壞。
  • 關鍵共享庫版本不匹配,init 進程(PID 1)無法啟動。
  • SELinux 標籤錯誤,阻止關鍵可執行文件運行。

修復步驟(救援模式)

  1. 掛載 CentOS 安裝光盤/ISO,選擇 Troubleshooting → Rescue a CentOS system。
  2. 選擇 Continue 自動掛載系統根分區到 /mnt/sysimage。
  3. chroot /mnt/sysimage 切換到目標系統環境。
  4. 重裝內核並重建 initramfs:
    yum reinstall kernel -y
    dracut -f /boot/initramfs-$(uname -r).img $(uname -r)
  5. 檢查並修復 SELinux 標籤:
    touch /.autorelabel
    # 或
    restorecon -Rv /
  6. 退出 chroot,重啟:exit; reboot。

若救援模式失效

備份 /home、/etc、/var/www 等關鍵數據,重新安裝系統更省時。

預防措施

  • 生產環境更新前快照/備份。
  • 使用 yum update --downloadonly 先下載再安裝。
  • 配置 dnf-automatic 定時更新並自動重啟(需測試)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved