在进行Linux MCU/AI/机器人开发中笔者有各种各样的Linux系统常常切换项目后忘记root密码。root密码重置是必须掌握的核心技能。本文整合Linux主流发行版的密码重置方案涵盖GRUB引导编辑、单用户模式、Live CD救援三种核心方法适配物理机、虚拟机及云服务器环境。在Linux系统运维中忘记root密码是每个管理员必须掌握的核心技能。本文章将为您呈现覆盖RHEL/CentOS、Debian/Ubuntu、Arch、openSUSE、Fedora等Linux发行版的密码重置方案。关于中断Linux引导的按键在GRUB引导界面按E键是标准操作某些系统可能需要先按Esc进入GRUB菜单。MCU Linux或其他嵌入式系统可能使用不同的引导加载程序如U-Boot, 串口连接在启动早起按CtrlC因此操作方式不同。一、通用重置原理与核心步骤所有重置方法均基于Linux启动阶段的可干预特性核心步骤分为三阶段启动拦截通过GRUB/systemd-boot修改内核参数权限获取进入单用户模式或initramfs救援环境密码重置重新挂载文件系统并执行passwd命令二、Linux发行版实操指南RHEL/CentOS/Centos Stream/Fedora/Rocky Linux方法一rd.break救援模式在系统出现引导界面时按E键进入内核编辑界面在系统内核行末尾添加rd.break参数然后按CtrlX组合键或F10来运行修改过的内核程序大约30秒过后进入系统的紧急救援模式。依次输入以下命令等待系统重启操作完毕然后就可以使用新密码来登录系统mount-oremount,rw /sysroot#以读写方式重新挂载chroot/sysroot#切换至/sysrootpasswdroot#重设密码或使用echo 2 | passwd roottouch/.autorelabel#重建selinux标记文件exit#退出编辑模式输入两次exit或一次exit一次rebootreboot-f方案二init/bin/bash应急模式在系统出现引导界面时按E键进入内核编辑界面在系统内核行末尾添加init/bin/bash参数然后按CtrlX组合键或F10来运行修改过的内核程序大约30秒过后进入系统的应急模式。依次输入以下命令等待系统重启操作完毕然后就可以使用新密码来登录系统mount-oremount,rw /#以读写方式重新挂载passwdroot#重设密码使用passwd或echo 2 | passwd root --stdintouch/.autorelabel#重建selinux标记文件exec/sbin/initDebian/Ubuntu系统在系统出现引导界面时按E键进入内核编辑界面在系统内核行末尾添加init/bin/bash参数然后按CtrlX组合键或F10来运行修改过的内核程序重新挂载文件系统mount-oremount,rw /修改root密码passwdroot#输入新密码两次重启系统exec/sbin/initArch Linux系统在系统出现引导界面时按“E”键进入内核编辑界面在系统内核行末尾添加“init/bin/bash”参数然后按“CtrlX”组合键或F10来运行修改过的内核程序大约30秒过后进入系统的应急模式。依次输入以下命令等待系统重启操作完毕然后就可以使用新密码来登录系统mount -o remount,rw / passwd exec /sbin/initopenSUSE系统在系统出现引导界面时按“E”键进入内核编辑界面在系统内核行末尾添加“init/bin/bash”参数然后按“CtrlX”组合键或F10来运行修改过的内核程序大约30秒过后进入系统的应急模式。依次输入以下命令等待系统重启操作完毕然后就可以使用新密码来登录系统mount -n -o remount,rw / #重新挂载根分区为可写 passwd #修改root密码 mount -n -o remount,ro / #恢复根分区非必须部分系统会自动恢复 exec /sbin/reboot #重启系统