與 fqdn 有不同的主機名可以嗎?
我有一個帶有 fqdn git.mydomain.com 的伺服器(這是在 DNS 中),但我真的不希望機器將 git 作為其主機名。現在我將 /etc/hostname 中的主機名設置為(例如):
mycustomhostname
在 /etc/hosts 我有
1.2.3.4 git.mydomain.com mycustomhostname
(其中 1.2.3.4 是我伺服器的 IP)
我讀過 FQDN 的第一個組件應該始終是不合格的主機名,所以我做錯了什麼?
如果是這樣,做我想做的事情的正確方法是什麼?
**編輯:**可能不清楚我想要什麼。或者也許我真的不明白這一切應該如何運作,但我的理解是
hostname -f
應該返回伺服器的 fqdn,在這種情況下是 git.mydomain.com
並且普通的舊主機名應該返回伺服器的不合格主機名。我能找到的每個資源都說不合格的名稱應該是 fqdn 的開頭,但這似乎很煩人且不方便。
我想
hostname -f
返回 git.mydomain.com 因為那確實是伺服器的 fqdn
但我希望主機名只返回 mycustomhostname
按照其中一個答案的說明,我在 /etc/hosts 中添加了一個別名,如下所示:
127.0.0.1 mycustomhostname 1.2.3.4 git.mydomain.com
而 /etc/hostname 仍然只是 mycustomhostname
但是,這會導致 hostname 命令返回 mycustomhostname(這很好),但 hostname -f 也返回 mycustomhostname,這不是我想要的。
主要原因是當我 ssh 進入伺服器時,我希望 bash shell 說
myusername@mycustomhostname
代替
myusername@git
僅僅是因為它會讓我更容易知道我正在使用什麼伺服器。如果我有另一個用於 git 儲存庫的伺服器(例如 git.mydomain2.com)並遵循我在各處看到的約定,那麼如果我 ssh 進入該伺服器 bash 也會說
myusername@git
這讓我很困惑。
如何正確使用與伺服器的 fqdn 不同的主機名?
順便說一句,這是在 Debian Linux 上。
為什麼不單獨使用 FQDN,只使用 CNAME 並始終通過 CNAME 引用它?
在 hosts 文件中使用本地主機地址作為主機名,並將公共地址與公共 IP 相關聯。
127.0.1.1 mycustomhostname 1.2.3.4 git.mydomain.com