如何重设忘记的Raspberry Pi密码

34

有时我会忘记项目中的Raspberry Pi密码。它’确实很麻烦,但是本指南提供了一种重置密码并获得对系统的访问权并使其恢复运行的技术。您需要物理访问SD卡,单独的PC以及将Pi连接到显示器和键盘的功能。我使用Windows PC,但是在Mac或Linux计算机上应该可以正常工作。

第1步–Pi密码恢复要求

Raspberry Pi密码

要使用此技术,您必须:

  • 可以物理访问Pi及其SD卡
  • 使用键盘和显示器
  • 如果使用的是Pi Zero,则合适的适配器
  • 配备带microSD读卡器的PC /笔记本电脑

第2步– Grab The SD Card

关闭Pi的电源并取出SD卡。将其插入您的PC。

第三步– Edit cmdline.txt

引导分区应该是可见的,并且包含一个名为“cmdline.txt”。在文本编辑器中编辑此文件,并将以下内容添加到 现有文字的结尾 :

初始化= / bin / sh

如果原始内容是:

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=PARTUUID=04ceb741-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

现在应该看起来像:

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=PARTUUID=04ceb741-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait 初始化= / bin / sh

确保全部为一行!保存文本文件,然后从PC弹出SD卡。

步骤4–重置树莓派密码

将卡插入显示器和键盘的Pi中。给Pi上电。可能会有延迟,但是您应该看到一个光标。

在提示符下,键入以下命令:

安装 -o remount, rw /

如果这导致出现错误消息,例如:

/bin/sh: 0: can’t access tty; job control turned off [ 21.366191] random: crng init done

simply try the 安装 command again :

安装 -o remount, rw /

最后,您现在可以尝试更改密码:

密码

然后将提示您输入新密码。小心输入,然后按[Return]键。现在它将要求您重新输入密码。

重设忘记的密码

密码已更改。

现在键入以下命令:

sync
exec /sbin/init

Pi将继续启动,并返回到正常的命令行提示符。

关闭Pi并关闭电源。

sudo halt

第5步– Edit cmdline.txt

从Pi上取下SD卡,然后使用PC编辑“cmdline.txt”再次归档并删除“init=/bin/sh”您在步骤2中添加的文本。

从PC安全弹出SD卡,然后重新插入Pi。

接通Pi的电源,您的新密码现在应该处于活动状态。


现在,不要’不要再忘记该密码了!

分享。

34条留言

  1. 或者,您可以只编辑/ etc / shadow文件并删除加密的密码字符串,然后无需输入密码即可登录。然后,使用passwd再次进行设置。

  2. 将文本添加到cmdline.txt文件中的现有行后,我的Pi正常启动。我从来没有机会打字“passwd pi” –仅显示通常的登录名。还有另一种方法吗?

    • 从来没听说过。我唯一可以建议的是仔细检查config.txt文件,并确保每个字符都是正确的,并且只占用一行。

    • 我有同样的问题。甚至买了一个新键盘,原因是我读到它可能无法在无线键盘上接听。最后,init = / bin / sh在另一行。尝试使用Leafpad打开文件。那’s我发现它的格式错误。祝好运

  3. 对于那些喜欢Henrik使其Pi启动至正常登录提示的人,我认为您是’在Windows中重新编辑并正在使用记事本。那’s the problem.

    记事本将新文本放在新行中,尽管看上去’s in the same. That’s是因为Notepad需要的行尾与UNIX类系统不同(Windows文本文件使用CR + LF序列,类UNIX文本文件仅使用LF),并且将只显示文本文件中一行中的所有内容。类似于UNIX的系统。

    我没有 ’t试图删除该行的最后一个空格,甚至删除最后一个字符,然后再次重写,然后添加‘init=/bin/sh’. Don’不知道是否行得通。

    起作用的是安装 记事本++ 并且它将保留原始文件的正确格式和字符顺序。这会工作!

  4. 其他解决方案:使用raspbian制作新的SD卡或USB密钥,在您喜欢的Linux上启动,然后将影子从USB密钥复制到SD卡Pi。
    cp /mnt/USBKEY/etc/shadow* /mnt/SDcardPi/etc/

    现在可以使用默认密码“树莓派”

  5. 我第一次尝试时遇到这种错误:

    passwd:身份验证令牌操作错误
    passwd:密码不变

    我在网上做了一些搜索,发现您必须重新挂载影子文件所在的根目录才能更改密码。您可以通过输入以下命令来实现:

    安装 -o remount,rw /

    感谢您撰写本文!

  6. 迈克尔·格兰特

    我得到这个:

    # 密码
    输入新的UNIX密码:
    重新输入新的UNIX密码:
    passwd:身份验证令牌操作错误
    passwd:密码不变

    在更改密码之前,我必须像这样重新安装/读写:

    安装 -rw -o remount /

  7. 谢谢您的帮助!我在Notepad ++中编辑了cmdline之后,请客。知道自己的运气后,我最好将其保存在我的收藏夹中。

  8. 内德·盖克(Ned Geake)

    I’我尝试过这个,当我过去时“mount”阶段,它告诉我有一个“加载共享库时出错:/ lib / arm- linux-gnueabihf / libsepol.so.1:无效的ELF标头”。如果我尝试执行exec / sbin / init,则同样的错误,然后“Kernel panic”
    有任何想法吗?

  9. 我有一个Raspberry Pi B +,我可以肯定它正在运行Raspian 4.0。我找不到名为“cmdline.txt”。有人知道如何解决这个问题吗?

    • 谷歌“NOOBS”. I’在另一个noobie中,也可以’不在我头上引用细节,但这与“NOOBS”安装方法隐藏SD卡中包含cmdline.txt的部分。

      I’m处于同一困境中,正在尝试通过在启动时点按Shift来解决它,这使我陷入了困境“Recovery Mode”在这里我可以编辑隐藏的cmdline.txt…。唯一的问题是,建议的init = bin / sh附加操作具有挂起引导进程的作用,而不是使我进入PW重置屏幕。

  10. 所以我忘记了我的登录名和密码。我可以使用此方法成功更改密码,但仍然不知道自己的登录名。

    如何重置我的登录详细信息?如果我能够重设密码,我不会’t see why I couldn’也重置登录用户名

    • 试试:cat / etc / passwd

      这应该与所有其他用户一起打印出所有用户名,每行一行’的数据。用户名始终是第一个冒号之前的字符串。
      例如。在:
      pi:x:1001:1001:…
      用户名是“pi”.

      (您可以使用:cut / etc / passwd -d:-f 1
      仅打印用户名。)

      大多数行代表“virtual system”用户,但您的用户名也在那里(可能接近文件末尾)。

  11. 你好
    就我而言,最新版本确实做到了’t work: “安装-rw -o重新安装/”
    但是当我使用这个:“挂载-o重新挂载,rw /” all went fine 🙂
    BR

    • 谢谢,我’更新了指南。我需要自己遵循本指南’我刚刚忘记了我的泳池监控系统上的Pi密码!

      • 嗯,我必须删除remount和rw语句之间的逗号才能使它起作用。

        信息MATT的花絮。谢谢!它只是保存了我的培根。 --

  12. 大卫·格劳德

    如果重新安装失败并抱怨PARTUUID,则可能是您的fstab错误,请使用以下命令:

    安装 -o remount,rw /dev/mmcblk0p2 /

    它为我工作。

发表评论

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.