进入Linux/FreeBSD系统的单用户模式

在某些特殊场景下(例如排查ECS实例启动故障、修复系统异常、维护硬盘分区或root用户被锁定需要修改密码),您可以进入单用户模式进行操作。在该模式下,只启动最基本的组件和服务,并且操作者拥有系统管理员权限,能够修改全部系统配置信息,便于故障排查和问题修复。本文将为您介绍如何进入Alibaba Cloud Linux、CentOS、FreeBSD等操作系统ECS实例的单用户模式。

重要

在单用户模式下,您可以修改系统的关键配置,为了避免误操作对系统造成影响,建议您在必要的场景中设置该模式,并谨慎操作。

操作步骤

不同的操作系统,进入单用户模式的操作步骤不同,请以您实际的操作系统为准。

Alibaba Cloud Linux

本示例以Alibaba Cloud Linux 3.2104 LTS 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明

    使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

  2. 运行reboot重启ECS实例,并在重启过程中出现内核选项界面时按下键盘e键,进入GRUB界面。

    跳转界面如下。内核选项界面.png

  3. 使用键盘的方向键,移动光标至linux开头的一行,并在本行中将ro至末尾的内容替换为rw init=/bin/sh crashkernel=auto

    替换后的信息如图所示。进入单用户模式.png

  4. 按下键盘的Ctrl+X组合键或按F10键。

    系统会直接进入单用户模式。

    alibaba进入单用户模式.png

CentOS

本示例以CentOS 7 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明

    使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

  2. 运行reboot重启ECS实例,并在重启过程中出现内核选项界面时按下键盘e键,进入GRUB界面。

    GRUB界面如下。image

  3. 使用键盘的方向键,移动光标向下至linux开头的一行,并在本行末尾添加single

    添加后的信息如图所示。

    image

  4. 按下键盘的Ctrl+X组合键或按F10键启动系统,并输入root用户的密码。

    系统会进入单用户模式。

    image

Debian

本示例以Debian 12.2 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明

    使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

  2. 运行reboot重启ECS实例,并在重启过程中出现内核选项界面时按下键盘e键,进入GRUB界面。

    GRUB界面如下。db1

  3. 使用键盘的方向键,移动光标至linux开头的一行,并在本行末尾添加single

    添加后的信息如图所示。db3

  4. 按下键盘的Ctrl+X组合键或按F10键启动系统,并输入root用户的密码。

    系统会进入单用户模式。db4

SLES

本示例以SUSE Linux Enterprise Server 15 SP1 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明

    使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

  2. 运行reboot重启ECS实例,并在重启过程中出现内核选项界面时按下键盘e键,进入GRUB界面。

    GRUB界面如下。sles1

  3. 使用键盘的方向键,移动光标向下至linux开头的一行,并在本行末尾添加single

    添加后的信息如图所示。sles2

  4. 按下键盘的Ctrl+X组合键或按F10键启动系统,并输入root用户的密码。

    系统会进入单用户模式。sles3

Ubuntu

本示例以Ubuntu 18.04 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明

    使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

  2. 运行reboot重启ECS实例,并在重启过程中长按键盘Shift键,进入GRUB界面。

    GRUB界面示例如下。ubt1

  3. 选择GRUB页面第二行的高级选项(Advanced options for Ubuntu),并按下键盘上的Enter键。

  4. 在跳转页面选择第二行的恢复模式(recovery mode),并按下键盘e键编辑启动项。

    ubt2

  5. 在编辑页面,使用键盘的方向键,移动光标向下至linux开头的一行,并在本行中将ro至末尾的内容替换为rw single init=/bin/bash

    替换结果如下图所示。ubt4

  6. 按下键盘的Ctrl+X组合键或按F10键。

    系统会直接进入单用户模式。ubt5

FreeBSD

本示例以FreeBSD 14.1 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明
    • 使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

    • 由于FreeBSD 12.1及以上的镜像不支持使用密码登录实例,因此通过VNC连接后暂时停留在VNC管理终端待输入用户名密码的页面。FreeBSD各版本在阿里云平台上的支持情况请参见FreeBSD操作系统兼容性说明

  2. 在控制台重启ECS实例,在重启过程中VNC管理终端页面会进入Boot Menu界面

    image

  3. 在键盘上按5,将Cons输出模式切换为Video primary

    说明

    如果Cons输出模式为Serial primary,会将控制台交互重定向到串口,您可能通过VNC看不到任何输出。

    image

  4. 继续在键盘上按2选择Boot Single User,进入单用户模式。

    image

  5. 系统将加载并进入单用户模式的命令行界面,您可以按需进行其他操作。

    image

Anolis OS

本示例以Anolis OS 8.8 RHCK 64位操作系统的ECS实例为例。

  1. 远程连接ECS实例。

    具体操作,请参见通过VNC连接实例

    说明

    使用WorkbenchSSH命令远程连接的实例,在通过命令重启时不能直接进入启动系统页面,因此不建议使用这两种连接方式。

  2. 运行reboot重启ECS实例,并在重启过程中出现内核选项界面时按下键盘e键,进入GRUB界面。

    GRUB界面如下。image

  3. 使用键盘的方向键,移动光标向下至linux开头的一行,并在本行末尾添加single

    添加后的信息如图所示。image

  4. 按下键盘的Ctrl+X组合键或按F10键启动系统,并输入root用户的密码。

    系统会进入单用户模式。image

相关操作

  • root密码锁定等特殊场景下,您可以在单用户模式下运行passwd命令来更改密码。

    说明

    一般情况下,您可以在ECS控制台修改您的Linux实例密码,无需进入单用户模式。更多信息,请参见重置实例登录密码

  • 您可以在单用户模式下,查看系统日志文件、检查服务状态、测试网络连接等,以进行故障排除和问题修复。以排查Linux系统启动问题为例,您可以进行如下操作:

    • 如果系统配置文件出现问题,导致系统无法正常启动,您可以在单用户模式下修改相应的配置文件,以恢复系统的正常运行。

    • 如果某个驱动程序或软件包导致系统无法正常启动,您可以在单用户模式下卸载相关的驱动程序或软件包,以恢复系统的正常运行。

    说明

    您也可以通过卸载系统盘功能来排查启动故障问题,具体操作,请参见卸载或挂载系统盘