Linux服务器root密码忘了怎么改?,重置root密码步骤

忘记Linux服务器root密码后,不用重装系统,只要你能进入引导菜单或使用云控制台的救援功能,就能在几分钟内安全重置密码。

这件事我遇到过不止一次,第一次是在一台老旧的物理服务器上,密码忘了,业务还在跑,差点被吓懵,后来摸清了路子,其实就三步:选对入口、拿到root权限、改新密码,关键是你的服务器属于哪一类,决定了用哪种方式。

linux服务器root密码忘记了,重置前先分清这几种情况

先别急着敲命令,搞清楚服务器环境再动手,不同场景下,能用的工具完全不一样。

  • 物理机或自建虚拟机:你有物理接触权限,能重启并按键盘进入GRUB引导界面,首选单用户模式。
  • 云服务器:你无法直接插键盘,但云厂商通常提供网页版VNC终端和救援模式,也有现成的“重置密码”按钮。
  • 已设置GRUB密码或磁盘加密:单用户模式会被拦住,需要救援模式或系统盘修复。

这里有一个容易忽略的点:如果是云服务器,重置密码前建议先在控制台拍个快照,万一操作失误还能回滚,这不是浪费时间,而是给自己留条后路。

单用户模式:物理机重置root密码的通用方法

单用户模式类似Windows的安全模式,只加载最核心的服务,给你一个root shell,这是Linux下忘记root密码最常用的自救渠道。

进入GRUB编辑界面

  1. 重启服务器,在GRUB菜单出现时,快速按键盘上的 e 键进入编辑模式。
  2. 找到以 linux 或 linux16 开头的那一行,这行负责加载内核参数。
  3. 在这一行的末尾,先加一个空格,然后输入 single,或者直接换用 init=/bin/bash 也行,两个参数效果略有区别,single 更温和,init=/bin/bash 会直接跳转到shell。
  4. 按 Ctrl+X 或 b 键启动。

如果你的GRUB菜单有多个内核选项,选默认的那个就好,进入后,你会看到一个类似 sh-4.2# 的提示符,说明已经拿到root权限了。

挂载根分区并修改密码

Linux服务器root密码忘了怎么改?,重置root密码步骤

这里有个坑:此时根文件系统通常是只读的,直接运行 passwd root 会报错,所以你得先重新挂载,让它可写。

mount -o remount,rw /

然后输入 passwd root,按提示输入两遍新密码,密码建议用大小写字母加数字和符号组合,长度不小于12位。

改完密码后,还得处理SELinux标签问题,如果你的系统开启了SELinux,直接重启可能会导致文件上下文错乱,稳妥做法是在刚才的内核参数里再追加一句 autorelabel,或者在shell里执行:

touch /.autorelabel

这样重启后系统会自动重打SELinux标签,多花一点时间,但能避免莫名其妙的登录问题。

不同发行版的细微差异

这里以Ubuntu/Debian为例,增加一个补充操作说明。

  • Ubuntu的GRUB界面默认可能不显示,重启时需要按住 Shift 键呼出菜单。
  • Ubuntu进入单用户模式后,执行的命令通常是 mount -o remount,rw / 和 passwd root,步骤与CentOS一致。
  • 如果系统使用systemd管理,也可以在GRUB编辑时在linux行末尾追加 systemd.unit=emergency.target,效果类似。

重启验证

一切搞定后,执行 reboot 或 exec /sbin/init 重启,等系统起来,用新密码登录试试,如果卡在登录界面进不去,重点检查刚才的SELinux步骤是否漏了。

救援模式:当GRUB也被密码锁住时的备用方案

有些服务器为了安全,给GRUB设置了密码,这种情况下,上面的方法行不通,因为按 e 编辑前就会让你输密码,别急,你还有救援模式。

救援模式需要一张同版本或更高版本的Linux安装盘(U盘也行),或者一张Live CD,整体思路是让系统从外接环境启动,然后挂载硬盘上的根分区,再修改root密码。

使用Live CD挂载原系统修改密码

以Ubuntu Live CD为例:

  1. 用光盘或U盘启动,选择“试用系统”,进入桌面环境。
  2. 打开终端,用 lsblk 查看磁盘分区,找到原系统的根分区,一般类似

    Linux服务器root密码忘了怎么改?,重置root密码步骤

    /dev/sda1 或 /dev/nvme0n1p2。

  3. 挂载根分区到一个临时目录,并进入该目录:
mkdir -p /mnt/rootmount /dev/sda1 /mnt/rootchroot /mnt/root
  1. 在chroot环境里执行 passwd root,设置新密码。
  2. 退出chroot,卸载分区,重启服务器。

