我最近在笔记本电脑上安装了 zsh 作为 shell,并且很喜欢这个变化。因此,我决定将其添加为服务器上的默认 shell。我编辑了 /etc/passwd,使我的用户和 root(在服务器上)指向 /etc/zsh,然后退出 ssh。
只是我忘了安装 zsh。
现在我无法以 root 或该用户身份登录。我确实可以物理访问该机器,但我不想连接显示器。我也可以访问普通用户帐户并知道 root 密码。我该如何解决这个问题?
不需要提及,但如果没有 root 访问权限,我就无法安装 zsh。
答案1
您可以使用 -s 标志来su
指定 shell,这样您就可以使用su -s /bin/bash -
bash shell 获取 root 权限。
答案2
您可以通过 ssh 执行远程命令,包括另一个 shell。您需要强制分配 tty,以便 shell 可以正常运行。然后,您可以像平常一样使用 sudo 运行 root shell 或根据需要编辑文件。
ssh hostname -t /bin/bash