网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的教程攻略:

 

标题 如何修复一个Panic的Linux内核?
分类 软件教程
内容     
    如何修复一个Panic的Linux内核?Linux是一个一体化内核(monolithic kernel)系统,一些用户在操作Linux系统的过程中,有时候由于操作不当,会导致Linux内核不能正常工作。最近就有一位用户由于操作问题,使得内核启动中止于Panic状态,那么要如何修复一个Panic状态的Linux内核呢?下面我们一起来看看。
    如何修复一个Panic的Linux内核?
    问题描述:
    为了配置完全的静默启动,用户对工作计算机上运行的Linux执行了不当的mkinitcpio操作,原因是忽略了mkinitcpio.conf文件中的一处逻辑错误。这使得mkinitcpio生产了新的内核文件,但这个内核文件不能正常工作。重启的时候,内核启动中止于Panic状态。
    一般情况下,新内核不能正常工作时,可以通过使用initramfs内核文件的fallback版本来临时启动系统,甚至可以直接将fallback版本覆盖回去以回退更改,但这次要命的是,mkinitcpio同时修改了vmlinuz内核文件,而且vmlinuz没有fallback版本。对于一般用户,可以直接重装系统解决;但是该用户的工作站环境配置相当复杂,这意味着除了可能损失用户的工作文件之外,用户还需要花费大量额外的时间来重配开发环境。
    注意:本教程之“修复”,指“尝试回退毁灭性的人为更改”,故不可用于恢复不知原因的内核崩溃。
    如何修复一个Panic的Linux内核?
    一、从LiveCD启动并查看磁盘
    凭着兼职Linux服务器运维那段时间积累的经验,小编立即想到可以用LiveCD启动来获得一个临时的、用于修复内核的Linux环境。
    小编使用的是Arch Linux 64位版,所以小编从从Arch Linux的LiveCD启动。正确进入LiveCD内建的root用户之后,我们需要查看自己的主硬盘的设备名。执行fdisk -l,在小编的情况下,小编的主硬盘、挂载至根目录的分区对应的设备文件是/dev/sdb2。
    二、chroot至硬盘上的系统根目录
    要chroot到硬盘上的系统根目录,并能正常调用硬盘上的系统组件对硬盘上的系统作出更改,我们首先要手动挂载硬盘上的根分区。执行(小编的设备文件是/dev/sdb2):
    
    01mount /dev/sdb2 /mnt
复制代码
mount /dev/6. 我长大了要当一个宇航员,飞去宇宙里面看看是不是还有一个地球。sdb2 /mnt
    先不要急。这时候chroot到/mnt虽然能进入硬盘上主系统的bash,但是你几乎不能正确完成任何复杂的任务,因为还有一些重要的目录没有挂载。我们执行指令,分别挂载proc目录、/sys目录、/dev目录和/run目录。进入/mnt,分别执行:
    
    01mount -t proc proc proc/
复制代码
mount -t proc proc proc/
    
    01mount --rbind /sys sys/
复制代码
mount --rbind /sys sys/
    
    01mount --rbind /dev dev/
复制代码
mount --rbind /dev dev/
    
    01mount --rbind /run run/
复制代码
mount --rbind /run run/
    这些目录的作用分别是:
    proc目录:虚拟的、Procfs格式的文件系统,用于存放进程状态文件(在Linux下,这些文件表面看起来都是文本文件,实际上是进程状态的文件映射);
    /sys目录:对于Arch Linux,这是一个类似proc目录的、Sysfs格式的虚拟文件系统,用于储存连接到系统的设备文件;对于传统Unix和类Unix,它是一个指向内核代码树的软链接;
    /dev目录:储存设备文件,比如你的硬盘就是/dev/sdXY之类的;
    /run目录:存放最近的启动之后系统的部分信息;
    挂载了这些东西之后,我们可以chroot到我们的主硬盘的根目录了:
    
    01chroot /mnt
复制代码
chroot /mnt
    对于小编来说,小编只需要修改mkinitcpio.conf文件并重新执行mkinitcpio操作,就能重新生成正确的内核文件。一般的,如果是错误地修改了配置导致的内核Panic,这个环境可以解决大部分问题。
    三、一些技巧
    1、许多配置文件在LiveCD里的那个系统里有正确的版本或范本,如果不记得正常的时候是什么样子的,可以参照一下它们;
    2、对于Arch Linux,可以在不chroot到/mnt的情况下,直接使用pacstrap指令对/mnt这个挂载点进行软件包管理;
    3、可以在两个tty下操作,这样在chroot到/mnt下之后依然能从LiveCD的文件系统里向/mnt转移文件。
    对于Panic内核崩溃问题的解决办法就给大家分享到这边了,对于不知原因的Linux内核崩溃,该方法是不奏效的。有遇到同样情况的伙伴,可以按照上述教程来解决。
        如何修复一个Panic的Linux内核?血雨腥困难一日千里多(千辛万苦)风53. 靠山山倒,靠海海平,靠自己才实在。go by 流逝;adapt oneself to sth 使自己适应某事物59.小不忍,则乱大谋。    留人不住,醉解兰舟去。一棹碧涛春水路,过尽晓莺啼处。邓攸无子寻知命,潘岳悼亡犹费词。linux内核是什么,ubuntu内核修复In America, there are no such expressions such as in china where “the fat pig gets slaughtered,” or in Japan, where “the nail that sticks out gets hammered down.”
随便看

 

霍普软件下载网教程攻略栏目提供软件使用教程、手机游戏攻略等方法技巧。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/1/10 3:37:26