sudoedit
É MUITO mais seguro também.
Para usar o vim (se não for o seu editor padrão)
(export VISUAL=vim; sudoedit file)
mas ainda melhor .... defina VISUAL e EDITOR em seu ~ / .bashrc para que seja o seu editor padrão.
Por exemplo, para o comando sudo vim /var/log/errors.log
, eu quero que o vim seja lanuched com minhas próprias configurações de usuário em vez das configurações raiz. Eu sei que eu poderia configurar o vim para a conta root, mas não é o que eu quero, pois é provável que seja confundido na atualização futura. E também não quero mudar o comportamento do vim de outras contas.
sudoedit
É MUITO mais seguro também.
Para usar o vim (se não for o seu editor padrão)
(export VISUAL=vim; sudoedit file)
mas ainda melhor .... defina VISUAL e EDITOR em seu ~ / .bashrc para que seja o seu editor padrão.
Eu não pude testar, mas isso pode funcionar: sudo HOME=/home/myusername vim /var/log/errors.log
Ou de maneira mais fácil: sudo HOME=$HOME vim /var/log/errors.log
Você precisará editar o arquivo / etc / sudoers e, potencialmente, os que estiverem em /etc/sudoers.d / e remover o env_reset opção nas declarações Padrões .
O meu parece com isto:
Defaults env_reset
Remova ou comente essa linha, e o sudo manterá as variáveis de ambiente do usuário, em vez de despejar tudo e preencher com alguns valores específicos.
Claro, veja a página de manual sudoers para mais detalhes, e lembre-se de editar o arquivo sudoers com o comando visudo (ou sudo visudo ). O visudo verifica se há erros no arquivo sudoers antes de permitir a finalização da edição ... se o arquivo estiver com defeito ou falhar em qualquer verificação ... você não pode mais 'sudo', portanto, o comando visudo.