sudo -s -H y alias

sudo -s -H y alias

A menudo uso sudo -s -H, pero quiero tener alias después de ejecutarlo. ¿Cómo?

Explicación: inicio sesión en el servidor como usuario1 (que está en sudoers). Este usuario tiene alias en .bash_aliases:

alias rm='rm -i'

ahora ejecutosudo -s -H

Y ahora rmno tiene alias, por lo que elimina archivos sin previo aviso.

¿Cómo cambiarlo?

(Veo publicaciones con alias sudo='sudo ', pero solo funciona ejecutando el comando sudo command, no consudo -s -H

Respuesta1

Tienes que obtener los mismos alias en /root/.bashrc.

Puedes hacer esto de 2 maneras:

  1. Copie /home/user1/.bash_aliasesy /root/.bash_aliasesagregue lo siguiente a /root/.bashrc:

    if [[ -f /root/.bash_aliases ]]
    then
      . /root/.bash_aliases
    fi
    
  2. Obtenga el /home/user1/.bash_aliasesarchivo de /root/.bashrc:

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

La solución que elija depende de sus preferencias personales. Estoy usando la opción 2, porque quiero que root tenga los mismos alias, etc., que mi usuario normal, y de esta manera solo tengo que mantenerlo en 1 lugar (también podrías crear un enlace simbólico a /home/user1/.bash_aliasesin /root, pero el efecto sería ser el mismo).

Si elige la opción 1, deberá mantener sus alias para ambos user1y rootpor separado. Esto puede adaptarse o no a su caso de uso.

información relacionada