Linux系统无法启动故障解决方案

2011-09-27 09:42 佚名 比特网 我要评论(0) 字号:T | T

不管你多么喜爱你的Linux系统机器,有时候你都必须恢复你的系统。是的,即使一台Linux系统机器也可能遭受系统崩溃:不管是由于视频配置错误、内核更新出错、或是由于init脚本配置错误,这种情况都是必然的。

AD:2014WOT全球软件技术峰会北京站 课程视频发布

当你的心爱的linux系统出现故障的时候,你是如何来解决的呢?没有操作系统能够确保100%可靠。终有一天,即使Linux系统也会无法启动。本文为你提供一些在Linux工作站无法正常启动时所采用的策略。

不管你多么喜爱你的Linux系统机器,有时候你都必须恢复你的系统。是的,即使一台Linux系统机器也可能遭受系统崩溃:不管是由于视频配置错误、内核更新出错、或是由于init脚本配置错误,这种情况都是必然的。我看到过大量这种情况,即使在我自己的机器上,大多数是由于X配置出错,这确实令人沮丧。

使用正确的运行级别

安装好一个新的Linux系统后,我立即采取措施以确保灾难不会轻易发生。其中一个措施就是编辑系统的运行级别。运行级别告诉系统离采用引导过程还有多远。运行级别分为六个等级:

0级:停止(不设置initdefault)

1级:单用户模式

2级:多用户模式,没有NFS(与3级相同,如果你没有建立网络)

3级:完整的多用户模式

4级:不使用

5级:X11

6级:重新启动(不设置initdefault)

新型的Linux系统几乎总是默认使用运行级5(X11),表示系统在引导完成后,将会在图形登录界面处停止。在某物(或某人)使用X配置前,系统一切正常。

然后你必须找到一个登录方法。你可以按下[Ctrl][Alt][F7]进入一个基于文本的虚拟窗口,但为什么要这么麻烦呢?相反,我总是在/etc/inittab文件中将运行级更改为3级。你更改的代码为:

id:5:initdefault:

它被更改为:

id:3:initdefault:

当X出错时,这是一个非常简单的系统恢复方法。

多内核

另一个明显的磁盘恢复方法是总是安装一个正常运转的内核。我通常在一个通过yum更新的内核上工作。有时候,内核会出现一些错误,使得我的一台或几台机器无法启动。

为避免这种情况,我一直保证在机器上使用至少一个正常运行的内核。要解决这个问题,首先应在/etc/yum.conf文件中添加plugins=1,然后应用这段脚本,并将它命名为n-installonly.py,保存在/usr/lib/yum-plugins文件中。你可以通过修改tookeep变量(默认为2)的方法更新linux系统所使用内核的数量。

知道Linux系统上有一个正常运转的内核,你就可以进行安全升级。如果新内核出错,只需启动旧内核就可以解决新内核上的问题(不管是删除、重新编译还是升级)。

【编辑推荐】

Linux系统无法启动故障解决方案的更多相关文章

  1. Linux系统运维故障排查

    一.思路 1.处理问题要求 2.一般思路 二.具体问题 1.网络问题 (1)网络不通 (2)网络很慢 2.硬件问题 3.操作系统问题 (1)系统无法正常启动 (2)系统运行慢或死机 4.服务或程序问题 ...

  2. 详解linux系统的启动过程及系统初始化

    一.linux系统的启动流程 关于linux系统的启动流程我们可以按步进行划分为如下: POST加电自检 -->BIOS(Boot Sequence)-->加载对应引导上的MBR(boot ...

  3. 探索 Linux 系统的启动过程

    引言 之所以想到写这些东西,那是因为我确实想让大家也和我一样,把 Linux 桌面系统打造成真真正正日常使用的工具,而不是安装之后试用几把再删掉.我是真的在日常生活和工作中都使用 Linux,比如在 ...

  4. 腾讯云Linux系统中启动自己安装的tomcat

    腾讯云Linux系统中启动自己安装的tomcat 首先通过工具查看一下安装的tomcat的位置 进入命令行之后输入以下指令: 此时,tomcat已经启动了.

  5. [转] 浅谈Linux系统的启动流程

    原文:http://blog.csdn.net/justdb/article/details/9621271 版权声明:本文为博主原创文章. Linux系统的启动时通过读取不同的配置文件,执行相应的S ...

  6. Linux系统快速启动方案

    =========================        基本常识       ========================= Linux系统基本启动流程: 1. CPU从ROM(如果有的 ...

  7. CentOS(四)--Linux系统的启动级别

    对于绝大多数Linux程序员来说,进入Linux系统后一般看到的是黑乎乎的界面(开发模式),因为系统如果启动选择开发模式,会减少启动时间,优化内存等.但是通常我们刚安装完Linux系统,然后进去以后是 ...

  8. 浅谈Linux系统的启动流程

    Linux系统的启动时通过读取不同的配置文件,执行相应的Shell脚本完成的.当然本文只是简单的从文件的角度分析,更深层次的本文没涉及. 主要读取了以下文件:  /boot/grub/grub.con ...

  9. Linux系统下启动MySQL报错:Neither host 'localhost.localdomain' nor 'localhost' could be looked up with

    Linux系统下启动MySQL报错:Neither host 'localhost.localdomain' nor 'localhost' could be looked up with 摘要 Li ...

随机推荐

  1. 阶段3 2.Spring_08.面向切面编程 AOP_9 spring基于注解的AOP配置

    复制依赖和改jar包方式 src下的都复制过来. 复制到新项目里了 bean.xml里面复制上面一行代码到下面.把aop改成context. 配置spring容器创建时要扫描的包 Service的配置 ...

  2. sql server 查询存储过程返回值

    SET QUOTED_IDENTIFIER ON SET ANSI_NULLS ON GO CREATE proc [dbo].[is_yy] ) out, ), ) as begin ' begin ...

  3. Hibernate初了解

    Hibernate是一个开放源代码的对象关系映射框架, 它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hibernate可以应用在任何使用JD ...

  4. string中getline,cin的方法getline(),get总结

    一.string中的getline不是string的成员函数,属于全局函数,使用需要include<string>,有两个重载版本: 函数原型参见:http://www.cplusplus ...

  5. 【HANA系列】SAP HANA SLT在表中隐藏字段并传入HANA的方法

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SLT在表中隐 ...

  6. 磁盘的分区和挂载(mount)

    一.挂载问题的引入 我们大多数人用惯了windos系统,对linux系统中磁盘的管理就先入为主,不太好理解挂载这一动作.在linux系统中添加一块新磁盘后,要进行分区.格式化(分配文件系统).挂载.当 ...

  7. tomcat7远程代码执行 ImageMagick 命令执行漏洞

    tomcat7远程代码执行 windows     / linux   ::$DATA ImageMagick 命令执行漏洞(CVE-2016–3714) base64编码

  8. Metinfo3.0 /include/common.inc.php PHP代码注入

  9. centos没有ifcfg-eth0或者ifcfg-eth0文件内容为空

    虚拟机安装好CentOS 6系统后,发现ip在每次重启后都会还原,用ifconfig查看是有eth0网卡的(也有可能只有回环网卡lo),于是查看eth0网卡配置文件,发现在 /etc/sysconfi ...

  10. Win10成功安装IIS后浏览器打开localhost正确显示的页面