单用户模式和救援模式
目录
1、 单用户模式
单用户模式可以对系统进行修复,如:修改root密码,修改因配置不正确而导致系统启动失败的配置文件等。
(1) Centos7进入单用户模式
1) 进入grub2菜单时按 ‘e’ 进入编辑模式
2) 在编辑模式中下翻,在指定行修改 ‘ro’ 为 ‘rw’ ,然后在行末添加 init=/bin/sh,然后按 ctrl+x 启动
3) 设置可写挂载:如果第二步中设置rw为ro则需要进行本步骤设置,否则不需要在提示符下输入命令“mount -o remount,rw /”,挂载文件系统为可写模式,输入的命令有可能不会显示出来,输入完成按回车
4) 当前系统即是真实可写的系统,可以对系统进行修改,包括修改root密码、修改引起系统问题的配置文件等
5) 如果对系统进行了修改,则需要运行命令 ‘touch /.autorelabel’,否则可能无法正常启动系统(这句是为了selinux生效)
6) 执行命令 ‘exec /sbin/init’ 重启到正常系统。
2、 救援模式
救援模式就是从其他介质启动(能够自己选择挂载的分区),从而获得一个runlevel(如果按照流程,会进入level1的单用户模式),因为不需要从硬盘启动并且可以将硬盘中的系统以及文件挂载,可以从安装介质中获取硬盘系统中受损或丢失的文件或者将重要数据拷贝出来。
1) 插入完整的系统光盘并设置从光盘启动(系统镜像、优盘都可以,只要能进入系统安装界面即可,相同版本,因为所需文件都相同),进入安装系统时的界面选择第三项
2) 选择第二项 ‘Rescue a CentOS system’ 进入救援模式
3) 输入 1 ,回车
4) 根据提示,硬盘上的系统已经被挂载到 /mnt/sysimage 目录下,并且需要原系统的root身份请执行chroot /nmt/sysimage
如果使用 chroot /mnt/sysimage 则会将当前系统切换到硬盘上的系统,如果不使用这个命令,则可以修改这个目录中文文件达到操作硬盘上系统的需求。
未执行 chroot /mnt/sysimage 时的根目录文件即是启动盘上系统的文件,都是初始文件,如果需要可以直接拷贝到硬盘系统的挂载中即可。
5) 例:修改root密码
切换系统方案:
进入救援模式后执行 # chroot /mnt/sysimage
此时系统已经被切换到硬盘上的系统,并且你具有root身份
直接执行 passwd 或 passwd root 修改root密码
不切换系统方案:
# vi /mnt/sysimage/etc/passwd 修改硬盘系统上的用户配置文件
将 root 用户信息中的第二列的 x 删除,保存退出。(第二列的x表示是否设置了密码)
当再次登陆系统的时候不需要输入root密码即可进入系统,然后执行passwd修改密码即可。
6) 如果切换了系统(chroot /mnt/sysimage)则需要执行两次 exit 才能退出并重启。
3、 总结
(1) 单用户模式主要是在grub2引导时编辑内核引导,以只读或可写的方式挂载系统,一般用于简单的修复系统,例如:修改root密码,修复由于配置不正确导致系统不能启动的配置文件等。
(2) 救援模式需要通过系统安装介质进入,救援模式是将硬盘系统挂载,并获得一个单用户状态,一般用于修复严重的系统灾难,也可以使用救援模式修复简单的系统问题,因为救援模式也是单用户模式。