4

Насколько я знаю, главное отличие состоит в том, что в visudo есть простой парсер, позволяющий определить, насколько хорошо /etc /sudoers (и другие файлы sudoers); тем не менее, я также заметил, что когда я устанавливаю EDITOR=emacs , sudoedit учитывает это изменение, однако visudo этого не делает. Из того, что я могу сказать, это потому, что visudo не учитывает значения $EDITOR если они не перечислены в sudoers. Я хочу знать, могу ли я заставить sudoedit делать то же самое, чтобы не допустить таких вещей, как EDITOR=deleverything.sh .

Еще одна вещь, на которую я обратил внимание и которая, похоже, связана, заключается в том, что в качестве пользователя root (после использования в качестве пользователя jef)(со строкой export EDITOR=emacs в /home/anachrome/.bashrc)и visudo, и sudoedit используют emacs как редактор , но когда не su'd в корень, только sudoedit использует его. Мне любопытно, почему это так (я предполагаю, что это как-то связано с тем, что sudo на самом деле не сбрасывает переменные окружения при sudoing как вы (например, root $ sudo -u root), но это только я предполагаю).

РЕДАКТИРОВАТЬ: Второй вопрос, очевидно, просто потому, что $EDITOR не был одной из переменных, сохраняемых в sudo.

И, кстати, я использую Arch Linux, на случай, если это уместно.

2 ответа2

0

Для меня на арке, ни visudo , ни sudoedit честь $EDITOR , но они делают и честь $VISUAL поэтому , может быть, стоит попробовать.

0

Также убедитесь, что нужный редактор действительно установлен. Указание EDITOR=vim когда все, что у вас есть, это vi.tiny не доставит особой радости.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .