Você não deve executar um editor como root, a menos que seja absolutamente necessário, você deve definir sudoedit
apropriadamente. Então você pode fazer
SUDO_EDITOR="/opt/sublime_text/sublime_text -w" sudoedit yourfile
sudoedit
verificará que você tem permissão para fazer isso, fazer uma cópia do arquivo que você pode editar com a mudança de IDs, iniciar seu editor e, quando o editor sair, copiar o arquivo de volta, se tiver sido mudou.
Eu sugeriria uma função em vez de um alias:
function susubl {
export SUDO_EDITOR="/opt/sublime_text/sublime_text -w"
sudoedit "$@"
}
embora, como Jeff Schaller apontou, você pode usar env
para colocar isso em um alias e evite mudar o ambiente do seu shell:
alias susubl='env SUDO_EDITOR="/opt/sublime_text/sublime_text -w" sudoedit'
A opção -w
garante que a invocação do Sublime Text espere até que os arquivos sejam fechados antes de retornar e permitir que sudoedit
copie os arquivos de volta.