
Я удалил /bin/bash
. У меня был открыт терминал, но он автоматически закрылся позже. Я обычный пользователь в sudo
группе.
Что мне делать? Я в панике.
Могу ли я изменить разрешение файла /etc/passwd
с помощью Python / Perl и изменить скрипт оболочки с bash
на zsh
в моем имени пользователя, затем выйти из системы и войти снова? Мне приходится запускать Python / Perl из PHP, потому что у меня нет доступа к терминалу.
Или что мне делать? Это Ubuntu Desktop.
решение1
Вы должны иметь возможность переустановить bash, как и любой другой пакет, удаленный из вашей системы. Сложность заключается в получении оболочки, поскольку ваш двоичный файл оболочки теперь отсутствует (т. е.: /bin/bash
).
Вы должны иметь возможность:
- загрузитесь в среду live cd, как упомянул @SmallLoanOf1M. Вам нужно будет сделать chroot в существующий RFS, а затем переустановить пакет bash (так что вам нужно будет настроить сеть, чтобы общаться с настроенными вами репозиториями).
или
- загрузка напрямую в однопользовательский режим путем редактирования аргументов ядра загрузчика непосредственно из grub путем добавления
/bin/sh
к аргументам ядра, а затем переустановка bash оттуда. YMMV здесь, потому что вы будете работать из,/bin/sh
который не даст вам тех же встроенных функций, и вы не получите автодополнение Tab.
Конечно, вариант 2 будет предпочтительнее, если это возможно.
Удачи!