我们知道,root用户在Linux中是相当重要的,其地位如同Windows中的Adminstrator

有了root权限我们还能修改其他用户的密码,可是,如果root用户的密码丢失该怎么办?

不用担心,解决办法很简单,但还需理解运行级别和密码之间的微妙关系

注:以redhat为基础发行的版本都可使用此方法,此处以CentOS做实验

找回密码的方法

第1步:进入grub菜单,在需要启动的系统选项上按下 e

第2步:选择第2行以kernel开头的选项,再次按下e

第3步:编辑最后一行,在末尾加上1(用运行级别1的方式启动,稍后讲解为什么是1),按Enter

第4步:回到grub菜单后,按下b启动系统

看第一行,我们以single user模式成功登录系统,直接就是root用户

然后,我们用passwd修改密码即可,简单吧~

但是,知道如何找回root用户密码是不够的,难道你不奇怪为什么刚刚要在编辑启动项的时候加 1 吗?

此处涉及到了/etc/inittab这个文件,只要Linux一启动便会自动加载它

下面来看看内容

以#开头的都是注释文件,真正有意义的是最后一行,其中的3就代表着当前系统所使用的运行级别

那么,这0~6代表的7个选项各是什么意思呢?

0           关机

1           单用户模式,直接以root用户登录,不需要密码

2           多用户,但没有网络服务

3           多用户,有网络服务

4           未使用,保留给用户自定义

5           图形界面

6           系统重启

我们只需替换一下文件末行的数字3,就能更换运行级别了

但,需要注意的是,上面很明确的标识了0和6是不可以作为默认运行级别的

因为一旦开机之后,系统便会自动加载运行级别,然后不停的 关机/重启

此外,你可以直接在命令行中试试 init 6 ,看看是不是真的重启了

倘若真有坏人恶意修改了inittab文件,你只需回到上面的步骤,在grub中启动到单一模式(别忘了,kernel那一行末尾加1)

然后改回 etc/inittab 文件即可

(转)Linux下root密码丢失和运行级别错误的解决办法的更多相关文章

  1. Linux下VMware虚拟机网卡不能运行在混杂模式解决办法

    转自: http://blog.csdn.net/henulwj/article/details/50347489 问题描述 在Linux如果以普通用户运行VMware Workstations,创建 ...

  2. WIN7下安装visualC++2008 redistributable 出现1935错误的解决办法(转自)

    转自:http://zhidao.baidu.com/link?url=jylNh_JeANi4wrOMmd4d2i06e_N3QCw7z6BLGiNNNTu1Hc6ADTkUq2PORExKmjtk ...

  3. Linux下root密码忘记的解决办法

    {启动方式} ========================================================================== 一. lilo 1. 在出现 lil ...

  4. centos7下root密码丢失解决方案

    1 root密码忘记 A.[rd.break方式更改root密码!] 1.重启 CentOS 7.X,在系统引导倒计时的时候快速按键盘上的[ ↑ ]或[ ↓ ]键,使其停留在GRUB菜单界面,并按照下 ...

  5. Linux系统环境下安装dedecms(织梦)提示http500错误的解决办法

    碰到一客户安装DEDE提示http500错误,问题已得到完美解决,下面我分享下 这个解决办法,希望有帮助. 故障状态:正常安装dedecms v5.7 gbk提示http500错误Dede安装环境:一 ...

  6. Eclipse下进行SVN提交时报“svn: 过期”错误的解决办法

    http://www.thinksaas.cn/group/topic/105323/ ———————————————————————————————————————————————————————— ...

  7. Linux 下文件名乱码(无效的编码)的解决办法

    文件是在WIndows 下创建的,Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码 不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码. ...

  8. linux 下 ls 文件夹和文件没有颜色的解决办法

    .bashrc 中加入 alias ls="ls --color"

  9. linux下执行sh脚本,提示Command not found解决办法

    1.确保用户对文件有读写及执行权限 oracle@linux-106:~/RMAN/bin> chmod a+x test.sh 2.然后修改文件格式(如果是从winodws搬过来的会显示dos ...

随机推荐

  1. 有关于java反编译工具的使用

    有时候想去查看jar包中的class文件中的代码,但是class文件如果没有进行反编译操作的话,代码无法直观的查看.这时候可以使用jadeclipse对class文件进行反编译的操作. 1.首先这里需 ...

  2. Tomcat 7.x热部署

    由于在开发阶段,需要频繁的修改源代码,如果每次修改完代码都去重启服务器来检测效果,那简直麻烦到你想死,又耽误时间,所以,在网上找了许久,终于找到了解决办法, 特来分享 我也试了修改Server.xml ...

  3. C#获取本机公网IP

    /// <summary> /// 获取本机公网IP /// </summary> /// <returns></returns> public sta ...

  4. 枚举全排列(包括数列中有重复数)的C语言实现

    据说是用了DFS的思想--然鹅并不知道这是DFS. 主要就是选取一个数放到数组相应位置上,然后递归的排列剩下的数组,将剩下的数组递归排列完了之后再把数放回去,然后这一层递归就返回了-- 有重复数的话遇 ...

  5. SimpleDateFormat的应用

    import java.text.SimpleDateFormat;import java.util.Date;public class Main {    public static void ma ...

  6. 小记:Bmob云端代码测试APNS推送功能 #代码片段

    function onRequest(request, response, modules) { var push = modules.oPush; push.send({ "data&qu ...

  7. Python模块:struct

    各个编程语言都有自己的数据类型,当python需要接受其他语言或者网络传输来交互数据的时候,需要考虑到python的数据类型与其他平台之间交互问题.而python的struct就是解决这个问题的. s ...

  8. SQL 计算两个地理坐标相差的距离的函数

    Create function getGreatCircleDistance(@lat1 decimal(18,11),@lng1 decimal(18,11),@lat2 decimal(18,11 ...

  9. Matlab(1) -- Matlab清屏命令

    这里介绍 matlab 中三种不同的清理变量.显示窗口或图形的命令. 一.比较重要的清理:清除变量命令:clear 说明:运行m文件之前一般都需要该命令,否则可能出错. 二.比较常用的清理:清理当前命 ...

  10. SUSE查看版本号

    suse:~ # lsb_release -dDescription: SUSE Linux Enterprise Server 10 (x86_64) suse:~ # cat /etc/SuSE- ...