Resposta curta: você não pode.
A resposta mais longa e correta: Você pode mover tudo de /etc/profile
e equivalente a /etc/bashrc
e equivalente (os detalhes dependem do (s) shell (s) que você está usando) e o primeiro fonte é o último; Isso fará com que você fique o mais próximo possível (com a ressalva de que algumas coisas podem precisar de testes extras se / elif / fi se eles devem ou não devem ser executados para shells de login).
O hífen extra é um atalho para "-l" ou "--login", que diz su(1)
como invocar o shell: Por convenção, um shell sabe que é um shell de "login" se seu argv[0]
(o nome que ele recebe disse que foi iniciado pois, que não precisa ser nada parecido com o nome do arquivo de seu binário) começa com um traço; por exemplo, o bash se encontrará "chamado" -bash
ou -/bin/bash
. Você pode confirmar isso efetuando login no console e executando ps o pid,comm,args $$
- o "args" iniciará com um traço. Um shell de login usa um conjunto diferente de arquivos de inicialização, que é a principal diferença; veja a página de manual do (s) seu (s) shell (s) para detalhes (por exemplo, invocação do bash ) . Há algumas sutilezas remanescentes sobre o ambiente que é definido antes de o bash começar, mas isso pode ser corrigido nesses arquivos de inicialização.
Neste ponto, é útil dar um passo para trás e considerar: Qual problema você está tentando resolver? Mudar sua identidade não deve ser algo que você faz rotineiramente; se você se encontrar precisando, você deve tentar descobrir como consertar a coisa subjacente que você está tentando não exigir.