Я пытался получить доступ к недавно установленной системе через Emacs 'Tramp, как я это делаю со всей моей другой системой:
C-x C-f /ssh:server|sudo:root@server:/etc/network/interfaces
Время ожидания этой команды истекло. После некоторых исследований я обнаружил, что sudo
и dash
кажутся несовместимыми, хотя мой sudoers
довольно прост:
# grep -P -v '^(#.*)? Когда я использую обычную оболочку, такую как Bash, следующая команда работает нормально :
env SHELL=/bin/bash sudo -u root -s -H
Но когда я использую тире, с которым связан / bin / sh, следующая команда
env SHELL=/bin/sh sudo -u root -s -H
генерирует бесконечный цикл
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
...
, который может быть остановлен только kill -9
.
Я хотел бы сделать apt-get purge dash
, но ОС настаивает на его сохранении.
Как это исправить?
/etc/sudoers
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
root ALL=(ALL:ALL) ALL
%sudo ALL=(ALL:ALL) NOPASSWD: ALL
Когда я использую обычную оболочку, такую как Bash, следующая команда работает нормально :
env SHELL=/bin/bash sudo -u root -s -H
Но когда я использую тире, с которым связан / bin / sh, следующая команда
env SHELL=/bin/sh sudo -u root -s -H
генерирует бесконечный цикл
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
/bin/sh: 0: Bad substitution
...
, который может быть остановлен только kill -9
.
Я хотел бы сделать apt-get purge dash
, но ОС настаивает на его сохранении.
Как это исправить?
Я сделал это:
cd /bin
rm sh
ln -s bash sh
apt-get purge dash
apt-mark hold dash
машина все еще загружается.