Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 Linux 系统启动到多用户模式,并提供正常的网络服务。如果系统管理员需要进行系统维护或系统出现启动异常时,就需要进入单用户模式或修复模式对系统进行管理了。 使用单用户模式有一个前提,就是您的系统引导器(grub)能正常工作,否则要进行系统维护就要使用修复模式。 特注:进入单用户模式,没有开启网络服务,不支持远程连接

Linux 系统中不同的运行级别(Run Level)代表了系统的不同运行状态,例如 Linux 服务器正常运行时处于运行级别3,是能够提供网络服务的多用户模式;而运行级别 1 只允许管理员通过服务器主机的单一控制台进行操作,即“单用户模式”。

以centos为例:

进入单用户模式

进入单用户模式的前提是系统引导器能正常工作。下面以 GRUB 为例说明进入方法。在 GRUB 启动菜单里有“a”、“e”和“c”三个操作按键,使用这三个按键均可进入单用户模式。

方法1 使用 “a” 操作按键进入单用户模式------推荐:简单操作

这是进入单用户模式最快速的方法。在 GRUB 启动菜单里使用 “a” 操作按键编辑 kernel 参数,在行末输入 single ,以告诉 Linux 内核后续的启动过程需要进入单用户模式,回车即可 。如图所示。

方法2、使用 “e” 操作按键进入单用户模式

在 GRUB 启动菜单里使用 “e” 操作按键进入 CentOS 的启动菜单向界面 ,移动光标至“kernel”配置项一行,如图所示。

将光标定位到 kernel 菜单项

按 “e” 键编辑 “kernel” 菜单项,在行末输入 single ,以告诉 Linux 内核后续的启动过程需要进入单用户模式。


kernel /vmlinuz-2.6.18-53.el5 ro root=/dev/VolGroup00/LogVolRoot 更改为
kernel /vmlinuz-2.6.18-53.el5 ro root=/dev/VolGroup00/LogVolRoot single

更改后按回车返回 CentOS 启动菜单项界面,如图所示。

最后按 “b” 键使用更改后的 CentOS 启动菜单项启动单用户模式。

方法3、使用 “c” 操作按键进入单用户模式

这是进入单用户模式最麻烦的方法,通常不使用这种方法进入单用户模式,此处旨在熟悉 GRUB 命令行界面操作。在 GRUB 启动菜单里使用 “c” 操作按键进入 GRUB 命令行界面。分别使用 GRUB 下的 root 、kernel(在行末输入 single)、initrd 命令指定启动参数,最后使用 boot 命令启动到单用户模式,如图所示。

从 GRUB 命令行界面进入单用户模式

---------------------------------------------------------------------

进入单用户模式之后

当系统进入单用户模式时,不需要输入用户名和口令,系统启动完成后将直接获得管理员 root 的权限,控制台的提示符为“#”,如图所示

单用户模式下的控制台界面

在上面的启动信息中有一条信息很关键:

Remounting root filesystem in read-write mode:[OK]

表示此时单用户模式下的根文件系统处于可读可写状态。只有根文件系统是可读写的,系统管理员才能对系统进行维护。若系统的配置与脚本文件出现错误,单用户 模式下的根文件系统进入“read-only file system”只读状态,此时,可以使用如下命令以读写方式重新挂装根文件系统:

sh-3.1 # mount -o remount rw -t ext3 /

当 Linux 系统进入单用户模式后,由于已经停止了任何网络服务和网络配置(网络接口无效),不会有任何其他人(通过网络)干扰系统的运行状态,管理员可以放心的对 Linux 系统进行系统级别的维护操作。在单用户模式下 Linux 系统除了不具备网络功能外,是功能完整的操作系统。在单用户模式下可以进行如下的维护和管理工作:

  • 重新设置超级用户口令

  • 维护系统的分区、LVM 和文件系统等

  • 进行系统的备份和恢复

单用户模式的一个典型应用是 root 用户的“口令设置”。对于一些临时使用或实验用途的 Linux 系统(如学生实验室),经常会更换使用者,而 root 用户的口令可能会被遗失,这时可以进入单用户模式更改 root 用户的口令。

sh-3.1 # passwd Changing password for user root. New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

当系统进入单用户模式后,在“#”提示符下执行 passwd 命令可以更新 root 用户的口令,当系统重新启动后就可以使用已更新的口令以 root 身份登录系统了。

------------------------------------------grub加密

如果禁止进入单用户,首先要对GRUB进行密码配置,只需要修改/boot /grub/grub.conf或者 /etc/grub.conf(/etc/grub.conf是/boot/grub/grub.conf的符号链接),例如:vi /boot/grub/grub.conf进入配置文件编辑 。

这里我们介绍个方法,给grub加个密码,增禁止他人以单用户模式进入系统. 有2个方式:

1、明文方式

在splashimage这个参数下一行添加: password=密码。保存后重新启动计算机,再次登录到GRUB菜单页面的时候就会发现, 这时已经不能直接使用e命令编辑启动标签了,须先使用p命 令 ,输入正确的密码后才能够对启动标签进行编辑.但是我们设置了明文密码也不是很安全的.如果他人得到了明文密码后仍然可以修改GRUB启动标签从而修改 root密码.

2、MD5加密方式

