删除了 bash,如何恢复?

删除了 bash,如何恢复?

我删除了。我打开了终端,但后来它自动关闭了。我是群组/bin/bash中的普通用户。sudo

我该怎么办?我很慌张。

我可以使用 Python / Perl 更改文件权限/etc/passwd,并将用户名中的 shell 脚本从 更改bashzsh,然后注销并重新登录吗?我必须从 PHP 运行 Python / Perl,因为我无权访问终端。

或者我该怎么办?这是 Ubuntu 桌面。

答案1

您应该能够重新安装 bash,就像重新安装从系统中删除的任何软件包一样。棘手的部分是获取 shell,因为您的 shell 二进制文件现在丢失了(即/bin/bash:)。

您应该能够:

  1. 启动到 @SmallLoanOf1M 提到的 live cd 环境。您需要 chroot 到您现有的 RFS,然后重新安装您的 bash 包(因此您需要设置网络以与您配置的存储库通信)。

或者

  1. 通过直接在 grub 中编辑引导加载程序内核参数(将其附加/bin/sh到内核参数中)直接启动到单用户模式,然后从那里重新安装 bash。YMMV 可能有所不同,因为您将从中工作,/bin/sh它不会为您提供相同的内置功能,也不会为您提供制表符自动完成功能。

当然,如果可能的话,选择 2 会更好。

祝你好运!

相关内容