На этот вопрос уже есть ответ здесь:
Когда я использую visudo
, он всегда открывает его с помощью редактора nano
. Как сменить редактор на vim?
Тип 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
Если Вы хотите только заставить своего пользователя использовать по умолчанию другого редактора, добавить
export EDITOR=vim;
в Вашем .profile
(или везде, где Вы сохраняете свою среду запуска при использовании оболочки, отличающейся от удара). Выйдите из системы, войдите в систему, проверьте, что переменная установлена:
[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
). Вы никогда не знаете, и Вы можете легко быть заблокированы из корня.