这种方法更灵活,也能顺手修一些系统文件问题,业内专家认为,救援模式比单用户模式更强大,但也要求你手头有可用安装介质。

云服务器忘记root密码,用控制台重置还是救援模式?

云服务器的管理方式和物理机差异很大,因为你看不到显示器,按键也被网页终端替代,好在这几年主流云厂商都内置了密码重置入口,省去不少折腾。

控制台一键重置

登录云厂商的网页控制台,找到实例列表,选中目标机器,点击“重置密码”按钮,一般会让你输入新密码,然后强制重启生效,这是我最推荐的方式,因为操作简单,而且系统会自动处理好文件系统挂载等问题。

这里要提醒一句:控制台重置密码通常需要先关机,或者支持在线重置但会重启实例,如果你的业务不能中断,最好先在非业务高峰期操作,或者提前做快照。

重置方式 适用场景 优点 缺点
控制台重置 系统能正常启动 操作简单,无命令行门槛 一般需要重启实例
VNC+运维操作 系统启动异常 可顺带排查其他问题 操作延迟高,容易误触
密钥登录后修改 已有有效私钥 业务不中断,秒级完成 要求提前配置过密钥对

VNC登录后手动重置

如果云厂商的重置功能不适用(比如系统损坏无法正常启动),你还可以用VNC登录到机器,然后按前面单用户模式的方法操作,VNC界面等于是一个远程的显示器加键盘,只是需要鼠标在网页上发消息,反应会慢一些,耐心点。

密钥对登录是另一个思路

Linux服务器root密码忘了怎么改?,重置root密码步骤

有些云服务器为了安全,禁用了密码登录,改用密钥对,如果你连root密码都忘了,但本地保存着私钥,就可以直接通过密钥登录,然后执行 sudo passwd root 来重置密码,这种方法对运行中的业务没有影响,也值得记下来。

root密码重置后的安全加固建议

很多人在重置完密码后就直接不管了,结果没过多久又出问题,密码管理是服务器安全的底线,建议你顺手做几件事:

  • 定期更换密码:尤其是root这类超级账户,建议每90天换一次。
  • 开启SSH密钥登录:关了密码登录,等于少了一半被暴力破解的风险。
  • 配置fail2ban:自动封禁多次登录失败的IP。
  • 把root直接登录关掉:日常操作用普通用户加sudo,root只留给紧急情况。

据统计,相当一部分Linux系统被入侵,都是因为root密码过于简单或者从不更换,别等到出事了才想起来补课。

关于linux服务器修改root密码,你可能会问的3个问题

修改root密码会不会导致已登录的会话失效?

不会,密码验证只在登录时发生,已经登录的SSH会话或终端不会被影响,不过建议你改完密码后通知其他管理员,避免他们下次登录时一脸懵。

重置时提示“Authentication token manipulation error”怎么办?

常见原因是根分区是只读的,确认你已经执行过 mount -o remount,rw /,且当前状态是干净的shell环境,如果依然报错,检查磁盘是否满了,或者尝试用救援模式再操作。

服务器上跑着业务,能直接重启进行重置吗?

可以,但需要有计划,重启会导致业务中断,严重的话可能遇到文件系统检查或数据未落盘,正确做法是先切换流量或通知用户,在维护窗口内操作,同时确保有最近的快照或备份。

重置root密码这事,本身不复杂,真正麻烦的是你对环境不够熟悉,记住一个原则:先判断服务器的类型和可用的救援入口,再动手,永远不要盲目重启,希望这篇文章能帮你少走弯路,几分钟内把问题解决掉。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/762971.html

赞 (0)
id登不上去连接服务器失败怎么办,网络异常怎么解决?
上一篇 2026年10月18日 16:28
HostDare洛杉矶VPS四折$10.4/年值得买吗,美国VPS推荐
下一篇 2026年7月1日 12:37

