W moim miejscu pracy mamy oddzielne środowiska do programowania, testowania, integracji i inscenizacji.
W tych środowiskach przeciążiliśmy nazwy hostów w DNS - np. W środowisku deweloperskim nazywana jest podstawowa maszyna internetowa web1.dev.example.com
, aw środowisku testowym podstawowa maszyna internetowa web1.test.example.com
.
Aby odróżnić komputery w różnych środowiskach, chcę dostosować monity bash, aby wyświetlały nazwę FQDN, a nie tylko nazwę hosta. Dobrze i dobrze; Byłbym w stanie wymienić \h
z \H
w $PS1
, prawda? Hmm Pokazują dokładnie to samo.
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: ~$
W /etc/hostname
, mam tylko nazwę hosta ( web1
). hostname
i hostname -f
oba zwracają prawidłowe wyniki (odpowiednio „web1” i „web1.test.example.com”), i mam prawidłowe wpisy w /etc/hosts
.
Co daje?
Są to hosty Ubuntu 10.04, jeśli to robi różnicę.