Вопрос или проблема
Когда я использую visudo
, он всегда открывается в редакторе nano
. Как сменить редактор на vim?
Введите sudo update-alternatives --config editor
Вы получите текст, подобный следующему.
Существует 4 варианта для альтернативного редактора (предоставляется /usr/bin/editor).
Выбор Путь Приоритет Статус
------------------------------------------------------------
* 0 /bin/nano 40 автоматический режим
1 /bin/ed -100 ручной режим
2 /bin/nano 40 ручной режим
3 /usr/bin/vim.basic 30 ручной режим
4 /usr/bin/vim.tiny 10 ручной режим
Нажмите enter, чтобы оставить текущий выбор[*], или введите номер выбора: 3
Найдите номер выбора vim.basic
или vim.tiny
. Введите его и нажмите enter. В следующий раз, когда вы откроете visudo
, ваш редактор будет vim
Вам нужно вызвать его так:
sudo EDITOR=vim visudo
Чтобы сделать так, чтобы visudo всегда использовал vim, добавьте строку в ваш файл /etc/sudoers
в начале, которая будет гласить:
Defaults editor=/usr/bin/vim
Предупреждение: при изменении вашей конфигурации sudoers
, держите открытым терминал с привилегиями root (с sudo -i
). Вы никогда не знаете, и вы можете легко потерять доступ к root.
.
Ответ или решение
Изменение редактора для команды visudo с nano на vim является частой задачей для пользователей системы Linux, которые предпочитают использовать более мощные инструменты редактирования. Эта инструкция познакомит вас с несколькими методами, с помощью которых можно изменить редактор по умолчанию.
Теория
Команда visudo используется для управления и редактирования файла /etc/sudoers, который определяет права доступа различных пользователей на выполнение команд с привилегиями администратора. По умолчанию, в большинстве дистрибутивов Linux с графическим интерфейсом редактором по умолчанию часто является nano из-за его простоты. Однако vim предлагает более богатый функционал и гибкость для более опытных пользователей.
Пример
Самый прямой метод изменения редактора, используемого командой visudo, заключается в настройке системной альтернативы для редактора. В Unix-подобных системах, таких как Linux, утилита update-alternatives позволяет управлять символьными ссылками для команд в системе, чтобы указать предпочтительное программное обеспечение по умолчанию.
Процесс замены редактора с nano на vim с использованием update-alternatives выглядит следующим образом:
- Откройте терминал.
- Выполните команду:
sudo update-alternatives --config editor
- После выполнения команды, вы увидите список доступных редакторов с порядковыми номерами. Пример вывода может быть таким:
Есть 4 варианта для альтернативы редактора (обеспечивающей /usr/bin/editor).
Выбор Путь Приоритет Статус
------------------------------------------------------------
* 0 /bin/nano 40 автоматический режим
1 /bin/ed -100 ручной режим
2 /bin/nano 40 ручной режим
3 /usr/bin/vim.basic 30 ручной режим
4 /usr/bin/vim.tiny 10 ручной режим
- Найдите в списке номер, соответствующий /usr/bin/vim.basic или /usr/bin/vim.tiny, и введите этот номер. Например, если vim.basic имеет номер 3, введите 3 и нажмите Enter.
Теперь visudo будет использовать vim.basic в качестве редактора по умолчанию.
Применение
Для дальнейшего удобства, вы можете указать vim как редактор по умолчанию для visudo с использованием переменной окружения EDITOR. Это может быть сделано временно из командной строки или же на постоянной основе, путем добавления соответствующих изменений в конфигурационные файлы.
- Текущий сеанс: Если вы хотите изменить редактор только для текущего сеанса, вы можете сделать это с помощью команды:
sudo EDITOR=vim visudo
Эта команда временно установит vim в качестве редактора для visudo. Однако после завершения сеанса этот параметр будет сброшен.
- Постоянная установка: Чтобы сделать vim редактором по умолчанию на постоянной основе, вы можете внести изменения в файл /etc/sudoers. Это делается следующим образом:
- Откройте visudo с помощью текущего редактора по умолчанию (например, nano).
sudo visudo
- Найдите начало файла и добавьте следующую строку:
Defaults editor=/usr/bin/vim
Эта строка указывает системе использовать vim как редактор по умолчанию для всех будущих изменений, связанных с sudoers.
Предупреждения
Изменяя настройки sudoers, будьте крайне осторожны, так как любые ошибки могут привести к тому, что вы потеряете доступ к командам с правами администратора. Рекомендуется всегда оставлять открытой другую терминальную сессию со статусом суперпользователя (выполните команду sudo -i
), чтобы иметь возможность откатить изменения в случае необходимости.
Следуя этим шагам, вы измените редактор по умолчанию для visudo с nano на vim таким образом, чтобы это соответствовало вашим предпочтениям и профессиональным требованиям работы с системами Linux.