欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

操作系統(tǒng)

快速修復(fù)一個panic的Linux內(nèi)核的技巧

時間:2025-03-02 10:51:51 操作系統(tǒng) 我要投稿
  • 相關(guān)推薦

快速修復(fù)一個panic的Linux內(nèi)核的技巧

  Linux系統(tǒng)中運行了不當(dāng)?shù)膍kinitcpio操作導(dǎo)致內(nèi)核文件不能正常工作,重啟的時候,內(nèi)核啟動中止于Panic狀態(tài),該怎么解決這個問題呢?以下是小編為大家搜索整理的快速修復(fù)一個panic的Linux內(nèi)核的技巧,希望能給大家?guī)韼椭?更多精彩內(nèi)容請及時關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!

  為了配置完全的靜默啟動,筆者對自己的工作計算機(jī)上運行的Linux執(zhí)行了不當(dāng)?shù)膍kinitcpio操作,原因是忽略了mkinitcpio.conf文件中的一處邏輯錯誤。這使得mkinitcpio生產(chǎn)了新的內(nèi)核文件,但這個內(nèi)核文件不能正常工作。重啟的時候,內(nèi)核啟動中止于Panic狀態(tài)。

  一般情況下,新內(nèi)核不能正常工作時,可以通過使用initramfs內(nèi)核文件的fallback版本來臨時啟動系統(tǒng),甚至可以直接將fallback版本覆蓋回去以回退更改,但這次要命的是,mkinitcpio同時修改了vmlinuz內(nèi)核文件,而且vmlinuz沒有fallback版本。對于一般用戶,可以直接重裝系統(tǒng)解決;但是筆者的工作站環(huán)境配置相當(dāng)復(fù)雜,這意味著除了可能損失我的工作文件之外,我還需要花費大量額外的時間來重配開發(fā)環(huán)境。

  注意:本教程之“修復(fù)”,指“嘗試回退毀滅性的人為更改”,故不可用于恢復(fù)不知原因的內(nèi)核崩潰。

  一、從LiveCD啟動并查看磁盤

  憑著兼職Linux服務(wù)器運維那段時間積累的經(jīng)驗,我立即想到可以用LiveCD啟動來獲得一個臨時的、用于修復(fù)內(nèi)核的Linux環(huán)境。

  筆者使用的是Arch Linux 64位版,所以我從從Arch Linux的LiveCD啟動。正確進(jìn)入LiveCD內(nèi)建的root用戶之后,我們需要查看自己的主硬盤的設(shè)備名。執(zhí)行fdisk -l,在筆者的情況下,我的主硬盤、掛載至根目錄的分區(qū)對應(yīng)的設(shè)備文件是/dev/sdb2。

  二、chroot至硬盤上的系統(tǒng)根目錄

  要chroot到硬盤上的系統(tǒng)根目錄,并能正常調(diào)用硬盤上的系統(tǒng)組件對硬盤上的系統(tǒng)作出更改,我們首先要手動掛載硬盤上的根分區(qū)。執(zhí)行(我的設(shè)備文件是/dev/sdb2):

  mount /dev/sdb2 /mnt

  先不要急。這時候chroot到/mnt雖然能進(jìn)入硬盤上主系統(tǒng)的bash,但是你幾乎不能正確完成任何復(fù)雜的任務(wù),因為還有一些重要的目錄沒有掛載。我們執(zhí)行指令,分別掛載proc目錄、/sys目錄、/dev目錄和/run目錄。進(jìn)入/mnt,分別執(zhí)行:

  mount -t proc proc proc/

  mount --rbind /sys sys/

  mount --rbind /dev dev/

  mount --rbind /run run/

  這些目錄的作用分別是:

  proc目錄:虛擬的、Procfs格式的文件系統(tǒng),用于存放進(jìn)程狀態(tài)文件(在Linux下,這些文件表面看起來都是文本文件,實際上是進(jìn)程狀態(tài)的文件映射);

  /sys目錄:對于Arch Linux,這是一個類似proc目錄的、Sysfs格式的虛擬文件系統(tǒng),用于儲存連接到系統(tǒng)的設(shè)備文件;對于傳統(tǒng)Unix和類Unix,它是一個指向內(nèi)核代碼樹的軟鏈接;

  /dev目錄:儲存設(shè)備文件,比如你的硬盤就是/dev/sdXY之類的;

  /run目錄:存放最近的啟動之后系統(tǒng)的部分信息;

  掛載了這些東西之后,我們可以chroot到我們的主硬盤的根目錄了:

  chroot /mnt

  后悔藥++。對于我來說,我只需要修改mkinitcpio.conf文件并重新執(zhí)行mkinitcpio操作,就能重新生成正確的內(nèi)核文件。一般的,如果是錯誤地修改了配置導(dǎo)致的內(nèi)核Panic,這個環(huán)境可以解決大部分問題。

  三、一些技巧

  1、許多配置文件在LiveCD里的那個系統(tǒng)里有正確的版本或范本,如果不記得正常的時候是什么樣子的,可以參照一下它們;

  2、對于Arch Linux,可以在不chroot到/mnt的情況下,直接使用pacstrap指令對/mnt這個掛載點進(jìn)行軟件包管理;

  3、可以在兩個tty下操作,這樣在chroot到/mnt下之后依然能從LiveCD的文件系統(tǒng)里向/mnt轉(zhuǎn)移文件。

  本教程應(yīng)該對大部分Linux發(fā)行版都可用,希望能對部分Linux用戶產(chǎn)生幫助。

【快速修復(fù)一個panic的Linux內(nèi)核的技巧】相關(guān)文章:

Linux 系統(tǒng)故障排查和修復(fù)技巧10-01

Linux系統(tǒng)刪除舊內(nèi)核的方法09-01

Linux如何禁止系統(tǒng)內(nèi)核Kernel自動升級10-28

Linux內(nèi)核源代碼的閱讀和工具具體介紹06-23

學(xué)習(xí)快速修復(fù)玻璃化妝瓶圖片的PS技巧05-29

教你快速學(xué)會安裝linux系統(tǒng)06-10

Linux-Vsftp報錯500OOPS如何修復(fù)08-31

Linux系統(tǒng)備份的應(yīng)用與技巧10-13

linux的常識技巧有哪些07-05