Quando utilizzo visudo
, lo apre sempre con nano
editor. Come cambiare l'editor in vim?
Quando utilizzo visudo
, lo apre sempre con nano
editor. Come cambiare l'editor in vim?
Digita sudo update-alternatives --config editor
Riceverai un testo come di seguito.
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
Trova vim.basic
o vim.tiny
numero selezione. Digitalo e premi invio. La prossima volta che aprirai visudo
il tuo editor sarà vim
Se vuoi che il tuo utente usi di default un altro editor, aggiungi
export EDITOR=vim;
nel tuo .profile
(o ovunque tu mantenga il tuo ambiente di avvio se usi una shell diversa da bash). Disconnettersi, accedere, controllare che la variabile sia impostata:
[romano:~] % env | grep EDI
EDITOR=vim
e ora tutti i programmi che chiamano un editor (e sono ben scritti) imposteranno automaticamente a vim
per il tuo utente.
Come notato da @EliahKagan (grazie!) nel commento, questo non funzionerà per visudo
: dato che dovresti chiamarlo usando sudo
, quando lo fai
sudo visudo
il comando sudo
disinfetterà (leggi: cancella) la maggior parte delle variabili d'ambiente prima di aumentare i privilegi --- ed è una buona cosa. Quindi il cambiamento non percolerà fino a visudo
. Per farlo funzionare, devi chiamarlo come:
sudo EDITOR=vim visudo
Infine, come suggerito qui, puoi anche aggiungere una riga al tuo file /etc/sudoers
nella parte superiore che legge:
Defaults editor=/usr/bin/vim
Una parola di avvertimento: quando si modifica la configurazione di sudoers
, mantenere un terminale aperto con una shell di root in esso (con sudo -i
). Non si sa mai e si può facilmente essere bloccati da root.
Leggi altre domande sui tag command-line vim editor nano visudo