在终端中输入grub-md5-crypt回车,这时系统会要求输入两次相同的密码,之后系统便会输出MD5码。大家只需要将生成的MD5密文复制下来, 在splashimage这个参数下一行添加:

password --md5 $1$AKO18/$7EaafQPtx.7y2UdZyL5cp0                       //centos的md5

hiddenmenu

保存后重新启动计算机,再次登录到GRUB菜单页面的时候就会发现, 这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑。

CentOS单用户模式下修改ROOT密码和grub加密的更多相关文章

  1. centos单用户模式:修改ROOT密码和grub加密

    centos单用户模式:修改ROOT密码和grub加密 CentOSLinux网络应用配置管理应用服务器  Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 ...

  2. CentOS 单用户模式:修改Root密码和grub加密[转]

    原文出处: http://zhengdl126.iteye.com/blog/430268 Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 Linux 系 ...

  3. 单用户模式下修改root密码

    1.重启或者开机时,在倒数3秒的界面按下任意键. 2.该界面有如下提示(e 编辑 a 更改内核选项 c 命令行  b 启动),所以我们按下"e"编辑. 3.上下键选中第二行再按下& ...

  4. Linux学习之CentOS(二十二)--单用户模式下修改Root用户的密码

    在上一篇随笔里面详细讲解了Linux系统的启动过程 (Linux学习之CentOS(二十一)--Linux系统启动详解),我们知道Linux系统的启动级别一共有6种级别,通过 /etc/inittab ...

  5. Centos7在单用户模式下重置root密码

    1.启动Centos7 ,按空格让其停留在如下界面: 鼠标上下可以选择启动内核,默认选择第一个内核开机 2.按e键进入编辑模式 e 按下e键后我们可能无法看到我们需要编辑的区域,这是因为在较新版本的C ...

  6. 在单用户模式下修改CentOS的root密码

    我们在使用CentOS的过程中可能会发生忘记root用户密码的情况,本文就从应用的角度简单介绍一下如何在单用户模式下修改root用户的密码. 开启CentOS,进入系统启动菜单 将光标停留在系统开机时 ...

  7. CentOS6.8单用户模式下修改密码

    CentOS6.8单用户模式下修改密码 1. 选择进入菜单menu界面,在开启系统出现如下界面时,按Esc键(只需按一下) 2. 然后进入到如下界面 3. 上图中红色矩形类的内容,按“a”键可以修改内 ...

  8. RHEL6.3进入单用户模式并重置root密码

    单用户模式类似于windows下的安全模式,允许root账号不输入密码直接启动并登录系统进行系统维护. 单用户模式只允许root账号登录,不允许其它用户使用ssh协议进行远程连接. 重启系统时按Ent ...

  9. CentOS6.6(单用户模式)重设root密码

    1.开机时手要快按任意键,因为默认时间5s 2.grub菜单,只有一个内核,没什么好上下选的,按e键.不过如果你升级了系统或安装了Xen虚拟化后,就会有多个显示了. 3.接下来显示如下,选择第二项,按 ...

随机推荐

  1. C++中的const关键字的用法

    1.const用于修饰普通变量,表示常量,不建议修改,某种程度上不允许修改(其实也是可以修改的) 指针常量 :指针(指向的变量的值)自身是一个常量,说明不能改变自身的指向  int* const p= ...

  2. j2SE基回顾(一)

    1. 九种基本数据类型的大小,以及他们的封装类. 2. Switch能否用string做参数? 3. equals与==的区别. 4. Object有哪些公用方法? Object是所有类的父类,任何类 ...

  3. org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1

    org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actua ...

  4. Liferay 7 portlet中所有能在@Component中修改的属性

    "com.liferay.portlet.action-timeout", "com.liferay.portlet.active", "com.li ...

  5. Web前端一种动态样式语言-- Less

    变量 变量允许我们单独定义一系列通用的样式,然后在需要的时候去调用.所以在做全局样式调整的时候我们可能只需要修改几行代码就可以了. // LESS @color: #4D926F; #header { ...

  6. Multi-catch

    It’s relatively common for a try block to be followed by several catch blocks to handle various type ...

  7. 1.C#基础篇-->封装、继承和多态

    面向对象三要素:封装.继承和多态.正确理解这三个要素,才能在编程中建立面向对象的思想. 1.封装使用篇 作用:好的封装增加代码的可读性,易于维护. 什么情况下使用封装,封装的原则是? 1>功能相 ...

  8. 【BZOJ】【3156】防御准备

    DP/斜率优化 斜率优化的裸题…… sigh……又把$10^6$当成10W了……RE了N发 这题还是很水的 当然逆序也能做……不过还是整个反过来比较顺手 反转后的a[0]=反转前的a[n],以此类推直 ...

  9. 【BZOJ】【1020】【SHOI2008】安全的航线flight

    计算几何/二分/迭代/搜索+剪枝 写三个tag可能是因为从哪个方向来理解都可以吧…… 我完全不会计算几何所以抄了ydc的代码 题解:http://ydcydcy1.blog.163.com/blog/ ...

  10. 引擎设计跟踪(九.14.2a) 导出插件问题修复和 Tangent Space 裂缝修复

    由于工作很忙, 近半年的业余时间没空搞了, 不过工作马上忙完了, 趁十一有时间修了一些小问题. 这次更新跟骨骼动画无关, 修复了一个之前的, 关于tangent space裂缝的问题: 引擎设计跟踪( ...