设置 Linux 云服务器进入单用户模式
最近更新时间: 2024-10-17 17:10:00
操作场景
Linux 用户有时候需要进入到单用户模执行一些比较特殊的操作,例如密码管控,sshd 损坏等。本文档介绍主流 Linux 操作系统进入单用户模式的操作步骤。
操作步骤
判断操作系统类型
根据操作系统类型,选择不同的操作步骤。
CentOS 6 操作系统,执行 CentOS 6 的步骤。
CentOS 7 操作系统,执行 CentOS 7 的步骤。
Ubuntu 操作系统,执行 Ubuntu 的步骤。
CentOS 6
说明: Centos 6 采用 GRUB 启动引导程序,以下操作步骤以 CentOS 6.9 为例,根据操作系统的版本不同,详细操作步骤略有区别。
登录云服务器。
执行以下命令,打开
/etc/grub.conf
文件。vi /etc/grub.conf
按 i 进入编辑模式。
查找到 “GRUB_TIMEOUT” 默认启动项等候时间的参数,并根据实际需求修改其值为需设置的时间范围。 “GRUB_TIMEOUT” 默认值为5秒,为了避免因等候时间太短看不到开机界面,建议将其调整为60秒或者更大。
注意: 该项影响系统的启动时间,完成配置后,需将其修改回默认值。
按 Esc 退出编辑模式,输入 :wq,按 Enter。 保存设置并退出 VI 编辑器。
执行以下命令,重启服务器。
reboot
等待约1分钟,并通过 VNC 登录该 CVM 实例。登录界面如下图所示:
- 按任意键进入菜单。如下图所示:
- 按 e 进入内核编辑界面,输入 single。如下图所示:
- 按 Enter。如下图所示:
- 在如下图所示界面,按 b 进入单用户模式。
执行以下命令,退出单用户模式。
exec /sbin/init
CentOS 7
说明: 与 CentOS 6 不同,CentOS 7 之后版本采用 GRUB 2。以下操作步骤以 Centos 7.5 为例,根据操作系统的版本不同,详细操作步骤略有区别。
登录云服务器。
执行以下命令,打开
/etc/default/grub
文件。vi /etc/default/grub
按 i 进入编辑模式。
查找到 “GRUB_TIMEOUT” 默认启动项等候时间的参数,并根据实际需求修改其值为需设置的时间范围。如下图所示:
“GRUB_TIMEOUT” 默认值为5秒,为了避免因等候时间太短看不到开机界面,建议将其调整为60秒或者更大。
注意: 该项影响系统的启动时间,完成配置后,需将其修改回默认值。
按 Esc 退出编辑模式,输入 :wq,按 Enter。 保存设置并退出 VI 编辑器。
执行以下命令,重新编译和生成 grub.cfg 文件。
grub2-mkconfig -o /boot/grub2/grub.cfg
返回结果如下图所示:
执行以下命令,重启服务器。
reboot
等待约1分钟,并通过 VNC 登录该 CVM 实例。登录界面如下图所示:
- 按 e 进入内核编辑界面,并将 init=/bin/sh 添加至红框处。如下图所示:
- 按 Ctrl+X,启动并进入单用户模式。如下图所示:
执行以下命令,退出单用户模式。
exec /sbin/init
Ubuntu
说明: 以下操作步骤以 Ubuntu 16.04 为例,根据操作系统的版本不同,详细操作步骤略有区别。
登录云服务器。
执行以下命令,打开
/etc/default/grub
文件。sudo vi /etc/default/grub
按 i 进入编辑模式。
查找到 “GRUB_TIMEOUT” 默认启动项等候时间的参数,并根据实际需求修改其值为需设置的时间范围。如下图所示:“GRUB_TIMEOUT” 默认值为5秒,为了避免因等候时间太短看不到开机界面,建议将其调整为60秒或者更大。
注意: - 该项影响系统的启动时间,完成配置后,需将其修改回默认值。
- Ubuntu 的默认帐户非 root,请注意使用 sudo 命令。
按 Esc 退出编辑模式,输入 :wq,按 Enter。 保存设置并退出 VI 编辑器。
执行以下命令,重新编译和生成 grub.cfg 文件。
sudo update-grub
返回结果如下图所示:
执行以下命令,重启服务器。
sudo reboot
等待约1分钟,并通过 VNC 登录该 CVM 实例。登录界面如下图所示:
- 按 e 进入内核编辑界面,并将 rw single init=/bin/bash 添加至红框处。如下图所示:
- 按 Ctrl+X,启动并进入单用户模式。如下图所示: