Sim, fazer login em uma conta diferente (raiz, neste caso) criará uma nova sessão e as configurações serão do arquivo .bashrc
ou .kshrc
da raiz. Você pode ver isso no seguinte:
$ alias
$ ... output has over 100 aliases
$ sudo su
[sudo] password for durrantm:
root@Castle2012:/tmp/user/1000/x# alias # <- Only 7 aliases now!
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
root@Castle2012:/tmp/user/1000/x# cat ~/.bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
...
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
...
root@Castle2012:/tmp/user/1000/x#
Você pode entretanto exportar seu ambiente - somente para essa sessão - com sudo -E.
Você pode tornar o alias disponível para TODOS os shells permanentemente, colocando a definição do alias em
/etc/bash.bashrc # (You'll need to edit it with sudo!)
# /etc/profile for ksh
e você também pode adicionar lógica condicional para fazer isso apenas se o nome de usuário corresponder a raiz ou a que você deseja.