Abbiamo ambienti separati nel mio posto di lavoro per sviluppo, test, integrazione e stadiazione.
All'interno di questi ambienti, abbiamo sovraccaricato i nomi host in DNS - ad es. Nell'ambiente dev, viene chiamato il web machine primario web1.dev.example.com
e, nell'ambiente di test, il web machine primario è web1.test.example.com
.
Per distinguere le macchine nei diversi ambienti, voglio personalizzare i prompt di bash per visualizzare il nome di dominio completo anziché il solo nome host. Buona e giusta; Dovrei essere in grado di sostituire \h
con \H
in $PS1
, giusto? Hmm. Mostrano la stessa identica cosa.
me@web1:~$ hostname
web1
me@web1:~$ hostname -f
web1.dev.example.com
me@web1:~$ export PS1="\[\u@\h: \w\]\$ "
me@web1: ~$ export PS1="\[\u@\H: \w\]\$ "
me@web1: ~$
In /etc/hostname
, ho solo il nome host ( web1
). hostname
ed hostname -f
entrambi restituiscono i risultati corretti ("web1" e "web1.test.example.com" rispettivamente), e ho le voci corrette in /etc/hosts
.
Cosa dà?
Questi sono host Ubuntu 10.04, se questo fa la differenza.