it-swarm-es.tech

¿Cómo configurar visudo para usar un editor diferente al predeterminado en Fedora?

Fedora 14 usa vi por defecto cuando uno ejecuta visudo. ¿Hay alguna manera de cambiar esto a otra cosa?

29
tshepang

Añadiendo Defaults editor=/path/to/editor en el archivo sudoers hará que visudo use el editor especificado para los cambios.

Además, si su paquete Sudo se ha creado con --with-env-editor, como es el valor predeterminado en algunas distribuciones de Linux, también puede establecer la variable de entorno EDITOR ejecutando export EDITOR=/path/to/editor. Realizado en la línea de comando, esto se revertirá tan pronto como finalice la sesión de Shell, establecer la variable en un perfil ~/.bashrc o/etc/hará que el cambio persista.

44
Tok

El seguimiento

  • funciona para las distribuciones que usan alternatives (originalmente solo Debian y sus bifurcaciones, pero ahora la mayoría de las principales distribuciones, IIUC).
  • tiene la ventaja de que

    1. no necesitará editar sudoers primero con su editor predeterminado
    2. funciona incluso si el paquete = Sudo ha no construido con --with-env-editor

Desde una línea de comandos:

  1. Correr Sudo update-alternatives --config editor
  2. Elija el editor deseado del menú (modo de texto). Si no ve el editor que desea, probablemente necesite instalarlo; cancelar, hacer eso y repetir.

Sudo visudo ahora debería abrir el editor de su elección.

11
TomRoche

Un programa normal de Unix que desee invocar un editor ejecutará el programa cuyo nombre se encuentra en la variable de entorno EDITOR o VISUAL, y si la variable no está configurada, un valor predeterminado depende del sistema. Muchos, pero no todos, los programas verifican tanto EDITOR como VISUAL; la distinción es obsoleta durante mucho tiempo (una vez que ejecutaría EDITOR en un teletipo y VISUAL en un terminal "de cristal" ...) por lo que debe establecer ambos en el mismo valor. Existe cierto desacuerdo sobre si el contenido de la variable debe ser la ruta completa a un ejecutable, un nombre ejecutable que se busca en $PATH, o un fragmento de Shell, por lo que debe seguir una ruta a un ejecutable que no contenga ningún metacarácter de Shell. El valor predeterminado del sistema cuando no se establece ninguna variable es tradicionalmente vi, aunque algunas distribuciones lo han cambiado a un editor más amigable para novatos como nano.

visudo verifica tanto VISUAL como EDITOR (esto puede compilarse, presumiblemente para disuadir a root de usar un editor en cuya seguridad el fabricante de la distribución no confía, pero incluso OpenBSD no No hagas esto).

Estos pasos me permiten configurar el editor en vi para visudo en Ubuntu 12.04, probablemente funcionen para la mayoría de las distribuciones:

Emitir comando:

Sudo visudo

Esto abre el archivo sudoers en nano. Cerca de la parte superior verá esta línea:

Defaults    env_reset

Agregue la siguiente línea debajo de la línea anterior:

Defaults    editor=/usr/bin/vi

Guarda el archivo y cierra. Vuelva a abrir visudo como su usuario predeterminado:

Sudo visudo

El archivo sudoers ahora se abre en VI.

3
Eric Leschinski

visudo usa la variable EDITOR, por ejemplo.

Sudo EDITOR=/path/to/editor visudo
2
Bhavin