Por que quando eu ssh em um servidor ele mostra o bash e o outro tem meu nome de usuário?

4

Então, no trabalho, tenho dois servidores da Web em que posso ssh .

Ambos são RHEL 6.5

Quando eu faço login, ele mostra isso:

[username@ldvweb01 /]$ 

Quando entro no outro, aparece:

-bash-4.1$ 

Acho muito mais elegante quando mostra o primeiro. Como faço para alternar entre os dois? Alguém pode me explicar isso?

Depois de executar este echo $PS1 , estes são os resultados

-bash-4.1$ echo $PS1
\s-\v\$

e

[appadmin@ldvcatweb01 /]$ echo $PS1
[\u@\h \W]\$

Após verificar as diferenças entre os dois diretórios base. Descobri que não havia .bashrc ou .bash_profile no diretório inicial.

Então eu copiei os do servidor anterior.

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

e

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions

Suponho que apenas extrai as configurações bash padrão de /etc

Obrigado por toda sua ajuda.

    
por Arian Faurtosh 29.09.2014 / 19:29

3 respostas

6

O prompt do bash é configurado pela variável de ambiente PS1 . Você pode obter o prompt desejado adicionando

export PS1="[\u@\h \W]\$ "

ao seu arquivo .bashrc (localizado no diretório pessoal do usuário).

A lista completa de caracteres especiais que você pode usar para o seu prompt pode ser encontrada no documentação oficial do Bash .

    
por 29.09.2014 / 19:36
4

Supondo que seu shell de login em ambas as máquinas é bash, é a variável de ambiente PS1 que é diferente. Esta variável determina o formato do seu prompt.

Você pode usar echo $PS1 para ver em que PS1 está definido na primeira máquina e, em seguida, usar export PS1=... para configurá-lo para o mesmo valor na segunda máquina. Para tornar esta mudança permanente, você deve adicionar o comando export ao seu arquivo .bashrc (ou possivelmente o seu arquivo .profile , que é originado por shells de login - isso depende da sua configuração).

Editar: De acordo com o seu comentário, o que você precisa fazer para obter o mesmo prompt na segunda máquina, como na primeira máquina, é o comando

export PS1="[\u@\h \W]\$"

Você pode torná-lo permanente como já explicado.

    
por 29.09.2014 / 19:35
3

Sua pasta de início pode não ser idêntica em cada sistema. Você pode verificar que .bashrc ou .bash_profile scripts são manipulados em cada servidor. para o prompt, você precisa incluir export PS1="\u@\h \w> " em seu script de login bash (.bash_profile)

Você pode querer ter seu diretório home em uma montagem NFS para poder ver um ambiente similar em cada sistema.

    
por 29.09.2014 / 19:44