• Linux 忘记密码怎么办,CentOS和Ubuntu重置密码方法


    忘记密码,所有改密码行为,只能在接触物理机的情况下适用,因为需要用到键盘控制。

    远程接触不了,是没法改的。除非服务器自动的远程系统,如dell的IDRAC远程操作,可以远程模拟物理环境,可远程重装系统等操作

    一:CentOS重置密码

    系统版本:centos 7.9

    方法1:

    1:开机按 “ESC” 键,进入系统引导界面,及时按上下方向键 “↑ ↓” 中断倒计时。

    在这里插入图片描述

    2:按“e”键,进入内核编辑界面

    在这里插入图片描述

    3:按方向“↓”键,往下翻到 linux16 这一行,然后在最后加上 “rd.break”

    rd.break 意思是,在系统中断之前将控制权从initramfs系统移交给实际系统,initramfs作用可自行研究,这里不深究。
    在这里插入图片描述

    4:“ctrl + x”保存,将进入 Initramfs 的debug 命令模式

    在这里插入图片描述

    5:依次输入以下命令

    为/sysroot提供读写权限

    mount -o remount,rw /sysroot/
    
    • 1

    切换至chroot环境,可以理解为以root 权限登录了原来的系统

    chroot /sysroot
    
    • 1

    这时,可以更改密码了

    passwd root
    
    • 1

    改完后,重新标记文件,创建这样一个文件其实就是在告诉SELinux放行这个策略,就是通知一下。如果开启了seLinux,就必须执行这个命令。

    touch /.autorelabel
    
    • 1

    最后输入两次“exit” 命令,第一次退出chroot 模式,第二次退出Initramfs 的debug 命令模式重启进入系统。最后即可用新密码登录系统了。
    在这里插入图片描述

    方法2:

    前面都一样,进入内核编辑界面,只是输入的口令不一样。

    1:这里是在Linux16这行找到 “ro”

    在这里插入图片描述

    2: 将“ro” 改成 “rw init=/sysroot/bin/sh”

    内核启动过程中会查找系统安装所在分区,然后把该分区挂在到 /sysroot 目录下,并由写的权限
    在这里插入图片描述

    3:然后 “ctrl+x” 保存开始进入单用户模式

    在这里插入图片描述

    4:后面步骤一样

    #切换至chroot环境
    chroot /sysroot
    #更改密码
    passwd root
    #创建标记文件
    touch /.autorelabel
    #退出
    exit
    #重启
    reboot
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述
    重启后,就可以用新密码登录了。

    二:Ubuntu重置密码

    Ubuntu版:20.04

    Ubuntu分两种情况

    情况一:从未设置过root密码的情况,忘记了其他登录用户密码

    这种情况是默认没有开启root用户登录的,所以也没有设置root密码,安装系统时直接配置的其他的用户,如ubuntu用户。这种情况相对比较简单。

    1:进入按"ESC"键,选择第二个高级选项

    在这里插入图片描述

    2:选择"recovery mode"恢复模式,按"enter" 回车进入

    在这里插入图片描述

    3:方向键"↓",下面选择root 回车

    在这里插入图片描述

    4:更改其他用户密码

    由于root本身没有设置密码,所以直接回车,即可进入root用户的命令模式。可直接修改其他用户的密码,如:ubuntu用户。也可以设置root密码,但是设置后,下次就不能用这种方式修改root密码了。

    #更改密码
    passwd ubuntu
    #更改完成后,重启就行
    reboot
    
    • 1
    • 2
    • 3
    • 4

    有些版本,如果没法改,可能是没有权限,需要先执行以下命令,因为根分区已授予只读权限,但是在这里你也必须提供 root 和写访问权限。要使用写权限重新挂载它。

    当然我这里的20.04没有这种情况,不执行以下命令,也可以直接更改其他用户密码。

    mount -rw -o remount /
    
    • 1

    在这里插入图片描述
    修改完成后,重启就可以用ubuntu新密码登录了。

    情况二:以前设置过了root密码,忘了root密码

    这种情况,用上面的方法就不行了,因为在恢复模式,root选择也是需要输入root密码的。会提示give root password for maintenance,这时候也有两种方法进入Grub模式修改。

    方法1:

    在这里插入图片描述

    1:在进入高级选择后,光标停留在"recovery mode",按“e”进入编辑模式

    与第一种情况不同的是,在高级选项种,这里不按回车,直接按“e”进入编辑模式

    在这里插入图片描述

    2:修改recovery nomodeset

    找到recovery nomodeset ,然后删除这条及后面内容,最后添加这条命令quiet splash rw init=/bin/bash
    在这里插入图片描述
    修改后如下:
    在这里插入图片描述
    最后按“ctrl+x” 或者F10 保存即可,保存后即可进入单用户模式

    3:修改root密码

    进入单用户模式后,这时可以修改root用户密码了,或者其他用户密码。
    最后exit退出,重启即可用新密码登录root。
    在这里插入图片描述

    方法2:

    1:引导页面直接按“e” 进入grub编辑模式

    在开始的选择的这个页面直接按“e” 进入grub,不需要在高级选项种按“e”进入grub了
    在这里插入图片描述

    2:引导页面直接按“e” 进入grub编辑模式

    找到,ro这一行
    在这里插入图片描述

    3:删掉ro及后面内容,添加rw init=/bin/bash

    修改后如下:
    在这里插入图片描述
    最后按“ctrl+x” 或者F10,保存进入单用户模式

    4:进入单用户模式,修改root密码

    进入单用户模式,可以直接修改密码了
    在这里插入图片描述
    修改密码

    #修改当前用户密码,及root
    passwd
    #或者其他用户
    passwd root
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述
    修改完成后,保存重启

    exec /sbin/init
    
    • 1

    重启后,就可以用新设置的密码登录了。

  • 相关阅读:
    java-net-php-python-jspm生活百汇线上超市系统计算机毕业设计程序
    ASP.NET大型外卖订餐系统源码 (PC版+手机版+商户版)
    Java--异常/Exception--try/catch/finally的return顺序
    【MyBatis】MyBatis是什么?能干什么?一篇学习MyBatis,知识点详细解释,实例演示
    基于Zookeeper实现高可用架构
    想做好接口测试,先把这些概念搞清楚了
    iEnglish全国ETP大赛:教育游戏助力英语习得
    iptables之SNAT,DNAT原理与DNS分离解析实验
    一款EF Core下高性能、轻量级针对分表分库读写分离的解决方案
    音视频 ffplay命令播放媒体
  • 原文地址:https://blog.csdn.net/weixin_52270081/article/details/126029470