温馨提示×

debian怎么替换root密码

小樊
40
2026-09-17 03:26:30
栏目: 智能运维

在 Debian 里“替换(修改)root 密码”通常有三种常见场景,下面分别说明。


一、已知当前 root 密码(正常修改)

以 root 身份执行:

passwd

按提示输入新密码两次即可。

如果你是普通用户且有 sudo 权限,也可以:

sudo passwd root

然后设置 root 的新密码。


二、忘记 root 密码(单用户 / 救援模式重置)

方法 1:使用 GRUB 进入单用户模式(最常见)

  1. 重启 Debian
  2. 在 GRUB 启动界面,选中 Debian 内核,按 e 编辑
  3. 找到以 linux 开头的那一行,例如:
    linux /boot/vmlinuz-... root=... ro quiet
    
  4. ro 改为 rw,并在行尾加上:
    init=/bin/bash
    
    示例:
    linux /boot/vmlinuz-... root=... rw quiet init=/bin/bash
    
  5. Ctrl + X 启动
  6. 系统会直接进入 root shell(不需要密码)

执行:

passwd root

设置新密码后:

exec /sbin/init

或重启:

reboot -f

方法 2:使用 Debian 安装盘 / 救援模式

  1. 用 Debian ISO 启动
  2. 选择 Advanced > Rescue mode
  3. 挂载原系统到 /mnt
  4. 执行:
    chroot /mnt
    passwd root
    
  5. 退出并重启

三、批量 / 脚本方式替换 root 密码(不推荐明文)

例如用 chpasswd

echo "root:NewPass123" | chpasswd

或更安全一点(从文件):

echo "root:NewPass123" > /tmp/pw
chpasswd < /tmp/pw
rm -f /tmp/pw

⚠️ 注意:明文密码有安全风险,仅用于自动化环境。


四、确认是否允许 root 登录

Debian 默认可能禁止 root SSH 登录:

grep PermitRootLogin /etc/ssh/sshd_config

如需要修改:

PermitRootLogin yes

然后:

systemctl restart ssh

如果你是 云服务器 / VPS / 容器(Docker/LXC),方式会不同,可以告诉我具体环境,我可以给你更合适的做法。

0