Chúng tôi có môi trường riêng biệt tại nơi làm việc của tôi để phát triển, thử nghiệm, tích hợp và dàn dựng.
Trong các env đó, chúng tôi đã quá tải tên máy chủ trong DNS - ví dụ: trong môi trường dev, máy web chính được gọi web1.dev.example.com
và trong môi trường thử nghiệm, máy web chính là web1.test.example.com
.
Để phân biệt giữa các máy trong các môi trường khác nhau, tôi muốn tùy chỉnh lời nhắc bash để hiển thị FQDN thay vì chỉ tên máy chủ. Tốt và tốt; Tôi sẽ có thể thay thế \h
bằng \H
trong $PS1
, phải không? Hừm. Họ cho thấy điều tương tự chính xác.
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: ~$
Trong /etc/hostname
, tôi chỉ có tên máy chủ ( web1
). hostname
và hostname -f
cả hai đều trả về kết quả chính xác ("web1" và "web1.test.example.com" tương ứng) và tôi đã có các mục chính xác trong /etc/hosts
.
Đưa cái gì?
Đây là các máy chủ Ubuntu 10.04, nếu điều đó tạo ra sự khác biệt.