Ubuntu系统密码忘记了怎么办?Ubuntu系统密码重置完全指南

Ubuntu系统密码忘记了怎么办?Ubuntu系统密码重置完全指南

Ubuntu 使用过程中,密码管理是基础且关键的操作 —— 无论是定期更换密码保障安全,还是遗忘密码后急需恢复系统访问,都需要对应的解决方案。本文针对 “已知密码修改”“遗忘密码重置” 两大核心场景,详细拆解本地系统、云服务器、Live USB 三种环境下的操作步骤,附带关键命令与注意事项,帮你快速解决密码相关问题。

一、已知密码:轻松修改密码(定期维护场景)

若你记得当前密码,仅需通过终端命令即可完成修改,分为 “修改当前用户密码” 和 “修改其他用户密码” 两种情况,操作简单且无需特殊权限(修改他人密码需 sudo 权限)。

1. 修改当前用户密码(普通用户自用)

适用于日常定期更换自己账户的密码,步骤如下:
  1. 打开终端:按下快捷键 Ctrl + Alt + T,调出 Ubuntu 终端窗口;
  2. 执行修改命令:输入以下命令并回车:
    passwd
    
  3. 按提示完成验证与设置
    • 首先输入当前密码(输入时不显示字符,输完回车即可,用于身份验证);
    • 然后输入新密码(同样不显示,建议包含大小写字母、数字和特殊符号,提升安全性);
    • 最后再次输入新密码确认,避免输入错误;
  4. 确认成功:若提示 password updated successfully,说明密码修改完成。

2. 修改其他用户密码(需 sudo 权限)

若你是管理员(拥有 sudo 权限),可帮其他用户重置密码(如同事忘记密码但你有管理权限),步骤如下:
  1. 打开终端,输入命令(将 username 替换为目标用户的实际用户名,如 ubuntu):
    sudo passwd username
    
  2. 验证管理员权限:输入你自己的 sudo 密码(非目标用户密码),回车确认;
  3. 设置新密码:无需输入目标用户的旧密码,直接输入两次新密码(步骤同前);
  4. 完成修改:提示 password updated successfully 即表示目标用户密码已重置。

二、遗忘密码:重置密码(无法登录场景)

这是更常见的紧急场景 —— 忘记密码导致无法进入系统,需通过 GRUB 引导、恢复模式等方式获取 root 权限,进而重置密码。注意:此方法仅适用于本地 Ubuntu 系统(如台式机、笔记本),云服务器需用专用方法(见下文)

核心前提

需能调出 GRUB 引导菜单(Ubuntu 开机时的启动选择界面),若菜单默认隐藏,可通过快捷键触发:
  • 传统 BIOS 系统:开机时快速、反复按 Shift 键;
  • UEFI 系统:开机时快速、反复按 Esc 键。

详细步骤(GRUB + 恢复模式)

步骤 1:进入 GRUB 高级选项

  1. 开机调出 GRUB 菜单后,用方向键选择 “Advanced options for Ubuntu”(Ubuntu 高级选项),按回车;
  2. 接下来会显示多个内核版本(如 Linux 5.15.0-xx-generic),选择带有 “recovery mode”(恢复模式) 的选项(通常是第二个,括号内标注 [recovery mode]),按回车。

步骤 2:进入 root 命令行(关键操作)

  1. 进入 “Recovery Menu(恢复菜单)” 后,会看到多个选项(Resume、Clean、dpkg 等),用方向键选择 “root”(Drop to root shell prompt),按回车;
  2. 此时会进入 root 权限的终端界面,但默认根文件系统是 “只读模式”,无法修改密码文件,需下一步处理。

步骤 3:将根文件系统挂载为 “可写模式”

这是重置密码的核心前提 —— 只有可写模式才能修改 /etc/shadow(存储用户密码的关键文件),输入以下命令并回车:
mount -o remount,rw /
  • 命令解析:mount -o remount 表示重新挂载文件系统,rw 表示 “可读写”,/ 表示根分区。

步骤 4:重置目标用户密码

  1. 输入密码修改命令(将 ubuntu 替换为你忘记密码的用户名,如自己的日常账户名):
    passwd ubuntu
    
    • 若需重置 root 密码(默认 Ubuntu 不启用 root 登录,除非手动开启过),则输入 passwd root
  2. 按提示输入两次新密码(输入时不显示,确保两次一致);
  3. 提示 passwd: password updated successfully 即表示密码重置完成。

步骤 5:重启系统并验证

  1. 输入以下命令重启电脑
    reboot
    
  2. 系统重启后,在登录界面输入新设置的密码,即可正常进入系统。

三、特殊场景:云服务器与 Live USB 密码重置

除本地系统外,云服务器(如 AWS、阿里云)和 Live USB 环境下的密码重置方法不同,需针对性操作。

