
Ich habe gelöscht /bin/bash
. Ich hatte das Terminal geöffnet, aber es wurde später automatisch geschlossen. Ich bin ein normaler Benutzer in sudo
der Gruppe.
Was soll ich tun? Ich bin in Panik.
Kann ich die Dateiberechtigung /etc/passwd
mit Python/Perl ändern und das Shell-Skript in meinem Benutzernamen von bash
in ändern zsh
, mich dann abmelden und wieder anmelden? Ich muss Python/Perl von PHP aus ausführen, da ich keinen Zugriff auf ein Terminal habe.
Oder was mache ich? Dies ist Ubuntu Desktop.
Antwort1
Sie sollten in der Lage sein, Bash neu zu installieren, genau wie jedes Paket, das von Ihrem System entfernt wurde. Der schwierige Teil besteht darin, eine Shell zu erhalten, da Ihre Shell-Binärdatei jetzt fehlt (z. B.: /bin/bash
).
Sie sollten in der Lage sein, entweder:
- booten Sie in eine Live-CD-Umgebung wie @SmallLoanOf1M erwähnt. Sie müssen in Ihr vorhandenes RFS chrooten und dann Ihr Bash-Paket neu installieren (Sie müssen also das Netzwerk einrichten, um mit Ihren konfigurierten Repos zu kommunizieren).
oder
- Booten Sie direkt in den Einzelbenutzermodus, indem Sie die Kernel-Argumente Ihres Bootloaders direkt von Grub aus bearbeiten, indem Sie sie
/bin/sh
an Ihre Kernel-Argumente anhängen, und führen Sie dann von dort aus eine Neuinstallation von Bash durch. Ihre Ergebnisse können abweichen, da Sie mit einem Betriebssystem arbeiten,/bin/sh
das Ihnen nicht dieselben integrierten Funktionen bietet und auch die Tab-Autovervollständigung nicht unterstützt.
Wenn möglich, ist natürlich Option 2 vorzuziehen.
Viel Glück!