相关推荐

  • AIoT实训室是什么?AIoT实训室建设方案有哪些

    AIoT实训室是连接理论教学与产业实战的关键枢纽,通过构建“云-边-端”全链路真实环境,帮助学员掌握从传感器数据采集到云端可视化的完整技能闭环,显著提升就业竞争力,传统物联网教学往往受限于设备昂贵、场景单一且更新滞后,导致学生毕业后难以快速适应企业需求,而现代化的AIoT实训室正是为了解决这一痛点而生,它不仅仅……

    2026年6月16日
    2010
  • aspx文件打不开怎么解决?教你快速修复aspx文件

    ASPX文件:微软Web应用开发的核心解析ASPX文件是微软ASP.NET框架中用于构建动态网页的核心文件类型,其本质是一种包含服务器端代码的标记文件,在服务器上执行后生成标准的HTML发送给客户端浏览器, ASPX文件的技术本质与运作机制基础构成:混合标记与逻辑服务器指令 (<%@ Page……

    2026年2月7日
    10630
  • 一个服务器如何启动两个PHP,如何同时运行两个PHP版本?

    一个服务器启动两个PHP实例的核心答案是:通过PHP-FPM多池配置或Docker容器隔离,让不同版本的PHP并行监听不同端口或Socket,再由Nginx按站点需求分发请求,这套方案成熟稳定,绝大多数生产环境都这么干,下面从原理到实操一次讲透,一个服务器怎么启动两个php版本:先搞懂运行机制很多站长第一次听到……

    2026年10月8日
    100
  • excel中冒号是什么意思?excel冒号用法详解

    在Excel中,冒号(:)的核心作用是定义连续单元格或区域的引用范围,配合其他符号可实现批量操作、条件格式及公式快速填充,很多初学者看到冒号会感到困惑,因为它既不像加减乘除那样直接参与计算,也不像逗号那样仅仅分隔参数,冒号是Excel中最高效的“范围定义符”,当你需要告诉Excel“从A1到A100”或者“从S……

    2026年7月6日
    10600
  • 广州虚拟主机怎么安装JDK?广州虚拟主机支持安装JDK吗

    在广州虚拟主机上安装JDK,核心在于确认主机环境是否授予Root权限并支持Linux命令行,首选通过Yum/Apt源或RPM方式部署OpenJDK 17/21 LTS版本,而非传统本地解压,以确保2026年生产环境的安全与高效,广州虚拟主机环境评估与选型策略虚拟主机与云服务器的本质边界许多开发者常问:广州虚拟主……

    2026年4月27日
    5800
  • 客户端怎么接收服务器发送的数据,TCP Socket通信怎么实现?

    客户端接收服务器数据主要依赖于通信协议的选择,通过建立长连接(如WebSocket)或利用请求-响应机制(如HTTP/SSE)实现数据的异步或同步传输,基础通信模式:从拉取到推送在探讨具体接收方式前,需要理解客户端与服务器之间交互的本质,传统的Web通信是“拉取”模式,即客户端发起请求,服务器给出响应,但实际场……

    2026年7月12日
    18200
  • DHCP服务器如何设置为局域网中的,具体步骤是什么?

    局域网中设置DHCP服务器,核心是选一台常开设备安装DHCP服务,规划好地址池、网关、DNS和租期,并确保整个局域网只有一个DHCP在发地址, 下面从实操角度拆开讲,覆盖家庭、中小企业、多VLAN办公网场景,局域网DHCP服务器到底在做什么DHCP不是“装完就完”的软件,它在局域网里主要干四件事:动态分配IP地……

    2026年10月10日
    100
  • AIoT设计软件怎么选?好用的AIoT设计软件推荐

    AIoT设计软件的核心价值在于打通物理设备与数字智能的壁垒,实现从单一产品设计向智能生态系统设计的跨越,此类软件并非简单的CAD工具叠加,而是集成了硬件设计、软件开发、数据分析与用户体验交互的综合性平台,其最终目标是缩短智能产品的上市周期,提升系统整体的稳定性与用户体验,全链路设计能力的整合与重构传统设计工具往……

    2026年3月15日
    9600
  • 人工智能物联网控制,AI物联网如何实现智能控制?

    AI与物联网的深度融合正在重塑控制逻辑,推动系统从被动响应向主动预测与自主决策演进, 这种融合不仅提升了数据处理的效率,更赋予了终端设备前所未有的智能,实现了真正意义上的万物互联与智慧管理,在当前的技术浪潮中,{ai人工智能物联网控制}已成为推动工业4.0、智慧城市及智能家居发展的核心引擎,其本质是利用算法在边……

    2026年2月28日
    13000
  • asp.net输出xml时,如何确保生成的XML格式正确且兼容性高?

    在ASP.NET中输出XML数据是Web开发中处理数据交换、API接口及内容分发的关键技术,通过高效生成XML,开发者能确保数据在不同系统间的互操作性,提升应用的专业性和权威性,本文将深入探讨ASP.NET输出XML的核心方法、最佳实践及专业解决方案,帮助您构建可信且用户体验良好的应用,ASP.NET输出XML……

    2026年2月4日
    13600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注