无法以 root 或用户身份登录,因为缺少 zsh

max*_*ax_ 4 linux debian zsh shell raspberry-pi

我在我的树莓派上安装了 zsh,由于各种原因,包括 shell 完全变慢的事实,我决定删除它。我卸载了该软件包,将 shell 更改回 /bin/bash 并假设一切都会正常。但是,卸载它似乎出现了问题。

当我尝试通过 SSH 重新登录 pi 时,我看到以下内容:

Welcome to KRATOS
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)

我知道公钥没问题,因为它在过去一直有效,所以我将 Raspberry Pi 连接到监视器,以便在它唤醒时查看日志。它按预期运行一切,然后当我尝试使用用户名和密码登录时pi,它使我登录,然后显示错误并继续将我注销。

Cannot execute /usr/bin/zsh: No such file or directory
Run Code Online (Sandbox Code Playgroud)

当我尝试以 登录时,也会发生同样的情况root

我是否已将自己完全锁定在系统之外,还是有办法重新进入?最糟糕的是,我可以尝试将文件系统安装到另一台笔记本电脑上并从那里更改配置?

小智 5

我猜想 root 用户的默认 shell 是/usr/bin/zsh 这是在/etc/passwd 您在该系统上有另一个具有另一个默认 shell 的帐户吗?如果是这样,如果您配置了 sudo ,也许可以/etc/passwd使用 sudo 编辑文件并将默认 shell 更改为/bin/sh/bin/bash

否则,您必须从可启动的 USB 记忆棒挂载文件系统/磁盘或进行网络启动,或者从另一个设备挂载它并以这种方式修复它。