Jak zmienić edytor używany przez visudo?

21

Naprawdę chciałbym, aby to był vi lub vim. Przez pomyłkę wpisałem niektóre polecenia vi w domyślnym edytorze Visudo, który moim zdaniem jest nano, i złamałem / etc / sudoers tak źle, że myślę, że będę musiał nagrać nowy obraz i zacząć od nowa.

Mogłem ponownie uruchomić visudo, wykonując pkexec bash, ale zepsułem coś w domyślnym wpisie wiersza i nie byłem w stanie naprawić go poprawnie, a sudo nie działa.

Vicky T.
źródło
1
Uwaga dodatkowa: mceditjest fajną alternatywą, jeśli tak naprawdę nie chcesz pamiętać skrótów vim / nano / emacs
Tobias Kienzler

Odpowiedzi:

20

Możesz ustawić edytor systemu, wywołując jako root:

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

Najpierw musisz zainstalować vima.

Spowoduje to zmianę edytora na całym świecie, nie tylko dla Visudo.

mroczny
źródło
Aby uzyskać wygodny TUI do wyboru z listy, uruchomupdate-alternatives --config editor
Cameron Tacklind
9

Jeśli chcesz to zmienić tylko tymczasowo, uruchom

EDITOR=vim visudo

jako root (else sudo EDITOR=vim visudo). Robićvimvisudo ustawić domyślny edytor, ale nic więcej, możesz umieścić

alias visudo='EDITOR=vim visudo'

do twojego ~/.aliaslub ~/.bashrc.

Tobias Kienzler
źródło
1
EDITOR=vim sudo visudonie działa zgodnie z oczekiwaniami, ponieważ sudo domyślnie usuwa wszystkie zmienne env ze względów bezpieczeństwa. (Po prostu wypróbowywałem polecenia).
mirk
2
@mirk My bad, sudonależy do całej linii
Tobias Kienzler