Advanced Ubuntu Administration and Management Best Practices
Ubuntu Server の運用項目を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
Ubuntu 26.04 をサーバーとして使う場合、最初にホスト名を決めておくと、SSH 接続、ログ、証明書、監視、バックアップ、内部サービスの識別が安定します。
この記事では、hostnamectl でホスト名を設定し、必要に応じて /etc/hosts を最小構成で作成する手順をまとめます。FQDN、短縮名、名前解決の確認までを扱います。
- 短縮名と FQDN の使い分け
hostnamectlによるホスト名の設定/etc/hostsの最小構成- 名前解決、SSH、ログ表示での確認
- 再ログイン後、再起動後の確認
| 対象 OS | Ubuntu 26.04 Server |
|---|---|
| 設定コマンド | hostnamectl set-hostname |
| 補助ファイル | /etc/hosts |
| 確認コマンド | hostnamectl、hostname -f、getent hosts |
| 推奨 | 環境内で一意に識別できる FQDN を決めてから設定する |
ホスト名の方針を決める
サーバーでは、短縮名だけでなく FQDN を決めておくと管理しやすくなります。たとえば web01.example.local を正本にし、必要な場面だけ web01 を alias として扱います。
- 環境内で一意な FQDN を決める
- 短縮名 alias を増やしすぎない
- 証明書、ログ、監視、DNS の表記を合わせる
- 一時的な名前を本番運用に残さない
現在のホスト名を確認する
変更前に、現在の static hostname、transient hostname、FQDN、/etc/hosts を確認します。
hostnamectl
hostname
hostname -f
cat /etc/hostname
cat /etc/hostshostnamectl で FQDN を設定する
hostnamectl set-hostname でホスト名を設定します。ここでは例として web01.example.local を使います。実際の環境に合わせて置き換えます。
sudo hostnamectl set-hostname web01.example.local
hostnamectl
hostname
hostname -f/etc/hosts を最小構成で作成する
/etc/hosts は DNS の代わりではなく、ローカルで必要な名前解決を補助するファイルです。自ホストの管理 IP、FQDN、短縮名を必要最小限で記述します。
sudo cp -a /etc/hosts /etc/hosts.$(date +%Y%m%d%H%M%S).bak
sudo tee /etc/hosts >/dev/null <<'EOF'
127.0.0.1 localhost
127.0.1.1 web01.example.local web01
192.0.2.10 web01.example.local web01
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
EOF名前解決を確認する
設定後は、FQDN と短縮名が意図したアドレスへ解決されることを確認します。DNS で管理する名前と /etc/hosts の補助設定が矛盾していないかも見ます。
getent hosts web01.example.local
getent hosts web01
hostname -f
resolvectl query web01.example.local
resolvectl query web01SSH とログの表示を確認する
ホスト名は SSH 接続先、ログ、journal、監視表示に出ます。変更後に意図した名前で表示されるか確認します。
ssh -G web01.example.local | grep '^hostname '
journalctl -b --no-pager -n 50
logger "hostname check $(hostname -f)"
journalctl -b --no-pager -n 50再ログイン後と再起動後に確認する
シェルのプロンプトや一部のサービスは、ログイン時や起動時にホスト名を読んでいることがあります。再ログイン後、必要なら再起動後にも確認します。
hostnamectl
hostname -f
getent hosts "$(hostname -f)"
systemctl status systemd-hostnamed.service --no-pager公開前の確認ポイント
hostnamectlが期待する FQDN を表示するhostname -fが期待どおりに返るgetent hostsで FQDN と短縮名を確認できる/etc/hostsに不要な古い名前が残っていない- DNS、証明書、監視、ログの表記と矛盾していない
まとめ
Ubuntu 26.04 のホスト名設定では、まず FQDN を決め、hostnamectl set-hostname で設定し、必要に応じて /etc/hosts を最小構成で作成します。
ホスト名は SSH、ログ、証明書、監視、DNS と関係します。設定後は hostnamectl、hostname -f、getent hosts、ログ表示を確認し、後続のネットワークや SSH 設定へ進みます。

