Linux 忘记登录密码
CentOSGRUB引导菜单"e"rwpasswdpasswdpasswd 文件。
001 Linux 忘记登录密码、root 密码、普通用户密码
操作的设备是虚拟机、安装的 CentOS & Ubuntu 双系统(这些操作都只能在物理机上实现)
Linux & CentOS(版本:7.9)
- 重新启动
CentOS系统。 - 在
GRUB引导菜单中,选择要启动的CentOS系统,然后按下键盘上的"e"键,进入编辑模式。

- 在编辑模式中,找到以 “linux16” 开头的行(或者是 “linuxefi”、“linux”),在该行的末尾添加以下内容:
rd.break enforcing=0
例如:
linux16 /vmlinuz-3.10.0-1127.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto
rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet rd.break enforcing=0
或者:

- 按下 Ctrl+X 或 F10 键启动系统。
- 系统会启动到
emergency mode,并自动挂载文件系统为只读模式。(出现终端即为成功) 
- 使用以下命令重新挂载文件系统为可写模式
rw:
mount -o remount,rw /sysroot
- 使用以下命令切换到 chroot 环境:
chroot /sysroot

- 使用以下
passwd命令重置密码:- 查看所有用户:
cat /etc/passwd,配置文件:passwd 
- 根据提示输入新的密码:
- 修改成功:passwd:all authentication tokens update successfully.

- 查看所有用户:
passwd 文件:hutao : x : 1000 : 1000 : hutao : /home/hutao : /bin/bash
- hutao: 用户名
- x: 加密后的密码,或者在现代操作系统中,会将密码存储在阴影密码文件中,所以在这里显示为"x"
- 1000: 用户ID(UID),在系统中唯一标识该用户的数字
- 1000: 主组ID(GID),用户所属的主组的数字标识
- hutao: 用户的详细信息,可以代表用户的真实姓名或其他描述信息
- /home/hutao: 用户主目录的路径,通常用于存储用户的个人文件和配置信息
- /bin/bash: 用户默认的shell,也就是用户登录后所使用的命令解释器。
- 使用以下命令重新加载 SELinux 策略(如果之前使用了
enforcing=0):touch /.autorelabel

- 使用以下
exit命令退出 chroot 环境 - 使用以下命令重新挂载文件系统为只读模式
ro,以使更改生效:mount -o remount,ro /sysroot - 最后重启系统:
reboot
在系统重新启动后,使用新设置的密码登录 CentOS 系统。(root 用户)
省流:
- 重启进入配置
- Linux… 追加:
rd.break enforcing=0 - 写入模式:
mount -o remount,rw /sysroot/ - 修改环境:
chroot /sysroot/ - 修改密码:
passwd root - 创建文件:
touch /.autorelabel - 退出环境:
exit - 只读模式:
mount -o remount,ro /sysroot/ - 重启系统:
reboot
Linux & Ubuntu(16.04 LTS)
使用维护模式(需要维护模式的 root 密码)
-
重新启动 Ubuntu 系统。
-
在 GRUB 引导菜单出现之前,按住 Shift 键,以便进入引导选项。
-
在引导菜单中,选择并进入
Advanced options for Ubuntu(Ubuntu 高级选项)。
-
在高级选项菜单中,选择并进入包含
recovery mode(恢复模式)字样的选项。如果有多个恢复模式选项,请选择最新版本。
-
在恢复模式菜单中,选择并进入
root Drop to root shell prompt(以 root 权限进入 root shell 提示符)。 -

-
载入文件系统并以root权限进入终端,你将看到命令提示符。
- 需要 root 的密码、root 密码 != 普通用户的密码
-
Ubuntu 系统中的 root 用户密码通常与普通用户的密码是分开设置的。默认情况下,在Ubuntu系统中,root 用户是禁用的,并且使用 sudo 命令来获取临时的root权限。
临时使用 root 权限时使用的密码是普通用户的密码,那是由于 sudo 命令要求输入的是当前用户的密码,而不是 root 用户的密码。
在 Ubuntu 系统中,普通用户可以使用 sudo 命令获取临时的 root 权限。当使用sudo命令时,终端会提示输入自己的用户密码(普通用户的密码),而不是 root 用户的密码。
- 查看所有用户(root、普通用户)配置文件:
cat /etc/passwd 
-
输入以下命令来挂载文件系统
rw读写模式 :mount -o remount,rw / -
输入以下命令来更改用户密码,将
username替换为需要重置密码的用户名:- 可以修改
root用户的密码 - 可以修改
普通用户的密码 - 取消输入:
Ctrl + D - 成功显示:passwd:password update successfully
passwd username - 可以修改
-
终端会提示输入新密码两次。输入新的密码并确认。
-
输入以下命令来挂载文件系统
ro只读模式(不写也行好像) :mount -o remount,ro / -
更改密码后,输入命令
reboot来重新启动系统
省流:
-
进入恢复模式
-
进入 root shell(需要 root 密码)
-
读写模式:
mount -o remount,rw / -
重置密码:
passwd 用户 -
reboot重启
重置 root 密码
-
在启动时按下开机键或重启键时,按住 Shift 键,直到出现引导菜单(重启系统)
-
在引导菜单中,选择进入正常的 Ubuntu 系统,但不要按 Enter 键(选择系统)。
-
使用方向键移动到要启动的内核选项上,并按下
e键进入编辑模式。
-
在编辑模式下,找到以
linux开头的行,并在行尾(通常在 “quiet splash” 之后)添加init=/bin/bash:
按下Ctrl+X 键或 F10 键启动系统。
-
如果没啥问题的话(有问题强制重启),系统会进入单用户模式(none),将以 root 用户身份进入没有图形界面的命令行终端。

- 输入以下命令来挂载文件系统为可读写模式:
mount -o remount,rw /
- 输入以下命令以重置 root 密码:
- 也可修改普通用户的密码
passwd root
系统将要求输入新的 root 密码两次。请输入并确认新密码。
- 完成输入新密码后,重新启动系统:
- 不能使用
reboot或exit(显示:failed… 消息的话、exit 直接卡死) - 读写模式:
mount -o remount,rw /(之前设置过了) - 输入以下命令以退出单用户模式并重新启动系统:
-
这将执行 init 进程并重新启动系统。请注意,这些命令需要以 root 权限执行。如果在单用户模式下无法使用 root 权限,请尝试使用 sudo 命令来执行这些命令。
sbin:系统的二进制执行文件exec /sbin/init
- 不能使用
系统将重新启动,然后就可以使用新设置的 root 密码。
省流:
- 配置引导编辑页面
- 单用户模式:Linux… 行末尾
init=/bin/bash - 读写模式:
mount -o remount,rw - 重置密码:
passwd root - 退出单、重启:
exec /sbin/init
passwd 命令
-
以上都是在没有进入系统的情况下重置密码(root、普通用户)
-
进入系统:直接使用
passwd 用户名就能重置密码 -
passwd重置用户密码指令
问题修改
更多推荐



所有评论(0)