ti-enxame.com

Como configurar o visudo para usar um editor diferente do padrão no Fedora?

O Fedora 14 usa o vi por padrão quando se executa o visudo. Existe uma maneira de mudar isso para outra coisa?

29
tshepang

Adicionando Defaults editor=/path/to/editor no arquivo sudoers fará com que o visudo use o editor especificado para alterações.

Além disso, se o seu pacote Sudo foi construído com --with-env-editor, como é o padrão em algumas distribuições Linux, você também pode definir a variável de ambiente EDITOR executando export EDITOR=/path/to/editor. Executado na linha de comando, isso será revertido assim que a sessão do Shell for encerrada. A configuração da variável em ~/.bashrc ou/etc/profile fará com que a alteração persista.

44
Tok

Os seguintes

  • trabalha para distribuições que usam alternatives (originalmente apenas Debian e seus garfos, mas agora a maioria das principais distribuições, IIUC).
  • tem a vantagem de que

    1. você não precisará editar sudoers primeiro com seu editor padrão
    2. funciona mesmo que o pacote = Sudo tenha sido não construído com --with-env-editor

Em uma linha de comando:

  1. Corre Sudo update-alternatives --config editor
  2. Escolha o editor desejado no menu (modo de texto). Se você não vir o editor que deseja, provavelmente precisará instalá-lo; cancele, faça isso e repita.

Sudo visudo agora deve abrir o editor de sua escolha.

11
TomRoche

Um programa unix normal que deseja chamar um editor executará o programa cujo nome está na variável de ambiente EDITOR ou VISUAL e, se a variável estiver desabilitada, um padrão dependente do sistema. Muitos programas, mas não todos, verificam EDITOR e VISUAL; a distinção é obsoleta por muito tempo (uma vez que você executaria EDITOR em um teletipo e VISUAL em um terminal "glass" ...), portanto, você deve definir os dois para o mesmo valor. Há alguma divergência quanto ao fato de o conteúdo da variável ser o caminho completo para um executável, um nome de executável pesquisado em $PATH ou um snippet do Shell, portanto, você deve seguir um caminho para um executável que não contenha nenhum metacaractere do Shell. O padrão do sistema quando nenhuma variável é definida é tradicionalmente vi, embora algumas distribuições tenham alterado isso para um editor mais amigável para iniciantes, como nano.

visudo verifica ambos VISUAL e EDITOR (isso pode ser compilado, presumivelmente para dissuadir o root de usar um editor cuja segurança o fabricante de distribuição não confia, mas mesmo o OpenBSD não faça isso).

7

Essas etapas permitem definir o editor como vi para visudo no Ubuntu 12.04, provavelmente funcionam na maioria das distribuições:

Comando de emissão:

Sudo visudo

Isso abre o arquivo sudoers no nano. Perto do topo, você verá esta linha:

Defaults    env_reset

Adicione a seguinte linha abaixo da linha acima:

Defaults    editor=/usr/bin/vi

Salve o arquivo e saia. Reabra o visudo como seu usuário padrão:

Sudo visudo

O arquivo sudoers agora é aberto no VI.

3
Eric Leschinski

visudo usa a variável EDITOR, por exemplo.

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