sudo -s -H e apelidos

sudo -s -H e apelidos

Costumo usar sudo -s -H, mas quero ter aliases depois de executá-lo. Como fazer?

Explicação: Eu efetuo login no servidor como usuário1 (que está em sudoers). Este usuário tem aliases em .bash_aliases:

alias rm='rm -i'

agora eu executosudo -s -H

E agora rmnão tem alias - portanto, ele remove arquivos sem aviso prévio.

Como mudar isso?

(vejo postagens com alias sudo='sudo '- mas funciona apenas executando comando sudo command- não comsudo -s -H

Responder1

Você deve obter os mesmos aliases em /root/.bashrc.

Você pode fazer isso de 2 maneiras:

  1. Copie /home/user1/.bash_aliasese /root/.bash_aliasesadicione o seguinte a /root/.bashrc:

    if [[ -f /root/.bash_aliases ]]
    then
      . /root/.bash_aliases
    fi
    
  2. Fonte do /home/user1/.bash_aliasesarquivo em /root/.bashrc:

     if [[ -f /home/user1/.bash_aliases ]]
     then
       . /home/user1/.bash_aliases
     fi
    

A solução que você escolher depende da preferência pessoal. Estou usando a opção 2, porque quero que o root tenha os mesmos aliases etc. do meu usuário normal, e desta forma só preciso mantê-lo em 1 lugar (você também poderia fazer um link simbólico para /home/user1/.bash_aliasesin /root, mas o efeito seria ser o mesmo).

Se você escolher a opção 1, deverá manter seus aliases para ambos user1e rootseparadamente. Isso pode ou não ser adequado ao seu caso de uso.

informação relacionada