На моєму робочому місці у нас є окремі середовища для розробки, тестування, інтеграції та постановки.
У межах envs ми перевантажили імена хостів у DNS - наприклад, у середовищі розробників викликається первинна веб-машина web1.dev.example.com
, а в тестовому середовищі - первинна веб-машина web1.test.example.com
.
Щоб розрізняти машини в різних середовищах, я хочу налаштувати підказки bash для відображення FQDN, а не просто ім'я хоста. Ну і добре; Я повинен бути в змозі замінити \h
з \H
в $PS1
, НЕ так? Хм. Вони показують точно те саме.
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: ~$
У /etc/hostname
мене є тільки ім'я хоста ( web1
). hostname
і hostname -f
обидва повертають правильні результати ("web1" і "web1.test.example.com" відповідно), і я отримав правильні записи в /etc/hosts
.
Що дає?
Це хости Ubuntu 10.04, якщо це має значення.