Как изменить редактор visudo с nano на vim? [Дубликат]

71

Когда я использую visudo , он всегда открывает его с помощью редактора nano. Как изменить редактор на vim?

    
задан dedunumax 20.10.2014 в 09:26
источник

2 ответа

109

Введите sudo update-alternatives --config editor

Вы получите текст, как показано ниже.

There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
  3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press enter to keep the current choice[*], or type selection number: 3

Найдите номер выбора vim.basic или vim.tiny . Введите его и нажмите enter. В следующий раз, когда вы откроете visudo , ваш редактор будет vim

    
ответ дан dedunumax 20.10.2014 в 09:26
22

Если вы хотите, чтобы ваш пользователь использовал по умолчанию другой редактор, добавьте

export EDITOR=vim; 

в вашем .profile (или везде, где вы сохраняете среду запуска, если используете оболочку, отличную от bash). Выйдите из системы, войдите в систему, убедитесь, что переменная установлена:

[romano:~] % env | grep EDI
EDITOR=vim

, и теперь все программы, которые вызывают редактор (и хорошо написаны), будут по умолчанию vim для вашего пользователя.

Как заметил @EliahKagan (спасибо!) в комментарии, это не будет работать для visudo : поскольку вы должны называть его, используя sudo , когда вы делаете

sudo visudo

команда sudo будет дезактивировать (читать: удалить) большинство переменных окружения перед повышением привилегий - и это хорошо, что она делает. Таким образом, изменение не будет просачиваться в visudo . Чтобы все еще работать, вы должны называть его следующим:

sudo EDITOR=vim visudo

Наконец, как намечено здесь, вы также можете добавить строку в свой файл /etc/sudoers вверху, который гласит:

Defaults editor=/usr/bin/vim 

Предупреждение: при изменении конфигурации sudoers держите терминал открытым с корневой оболочкой в ​​нем (с sudo -i ). Вы никогда не знаете, и вы можете легко получить блокировку из корня.

    
ответ дан Rmano 20.10.2014 в 10:47