1. Ubuntu 云服务器(AWS EC2、阿里云、腾讯云等)

云服务器无法通过 GRUB 修改密码(无本地硬件访问权限),需通过云平台 “控制台” 或 “救援模式” 操作,核心原理是 “挂载系统盘到临时环境修改密码文件”。

不同云平台操作示例

  • AWS EC2
    1. 登录 AWS 控制台,进入 “EC2 实例” 页面;
    2. 选中目标实例,点击 “操作”→“监控和故障排除”→“获取系统日志”(排查密码相关问题),或直接使用 “EC2 串行控制台”(需提前开启)输入 root 命令重置;
    3. 也可通过 “实例重置密码” 功能(部分镜像支持)直接设置新密码。
  • 阿里云 / 腾讯云
    1. 登录云控制台,找到目标实例;
    2. 点击 “更多”→“重置密码”(部分实例支持直接重置),或启用 “救援模式”(挂载系统盘到救援实例);
    3. 进入救援实例后,挂载原系统盘,修改 /etc/shadow 文件中的密码字段(或通过 chroot 执行 passwd 命令)。

2. Ubuntu Live USB/CD(手头有安装盘时)

若忘记密码且有 Ubuntu 安装 U 盘 / 光盘,可通过 Live 环境(临时系统)挂载原系统分区,进而重置密码,步骤如下:

步骤 1:用 Live USB 启动电脑

  1. 将 Ubuntu 安装 U 盘插入电脑,开机时按快捷键(如 F12、F2,不同品牌主板不同)选择从 U 盘启动;
  2. 选择 “Try Ubuntu”(试用 Ubuntu,不安装),进入 Live 临时系统。

步骤 2:挂载原系统分区

  1. 打开终端,先查看原系统的根分区(即安装 Ubuntu 的分区,通常是 /dev/sda1/dev/nvme0n1p2 等),输入命令:
    lsblk  # 或 sudo fdisk -l
    
    • 识别方法:根分区通常容量较大,类型为 “ext4” 或 “btrfs”;
  2. 创建挂载目录并挂载原根分区(将 /dev/sda1 替换为你的实际根分区路径):
    sudo mkdir /mnt/ubuntu  # 创建挂载点
    sudo mount /dev/sda1 /mnt/ubuntu  # 挂载原根分区
    

步骤 3:挂载虚拟文件系统并进入原系统

  1. 挂载 /dev/proc/sys 等虚拟文件系统(确保 chroot 后命令正常运行):
    sudo mount --bind /dev /mnt/ubuntu/dev
    sudo mount --bind /proc /mnt/ubuntu/proc
    sudo mount --bind /sys /mnt/ubuntu/sys
    
  2. 进入原系统的命令行环境(chroot,即 “切换根目录”):
    sudo chroot /mnt/ubuntu
    

步骤 4:重置密码并重启

  1. 执行密码修改命令(将 yourusername 替换为目标用户名):
    passwd yourusername
    
  2. 输入两次新密码,提示成功后退出 chroot 环境:
    exit
    
  3. 卸载挂载的分区(避免数据损坏),然后重启:
    sudo umount -R /mnt/ubuntu  # -R 表示递归卸载所有子挂载点
    sudo reboot
    

四、总结:不同场景密码处理方法对照表

场景类型 核心操作方法 适用环境
已知密码,修改当前用户 终端输入 passwd,按提示输旧密码 + 新密码 本地 / 云服务器普通用户
已知密码,修改其他用户 终端输入 sudo passwd 用户名,输 sudo 密码 + 新密码 本地 / 云服务器管理员
遗忘密码,本地系统 GRUB→高级选项→恢复模式→root shell→挂载可写→passwd 用户名 台式机、笔记本
遗忘密码,云服务器 云平台控制台(如 AWS EC2 串行控制台、阿里云重置密码)或救援模式修改 AWS、阿里云、腾讯云等
遗忘密码,有 Live USB Live 环境挂载原分区→chroot→passwd 用户名 本地系统,有安装 U 盘 / 光盘

五、安全提示(必看)

  1. 牢记密码:重置后的密码需妥善保存,尤其是 root 密码(若启用),避免重复遗忘;
  2. 普通用户优先:日常使用建议用普通用户(而非 root),通过 sudo 获取临时管理员权限,降低误操作风险;
  3. 定期改密码:建议每 3-6 个月更换一次密码,密码包含 “大小写 + 数字 + 特殊符号”(如 Ubu#2025!),避免简单密码(如 123456、password);
  4. 云服务器安全:云服务器密码重置后,需同步更新远程登录工具(如 PuTTY、Xshell)的保存密码,同时开启 SSH 密钥登录(比密码更安全)。
阅读剩余