Как изменить редактор, используемый visudo?

21

Мне бы очень хотелось, чтобы это был vi или vim. Я по ошибке набрал некоторые команды vi в редакторе по умолчанию для visudo, который я считаю nano, и так плохо разбил / etc / sudoers, что я думаю, что мне придется записать новое изображение и начать все сначала.

Я снова смог запустить visudo, выполнив pkexec bash, но я сломал что-то в строке ввода по умолчанию и не смог исправить это правильно, и sudo не запустится.

Вики Т
источник
1
Примечание: mceditхорошая альтернатива, если вы на самом деле не хотите вспоминать ярлыки vim / nano / emacs
Тобиас Кинцлер,

Ответы:

20

Вы можете установить системный редактор, вызвав как root:

update-alternatives --set editor /usr/bin/vim.tiny

Сначала вы должны установить vim.

Это изменит редактор глобально, а не только для visudo.

хмурость
источник
Для удобного TUI, чтобы выбрать из списка, запуститеupdate-alternatives --config editor
Кэмерон Таклинд
9

Если вы хотите изменить это только временно, запустите

EDITOR=vim visudo

как корень (остальное sudo EDITOR=vim visudo). Чтобы сделать vimредактор по умолчанию, visudoно ничего больше, вы можете поставить

alias visudo='EDITOR=vim visudo'

в ваш ~/.aliasили ~/.bashrc.

Тобиас Кинцлер
источник
1
EDITOR=vim sudo visudoне работает должным образом, так как sudo по умолчанию отбрасывает все переменные env по соображениям безопасности. (Я просто пробовал команды).
Мирк
2
@mirk Мой плохой, sudoпринадлежит перед всей линией
Тобиас Кинцлер